<!--
Copyright 2013 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 file is used to generate a comprehensive list of Chrome histograms along
with a detailed description for each histogram.

Please pretty-print and validate your edits by running the pretty_print.py
and validate_format.py scripts in the same directory as this file before
uploading your change for review.

Take a moment to page through the contents of this file. You will find
three sections:

* The histograms section describes base histograms, giving their name,
  and optionally their units or enum type, a short one-line summary,
  and optionally a more detailed description.
* The enums section defines and documents the enumerated types referred to by
  the histograms.
* The histogram_suffixes section provides a compact way of defining histograms
  by applying affixes to existing histograms. This could be done recursively
  and the max recursion depth is 5. See the example below for details on how it
  works.

Each histogram_suffixes tag lists the histograms that it affects. The complete
list of histograms is computed by appending (or prepending - see below) the
histogram_suffixes suffix names to each of the affected histograms. For example,
define the following:

  <histogram name="FileLoadLatency"/>

  <histogram_suffixes name="SuperHttpExperiment">
    <suffix name="SuperHttpEnabled"/>
    <suffix name="SuperHttpDisabled"/>
    <affected-histogram name="FileLoadLatency"/>
  </histogram_suffixes>

The complete list of histograms will be:

  FileLoadLatency
  FileLoadLatency_SuperHttpEnabled
  FileLoadLatency_SuperHttpDisabled

histogram_suffixes can also be used to insert affix in the middle. Example:

  <histogram name="Prerender.Events"/>

  <histogram_suffixes name="SuperHttpExperiment" ordering="prefix">
    <suffix name="HoverStats50"/>
    <affected-histogram name="Prerender.Events"/>
  </histogram_suffixes>

The complete list of histograms will be:

  Prerender.Events
  Prerender.HoverStats50_Events

When 'ordering="prefix"' is present in the histogram_suffixes tag, the suffix
will be inserted after the first dot separator of the affected-histogram name.
Therefore, the affected-histogram name has to have at least one dot in it.

Googlers: There are also a small number of private internal histograms found at
http://cs/file:chrome/histograms.xml - but prefer this file for new entries.
-->

<histogram-configuration>

<!-- Histogram definitions -->

<histograms>

<histogram name="Accessibility.CrosAlwaysShowA11yMenu" enum="BooleanEnabled">
  <owner>dmazzoni@chromium.org</owner>
  <owner>kenjibaheux@google.com</owner>
  <summary>
    Whether the Chrome OS Accessibility Menu is set to be shown regardless of
    the state of a11y features.(checked once 45 secs after startup).
  </summary>
</histogram>

<histogram name="Accessibility.CrosAutoclick" enum="BooleanEnabled">
  <owner>dmazzoni@chromium.org</owner>
  <owner>kenjibaheux@google.com</owner>
  <owner>tengs@chromium.org</owner>
  <summary>
    Whether the Chrome OS Autoclick feature is on (checked once 45 secs after
    startup).
  </summary>
</histogram>

<histogram name="Accessibility.CrosAutoclickDelay" units="ms">
  <owner>dmazzoni@chromium.org</owner>
  <owner>kenjibaheux@google.com</owner>
  <owner>tengs@chromium.org</owner>
  <summary>
    If the user has enabled Autoclick, this is the delay set by the user for
    autoclicks to occur, in milliseconds.
  </summary>
</histogram>

<histogram name="Accessibility.CrosCaretHighlight" enum="BooleanEnabled">
  <owner>dmazzoni@chromium.org</owner>
  <summary>
    Whether the Chrome OS caret highlighting is on (checked once 45 secs after
    startup).
  </summary>
</histogram>

<histogram name="Accessibility.CrosCursorHighlight" enum="BooleanEnabled">
  <owner>dmazzoni@chromium.org</owner>
  <summary>
    Whether the Chrome OS cursor highlighting is on (checked once 45 secs after
    startup).
  </summary>
</histogram>

<histogram name="Accessibility.CrosFocusHighlight" enum="BooleanEnabled">
  <owner>dmazzoni@chromium.org</owner>
  <summary>
    Whether the Chrome OS focus highlighting is on (checked once 45 secs after
    startup).
  </summary>
</histogram>

<histogram name="Accessibility.CrosHighContrast" enum="BooleanEnabled">
  <owner>dmazzoni@chromium.org</owner>
  <owner>kenjibaheux@google.com</owner>
  <summary>
    Whether the Chrome OS High Contrast mode feature is on (checked once 45 secs
    after startup).
  </summary>
</histogram>

<histogram name="Accessibility.CrosLargeCursor" enum="BooleanEnabled">
  <owner>dmazzoni@chromium.org</owner>
  <owner>kenjibaheux@google.com</owner>
  <summary>
    Whether the Chrome OS Large Cursor feature is on (checked once 45 secs after
    startup).
  </summary>
</histogram>

<histogram name="Accessibility.CrosScreenMagnifier" enum="BooleanEnabled">
  <owner>dmazzoni@chromium.org</owner>
  <owner>kenjibaheux@google.com</owner>
  <summary>
    Whether the Chrome OS Screen Magnifier feature is on (checked once 45 secs
    after startup).
  </summary>
</histogram>

<histogram name="Accessibility.CrosSelectToSpeak" enum="BooleanEnabled">
  <owner>dmazzoni@chromium.org</owner>
  <summary>
    Whether the Chrome OS select-to-speak is on (checked once 45 secs after
    startup).
  </summary>
</histogram>

<histogram name="Accessibility.CrosSpokenFeedback" enum="BooleanEnabled">
  <owner>dmazzoni@chromium.org</owner>
  <owner>kenjibaheux@google.com</owner>
  <summary>
    Whether the Chrome OS Spoken Feedback feature is on (checked once 45 secs
    after startup).
  </summary>
</histogram>

<histogram name="Accessibility.CrosStickyKeys" enum="BooleanEnabled">
  <owner>dmazzoni@chromium.org</owner>
  <owner>kenjibaheux@google.com</owner>
  <owner>tengs@chromium.org</owner>
  <summary>
    Whether the Chrome OS Sticky Keys feature is on (checked once 45 secs after
    startup).
  </summary>
</histogram>

<histogram name="Accessibility.CrosSwitchAccess" enum="BooleanEnabled">
  <owner>dmazzoni@chromium.org</owner>
  <summary>
    Whether the Chrome OS switch access is on (checked once 45 secs after
    startup).
  </summary>
</histogram>

<histogram name="Accessibility.CrosVirtualKeyboard" enum="BooleanEnabled">
  <owner>dmazzoni@chromium.org</owner>
  <owner>kenjibaheux@google.com</owner>
  <summary>
    Whether the Chrome OS Virtual Keyboard feature is on (checked once 45 secs
    after startup).
  </summary>
</histogram>

<histogram name="Accessibility.InvertedColors" enum="BooleanEnabled">
  <owner>dmazzoni@chromium.org</owner>
  <owner>kenjibaheux@google.com</owner>
  <summary>
    Whether Windows system settings show that high-contrast mode is enabled and
    the user has selected a light-on-dark color scheme (checked once 45 secs
    after startup). This causes Chrome to prompt the user with a bubble to
    optionally install a High Contrast extension and theme.
  </summary>
</histogram>

<histogram name="Accessibility.Mac.DifferentiateWithoutColor"
    enum="BooleanEnabled">
  <owner>ellyjones@chromium.org</owner>
  <summary>
    Whether the &quot;differentiate without color&quot; Mac system setting is
    enabled. This is checked once, 45 seconds after startup.
  </summary>
</histogram>

<histogram name="Accessibility.Mac.FullKeyboardAccessEnabled"
    enum="BooleanEnabled">
  <owner>ellyjones@chromium.org</owner>
  <summary>
    Whether the &quot;full keyboard access&quot; Mac system setting is enabled.
    This is checked once, 45 seconds after startup.
  </summary>
</histogram>

<histogram name="Accessibility.Mac.IncreaseContrast" enum="BooleanEnabled">
  <owner>ellyjones@chromium.org</owner>
  <summary>
    Whether the &quot;increase contrast&quot; Mac system setting is enabled.
    This is checked once, 45 seconds after startup.
  </summary>
</histogram>

<histogram name="Accessibility.Mac.ReduceTransparency" enum="BooleanEnabled">
  <owner>ellyjones@chromium.org</owner>
  <summary>
    Whether the &quot;reduce transparency&quot; Mac system setting is enabled.
    This is checked once, 45 seconds after startup.
  </summary>
</histogram>

<histogram name="Accessibility.ManuallyEnabled" enum="BooleanEnabled">
  <owner>dmazzoni@chromium.org</owner>
  <owner>kenjibaheux@google.com</owner>
  <summary>
    Whether Chrome has enabled accessibility support because the user passed the
    --force-renderer-accessibility flag on the command-line (checked once 45
    secs after startup).
  </summary>
</histogram>

<histogram name="Accessibility.State" enum="BooleanEnabled">
  <owner>dmazzoni@chromium.org</owner>
  <owner>kenjibaheux@google.com</owner>
  <summary>
    Whether Chrome has enabled accessibility support because it detects
    supported assistive technology running, or due to being manually enabled via
    a command-line flag (checked once 45 secs after startup).
  </summary>
</histogram>

<histogram name="Accessibility.WinAudioDescription" enum="BooleanEnabled">
  <owner>dmazzoni@chromium.org</owner>
  <owner>kenjibaheux@google.com</owner>
  <summary>
    Whether Windows system settings show that audio descriptions are enabled
    (checked once 45 secs after startup).
  </summary>
</histogram>

<histogram name="Accessibility.WinJAWS" enum="BooleanEnabled">
  <owner>dmazzoni@chromium.org</owner>
  <owner>kenjibaheux@google.com</owner>
  <summary>
    Whether the third-party JAWS screen reader is running (checked once 45 secs
    after startup).
  </summary>
</histogram>

<histogram name="Accessibility.WinNVDA" enum="BooleanEnabled">
  <owner>dmazzoni@chromium.org</owner>
  <owner>kenjibaheux@google.com</owner>
  <summary>
    Whether the third-party NVDA screen reader is running (checked once 45 secs
    after startup).
  </summary>
</histogram>

<histogram name="Accessibility.WinSAToGo" enum="BooleanEnabled">
  <owner>dmazzoni@chromium.org</owner>
  <owner>kenjibaheux@google.com</owner>
  <summary>
    Whether the third-party System Access To Go screen reader is running
    (checked once 45 secs after startup).
  </summary>
</histogram>

<histogram name="Accessibility.WinScreenReader" enum="BooleanEnabled">
  <owner>dmazzoni@chromium.org</owner>
  <owner>kenjibaheux@google.com</owner>
  <summary>
    Whether Windows system settings show that a screen reader is running
    (checked once 45 secs after startup). Note that this does not necessarily
    mean that Chrome has detected a supported screen reader and has enabled its
    accessibility mode.
  </summary>
</histogram>

<histogram name="Accessibility.WinStickyKeys" enum="BooleanEnabled">
  <owner>dmazzoni@chromium.org</owner>
  <owner>kenjibaheux@google.com</owner>
  <summary>
    Whether Windows system settings show that Sticky Keys are enabled.
  </summary>
</histogram>

<histogram name="Accessibility.WinZoomText" enum="BooleanEnabled">
  <owner>dmazzoni@chromium.org</owner>
  <owner>kenjibaheux@google.com</owner>
  <summary>
    Whether the third-party ZoomText screen magnifier is running.
  </summary>
</histogram>

<histogram name="Android.Activity.ChromeTabbedActivity.StopReason"
    enum="AndroidActivityStopReason">
  <owner>dfalcantara@chromium.org</owner>
  <summary>
    What caused ChromeTabbedActivity#onStop() to be called, which indicates that
    Chrome is sent to the background.
  </summary>
</histogram>

<histogram name="Android.Activity.ChromeTabbedActivity.SystemBackAction"
    enum="AndroidActivitySystemBackAction">
  <owner>dfalcantara@chromium.org</owner>
  <summary>
    What happened when the user hit the system back button in
    ChromeTabbedActivity.
  </summary>
</histogram>

<histogram name="Android.ArmFpu" enum="AndroidArmFpu">
  <owner>fdegans@chromium.org</owner>
  <summary>
    Reports the FPU capabilities of the Android ARM device. This is recorded
    once per browser session during startup.
  </summary>
</histogram>

<histogram name="Android.IsLastSharedAppInfoRetrieved"
    enum="BooleanIsLastSharedAppInfoRetrieved">
  <owner>jaekyun@chromium.org</owner>
  <summary>
    Signifies whether the last shared app information is retrieved successfully
    or not. This is logged when configuring the direct sharing menu item.
  </summary>
</histogram>

<histogram name="Android.KernelVersion" enum="AndroidKernelVersion">
  <owner>rsesek@chromium.org</owner>
  <summary>
    Reports the kernel major and minor version from the utsname.release field.
    The low 16 bits of each version are combined into a 32-bit integer. The
    range is from [0x00020006,0x0004000a] to track kernel versions 2.6 through
    4.10.
  </summary>
</histogram>

<histogram name="Android.ModerateBindingCount" units="bindings">
  <owner>jaekyun@chromium.org</owner>
  <summary>
    The number of moderate bindings which were kept while Chrome process is in
    the foreground. This is logged right before Chrome process goes into the
    background.
  </summary>
</histogram>

<histogram name="Android.MultiWindowMode.Active" enum="BooleanEnabled">
  <owner>twellington@chromium.org</owner>
  <summary>
    Records on every metrics upload whether the activity is running in Android N
    multi-window mode or not.
  </summary>
</histogram>

<histogram name="Android.MultiWindowMode.IsTabletScreenWidthBelow600"
    enum="Boolean">
  <owner>twellington@chromium.org</owner>
  <summary>
    Records whether the screen width is below 600dp when the activity is in
    Android N multi-window mode. True if the screen width is less than 600dp and
    false if is greater than or equal to 600dp.
  </summary>
</histogram>

<histogram name="Android.MultiWindowMode.TabletScreenWidth" units="dp">
  <owner>twellington@chromium.org</owner>
  <summary>
    Records the screen width in dp when the activity is in Android N
    multi-window mode and the width is below 600dp.
  </summary>
</histogram>

<histogram name="Android.NTP.Impression" enum="NTPImpressionType">
  <owner>finkm@chromium.org</owner>
  <summary>
    Counts impressions of the NTP on Android. It also counts potential
    impressions. A potential impression is a place where it would make sense to
    open the NTP instead of the current view. E.g. the no-tab view is counted as
    a potential impression since this view could be replaced with the NTP. For
    better comparison regular impressions are also counted. The no-tab view
    counting happens right after the user closed the last tab and the regular
    impression counting happens at construction time of the NTP (=whenever a new
    tab is opened).
  </summary>
</histogram>

<histogram name="Android.SeccompStatus.Prctl" enum="AndroidSeccompStatus">
  <owner>rsesek@chromium.org</owner>
  <summary>
    Reports the level of kernel support for the seccomp-bpf sandbox using
    prctl(PR_SET_SECCOMP).
  </summary>
</histogram>

<histogram name="Android.SeccompStatus.RendererSandbox"
    enum="AndroidSeccompSandboxStatus">
  <owner>rsesek@chromium.org</owner>
  <summary>
    Reports the status of the seccomp-bpf sandbox in renderer processes.
    Anything other than &quot;Sandbox Engaged&quot; indicates the sandbox is not
    turned on. See https://crbug.com/477049.
  </summary>
</histogram>

<histogram name="Android.SeccompStatus.Syscall" enum="AndroidSeccompStatus">
  <owner>rsesek@chromium.org</owner>
  <summary>
    Reports the level of kernel support for the seccomp-bpf sandbox using the
    seccomp system call.
  </summary>
</histogram>

<histogram name="Android.StrictMode.CheckGooglePlayServicesTime" units="ms">
  <owner>wnwen@chromium.org</owner>
  <owner>yfriedman@chromium.org</owner>
  <summary>
    Measures the amount of time due to a StrictMode violation from checking for
    whether play services is available.
  </summary>
</histogram>

<histogram name="Android.StrictMode.DocumentModeSharedPrefs" units="ms">
  <owner>hartmanng@chromium.org</owner>
  <owner>yfriedman@chromium.org</owner>
  <summary>
    Measures the amount of time due to a StrictMode violation from fetching the
    DocumentMode shared preferences file.
  </summary>
</histogram>

<histogram name="Android.StrictMode.DocumentTabStateLoad" units="ms">
  <owner>wnwen@chromium.org</owner>
  <owner>yfriedman@chromium.org</owner>
  <summary>
    Measures the amount of time due to a StrictMode violation from document mode
    loading its prioritized tab's state.
  </summary>
</histogram>

<histogram name="Android.StrictMode.DownloadsDir" units="ms">
  <owner>wnwen@chromium.org</owner>
  <owner>yfriedman@chromium.org</owner>
  <summary>
    Measures the amount of time due to a StrictMode violation from fetching and
    possibly creating the downloads directory.
  </summary>
</histogram>

<histogram name="Android.StrictMode.NotificationUIBuildTime" units="ms">
  <owner>wnwen@chromium.org</owner>
  <owner>yfriedman@chromium.org</owner>
  <summary>
    Measures the amount of time due to a StrictMode violation from custom
    notification builder through date formatting.
  </summary>
</histogram>

<histogram name="Android.StrictMode.OverrideUrlLoadingTime" units="ms">
  <owner>yfriedman@chromium.org</owner>
  <owner>wnwen@chromium.org</owner>
  <summary>
    Measures the amount of time due to a StrictMode violation from calling out
    to Android activity manager.
  </summary>
</histogram>

<histogram name="Android.StrictMode.TabPersistentStore" units="ms">
  <owner>wnwen@chromium.org</owner>
  <owner>yfriedman@chromium.org</owner>
  <summary>
    Measures time spent during StrictMode-whitelisted code in
    TabPersistentStore.
  </summary>
</histogram>

<histogram name="Android.StrictMode.ThumbnailCacheDir" units="ms">
  <owner>wnwen@chromium.org</owner>
  <owner>yfriedman@chromium.org</owner>
  <summary>
    Measures the amount of time due to a StrictMode violation from fetching for
    the thumbnail cache directory.
  </summary>
</histogram>

<histogram name="Android.StrictMode.WebappAuthenticatorMac" units="ms">
  <owner>wnwen@chromium.org</owner>
  <owner>yfriedman@chromium.org</owner>
  <summary>
    Measures the amount of time due to a StrictMode violation from looking up a
    webapp's MAC on startup.
  </summary>
</histogram>

<histogram name="Android.StrictMode.WebappDir" units="ms">
  <owner>wnwen@chromium.org</owner>
  <owner>yfriedman@chromium.org</owner>
  <summary>
    Measures the amount of time due to a StrictMode violation from fetching for
    creating the webapp directory.
  </summary>
</histogram>

<histogram name="Android.StrictMode.WebappSaveState" units="ms">
  <owner>wnwen@chromium.org</owner>
  <owner>yfriedman@chromium.org</owner>
  <summary>
    Measures the amount of time due to a StrictMode violation from reading and
    saving webapp state.
  </summary>
</histogram>

<histogram name="Android.StrictMode.WebappSharedPrefs" units="ms">
  <owner>hartmanng@chromium.org</owner>
  <owner>yfriedman@chromium.org</owner>
  <summary>
    Measures the amount of time due to a StrictMode violation from fetching the
    Webapp shared preferences file.
  </summary>
</histogram>

<histogram name="Android.TabNavigationInterceptResult"
    enum="NavigationInterceptResult">
  <owner>mariakhomenko@chromium.org</owner>
  <summary>
    The distribution of results when running ExternalNavigationHandler, this
    shows how often we send intents to be handled by other applications.
  </summary>
</histogram>

<histogram name="AndroidTabCloseUndo.Toast"
    enum="AndroidTabCloseUndoToastEvent">
  <owner>dtrainor@chromium.org</owner>
  <summary>
    When a user closes a tab an undo toast will popup on certain devices giving
    the user the chance to undo closing that tab.  This stat tracks how the user
    interacts with that UI and what actions they take.  A cold start means that
    the undo bar wasn't showing when it was triggered to show again.  A warm
    start means that it was.  Warm starts can happen when the user closes
    multiple tabs close together.  When the undo bar is dismissed, all closes
    that were queued up to be undone are committed.  This can happen either by a
    timeout or by an action by the user to move to another part of the UI.
  </summary>
</histogram>

<histogram name="AppBanners.DismissEvent" enum="AppBannersDismissEvent">
  <owner>dfalcantara@chromium.org</owner>
  <summary>
    App banners promote an application related to the current website, and are
    requested specifically through the current page's HTML.  This stat tracks
    the different ways that an app banner left the screen, e.g. through an
    automatic dismissal after navigation or an explicit user action.
  </summary>
</histogram>

<histogram name="AppBanners.DisplayEvent" enum="AppBannersDisplayEvent">
  <owner>dfalcantara@chromium.org</owner>
  <summary>
    App banners promote an application related to the current website, and are
    requested specifically through the current page's HTML.  This stat tracks
    when an app banner was requested and how the request was handled, e.g. the
    user blocked its appearance or the banner was ultimately created.
  </summary>
</histogram>

<histogram name="AppBanners.InstallEvent" enum="AppBannersInstallEvent">
  <owner>dfalcantara@chromium.org</owner>
  <summary>
    App banners promote an application related to the current website, and are
    requested specifically through the current page's HTML.  This stat tracks
    when a user triggers an install dialog for the app promoted by the banner,
    as well as whether or not the user ultimately decided to install the app.
  </summary>
</histogram>

<histogram name="AppBanners.MinutesFromFirstVisitToBannerShown" units="minutes">
  <owner>dominickn@chromium.org</owner>
  <summary>
    App banners promote an application related to the current website, and are
    requested specifically through the current page's HTML.  This stat tracks
    the number of minutes between the first recorded visit to an origin and the
    time when the banner is actually shown.
  </summary>
</histogram>

<histogram name="AppBanners.UserResponse" enum="AppBannersUserResponse">
  <owner>dominickn@chromium.org</owner>
  <summary>
    App banners promote an application related to the current website, and are
    requested specifically through the current page's HTML.  This stat
    specifically tracks a user's response to a displayed banner.
  </summary>
</histogram>

<histogram name="appcache.CheckResponseResult"
    enum="AppCacheCheckResponseResult">
  <owner>michaeln@chromium.org</owner>
  <summary>AppCache check response result code.</summary>
</histogram>

<histogram name="appcache.CompletionQueueTime" units="ms">
  <owner>michaeln@chromium.org</owner>
  <summary>
    Time elapsed between a completion task being queued and run.
  </summary>
</histogram>

<histogram name="appcache.CompletionRunTime" units="ms">
  <owner>michaeln@chromium.org</owner>
  <summary>
    The amount of time taken to run a completion task on the IO thread.
  </summary>
</histogram>

<histogram name="appcache.CorruptionDetected">
  <owner>michaeln@chromium.org</owner>
  <summary>
    Tracks the number of times corruption is detected in the sql database.
  </summary>
</histogram>

<histogram name="appcache.InitResult" enum="AppCacheInitResult">
  <owner>michaeln@chromium.org</owner>
  <summary>AppCache initialization result code.</summary>
</histogram>

<histogram name="appcache.JobStartDelay.AppCache" units="ms">
  <owner>michaeln@chromium.org</owner>
  <summary>
    How long URLRequests to be retrieved from the appcache are delayed.
  </summary>
</histogram>

<histogram name="appcache.JobStartDelay.Error" units="ms">
  <owner>michaeln@chromium.org</owner>
  <summary>
    How long URLRequests that result in a synthesized error are delayed.
  </summary>
</histogram>

<histogram name="appcache.JobStartDelay.Network" units="ms">
  <owner>michaeln@chromium.org</owner>
  <summary>
    How long URLRequests to be retrieved over the network are delayed.
  </summary>
</histogram>

<histogram name="appcache.MainPageLoad" enum="BooleanSecure">
  <owner>michaeln@chromium.org</owner>
  <summary>
    Counts the number of appcached page loads for secure vs insecure origins.
  </summary>
</histogram>

<histogram name="appcache.MainResourceResponseRetrieval" enum="BooleanSuccess">
  <owner>michaeln@chromium.org</owner>
  <summary>
    Tracks the success rate of retrieving a main resource from the appcache.
  </summary>
</histogram>

<histogram name="appcache.MissingManifestDetectedAtCallsite"
    enum="AppCacheErrorSite">
  <owner>michaeln@chromium.org</owner>
  <summary>Identifies where a missing manifest was detected occured.</summary>
</histogram>

<histogram name="appcache.MissingManifestEntry" enum="BooleanSuccess">
  <owner>michaeln@chromium.org</owner>
  <summary>
    Logged on each occurrence of there being no record for the manifest file in
    the entries table.
  </summary>
</histogram>

<histogram name="appcache.ReinitAttempt">
  <owner>michaeln@chromium.org</owner>
  <summary>
    Tracks the number of times the appcache reinit process occurs. The boolean
    value indicates whether it was a repeated attempt to reinitialize during a
    browsing session.
  </summary>
</histogram>

<histogram name="appcache.SubResourceResponseRetrieval" enum="BooleanSuccess">
  <owner>michaeln@chromium.org</owner>
  <summary>
    Tracks the success rate of retrieving a sub resource from the appcache.
  </summary>
</histogram>

<histogram name="appcache.TaskQueueTime" units="ms">
  <owner>michaeln@chromium.org</owner>
  <summary>
    Time elapsed between a background task being queued and run.
  </summary>
</histogram>

<histogram name="appcache.TaskRunTime" units="ms">
  <owner>michaeln@chromium.org</owner>
  <summary>The amount of time taken to run a background task.</summary>
</histogram>

<histogram name="appcache.UpdateJobResult" enum="AppCacheUpdateJobResult">
  <owner>michaeln@chromium.org</owner>
  <summary>AppCache update job result code.</summary>
</histogram>

<histogram name="appcache.UpdateProgressAtPointOfFaliure" units="%">
  <owner>michaeln@chromium.org</owner>
  <summary>Percent completion at point of failure of an update job.</summary>
</histogram>

<histogram name="appcache.UpdateWasOffOriginAtPointOfFailure" enum="Boolean">
  <owner>michaeln@chromium.org</owner>
  <summary>
    Whether the resource causing the failure was from a different origin.
  </summary>
</histogram>

<histogram name="appcache.UpdateWasStalledAtPointOfFailure" enum="Boolean">
  <owner>michaeln@chromium.org</owner>
  <summary>
    Whether any progresss had been made in the 5 minutes preceeding failure.
  </summary>
</histogram>

<histogram name="AppleScript.CommandEvent" enum="AppleScriptCommandEvents">
  <owner>spqchan@chromium.org</owner>
  <summary>The number of times an AppleScript event gets called.</summary>
</histogram>

<histogram name="Apps.AppInfoDialog.Launches" enum="AppInfoDialogLaunchOrigin">
  <owner>sashab@chromium.org</owner>
  <summary>
    The number of times the app info dialog is launched. This is gathered each
    time the app info dialog is opened, from each of the places the dialog can
    be opened from.
  </summary>
</histogram>

<histogram name="Apps.AppInfoDialog.OpenedForLocation" enum="AppLocation">
  <owner>sashab@chromium.org</owner>
  <summary>
    The location of the app that the dialog was opened for. This is gathered
    each time the app info dialog is opened.
  </summary>
</histogram>

<histogram name="Apps.AppInfoDialog.OpenedForType" enum="ExtensionType">
  <owner>sashab@chromium.org</owner>
  <summary>
    The type of the app that the dialog was opened for. This is gathered each
    time the app info dialog is opened.
  </summary>
</histogram>

<histogram name="Apps.AppLaunch" enum="AppLaunch">
  <owner>tapted@chromium.org</owner>
  <owner>benwells@chromium.org</owner>
  <summary>
    The number of times v2 packaged apps are launched grouped by
    extension_misc::AppLaunchBuckets. See also Extensions.AppLaunch.
  </summary>
</histogram>

<histogram name="Apps.AppLauncherPromo" enum="AppLauncherPromo">
  <owner>mad@chromium.org</owner>
  <summary>Interactions with the App Launcher promo dialog.</summary>
</histogram>

<histogram name="Apps.AppListCreationTime" units="ms">
  <owner>calamity@chromium.org</owner>
  <summary>
    The amount of time it takes to build the app list UI. This is logged each
    time the app list is built from scratch.
  </summary>
</histogram>

<histogram name="Apps.AppListDoodleAction" enum="AppListDoodleAction">
  <owner>calamity@chromium.org</owner>
  <summary>
    The number of user interactions with the app list doodle. This is logged
    once per action.
  </summary>
</histogram>

<histogram name="Apps.AppListHowEnabled" enum="AppListEnableSource">
  <owner>tapted@chromium.org</owner>
  <summary>
    The trigger that caused the app list to be enabled. Recorded when the user
    first shows the app list. If not shown after one hour, will be recorded
    then. If Chrome was not running at the one-hour mark, will be recorded
    during the next Chrome startup.
  </summary>
</histogram>

<histogram name="Apps.AppListPageOpened" enum="AppListPage">
  <owner>calamity@chromium.org</owner>
  <summary>
    The page that the app list goes to. This is gathered every time the user
    initiates a transition to another page in the launcher.
  </summary>
</histogram>

<histogram name="Apps.AppListSearchCommenced" units="searches">
  <owner>tapted@chromium.org</owner>
  <summary>
    The number of searches that are started in the app list. This is gathered
    each time the app list search box transitions from empty to non-empty.
  </summary>
</histogram>

<histogram name="Apps.AppListSearchQueryLength" units="characters">
  <owner>calamity@chromium.org</owner>
  <summary>
    The length of the app list search query when a result is opened. This is
    gathered per click of a search result.
  </summary>
</histogram>

<histogram name="Apps.AppListSearchResultDistanceFromOrigin" units="keystrokes">
  <owner>calamity@chromium.org</owner>
  <summary>
    The minimum number of arrow keys a user would need to press to navigate to
    the opened search result. This is gathered per click of a search result.
  </summary>
</histogram>

<histogram name="Apps.AppListSearchResultOpenDisplayType"
    enum="AppListSearchResultDisplayType">
  <owner>calamity@chromium.org</owner>
  <summary>
    The display type of the app list search result that was opened by the user.
    This is gathered per click of a search result.
  </summary>
</histogram>

<histogram name="Apps.AppListSearchResultOpenType" enum="AppListSearchResult">
  <owner>tapted@chromium.org</owner>
  <summary>
    The type of app list search result that was opened by the user. This is
    gathered per click of a search result.
  </summary>
</histogram>

<histogram name="Apps.AppListTimeToDiscover" units="ms">
  <owner>tapted@chromium.org</owner>
  <summary>
    Time between enabling the app list, and a user explicitly choosing to show
    it. If the app list is not shown after one hour, an entry in the last bucket
    is recorded. If the user installs a second packaged app within one hour, or
    if the app list was not enabled by installing a packaged app from the Web
    Store, no time value is recorded - only Apps.AppListHowEnabled.
  </summary>
</histogram>

<histogram name="Apps.AppListWarmupDuration" units="ms">
  <owner>tapted@chromium.org</owner>
  <summary>
    The amount of time spent in warmup (in WarmupForProfile call). This will
    tell us how long warmup blocks the UI.
  </summary>
</histogram>

<histogram name="Apps.AppShimErrorVersion">
  <owner>jackhou@chromium.org</owner>
  <summary>
    Counts which major milestone versions of app_mode_loader are sending
    --app-shim-error. --app-shim-error is sent as a command line argument to
    Chrome when app_mode_loader was unable to dyload the Chrome Framework and
    call ChromeAppModeMain. For example, when Chrome updates from 32-bit to
    64-bit, an older shim will find the new framework version but fail to dyload
    it.
  </summary>
</histogram>

<histogram name="Arc.AndroidBootTime" units="ms">
  <owner>elijahtaylor@google.com</owner>
  <owner>mitsuji@google.com</owner>
  <summary>The time elapsed for booting up the ARC instance.</summary>
</histogram>

<histogram name="Arc.AppCount">
  <owner>elijahtaylor@google.com</owner>
  <owner>mitsuji@google.com</owner>
  <summary>
    The number of ARC apps open at any given time. Collected every 5 minutes.
    This indicates both how many users are engaging with apps and, when they do
    engage, how many apps they are engaging with at a time.
  </summary>
</histogram>

<histogram name="Arc.AppsInstalledAtStartup" units="App Count">
  <owner>elijahtaylor@google.com</owner>
  <owner>mitsuji@google.com</owner>
  <summary>
    Total number of ARC apps installed on a device measured at startup.
  </summary>
</histogram>

<histogram name="Arc.boot_progress" units="ms">
  <owner>elijahtaylor@google.com</owner>
  <owner>mitsuji@google.com</owner>
  <summary>
    The relative time of a boot progress event since the ARC starts.
  </summary>
</histogram>

<histogram name="Arc.LowMemoryKiller.Count">
  <owner>elijahtaylor@google.com</owner>
  <owner>mitsuji@google.com</owner>
  <summary>Cumulative count of low memory kills in one user session.</summary>
</histogram>

<histogram name="Arc.LowMemoryKiller.FreedSize" units="KB">
  <owner>elijahtaylor@google.com</owner>
  <owner>mitsuji@google.com</owner>
  <summary>The memory size freed by each low memory kill event.</summary>
</histogram>

<histogram name="Arc.LowMemoryKiller.TimeDelta" units="ms">
  <owner>elijahtaylor@google.com</owner>
  <owner>mitsuji@google.com</owner>
  <summary>The elapsed time to last low memory kill event.</summary>
</histogram>

<histogram name="Arc.OOMKills.Count" units="kills">
  <owner>elijahtaylor@google.com</owner>
  <owner>mitsuji@google.com</owner>
  <summary>Cumulative count of OOM kills in one user session.</summary>
</histogram>

<histogram name="Arc.OOMKills.Score" units="badness score">
  <owner>elijahtaylor@google.com</owner>
  <owner>mitsuji@google.com</owner>
  <summary>
    The oom_badness score of a OOM killed process as reported by kernel.
  </summary>
</histogram>

<histogram name="Arc.OOMKills.TimeDelta" units="ms">
  <owner>elijahtaylor@google.com</owner>
  <owner>mitsuji@google.com</owner>
  <summary>The elapsed time since last OOM kill event.</summary>
</histogram>

<histogram name="Arc.OptInAction" enum="ArcOptInAction">
  <owner>elijahtaylor@google.com</owner>
  <owner>mitsuji@google.com</owner>
  <summary>Arc OptIn action taken by user.</summary>
</histogram>

<histogram name="Arc.OptInCancel" enum="ArcOptInCancel">
  <owner>elijahtaylor@google.com</owner>
  <owner>mitsuji@google.com</owner>
  <summary>Arc OptIn cancelation reason.</summary>
</histogram>

<histogram name="Arc.ShutdownTime" units="ms">
  <owner>elijahtaylor@google.com</owner>
  <summary>
    The time it takes for ARC to shut down. This value is recorded on ARC
    shutdown as the time is takes for the init process to exit after setting
    'sys.powerctl shutdown'. It is reported on the next ARC startup to avoid
    sending data during shutdown.
  </summary>
</histogram>

<histogram name="Arc.State" enum="BooleanEnabled">
  <owner>elijahtaylor@google.com</owner>
  <owner>mitsuji@google.com</owner>
  <summary>Whether Arc enabled or not.</summary>
</histogram>

<histogram name="ArcRuntime.LowMemoryKiller.FreedSize" units="KB">
  <obsolete>
    Renamed to Arc.LowMemoryKiller.FreedSize on 2016/03/24.
  </obsolete>
  <owner>elijahtaylor@google.com</owner>
  <summary>The memory size freed by each low memory kill event.</summary>
</histogram>

<histogram name="ArcRuntime.LowMemoryKiller.TimeDelta" units="ms">
  <obsolete>
    Renamed to Arc.LowMemoryKiller.TimeDelta on 2016/03/24.
  </obsolete>
  <owner>elijahtaylor@google.com</owner>
  <summary>The elapsed time to last low memory kill event.</summary>
</histogram>

<histogram name="Ash.Accelerators.Deprecated.LockScreen"
    enum="DeprecatedAcceleratorUsage">
  <owner>afakhry@chromium.org</owner>
  <summary>
    The lock screen action has two accelerators:   - Ctrl+Shift+L which is
    deprecated.   - Search+L which is new. This histogram shows the number of
    times each accelerator (deprecated and new) is used.
  </summary>
</histogram>

<histogram name="Ash.Accelerators.Deprecated.NextIME"
    enum="DeprecatedAcceleratorUsage">
  <owner>afakhry@chromium.org</owner>
  <summary>
    The switch to the next IME action has two accelerators:   - Shift+Alt which
    is deprecated.   - Ctrl+Shift+Space which is new. This histogram shows the
    number of times each accelerator (deprecated and new) is used.
  </summary>
</histogram>

<histogram name="Ash.Accelerators.Deprecated.ShowTaskManager"
    enum="DeprecatedAcceleratorUsage">
  <owner>afakhry@chromium.org</owner>
  <summary>
    Opening the task manager has two accelerators:   - Shift+Esc which is
    deprecated.   - Search+Esc which is new. This histogram shows the number of
    times each accelerator (deprecated and new) is used.
  </summary>
</histogram>

<histogram name="Ash.ActiveTouchPoints">
  <owner>kuscher@google.com</owner>
  <owner>rbyers@chromium.org</owner>
  <summary>
    Number of active touch-points when a new touch-point is added.
  </summary>
</histogram>

<histogram name="Ash.ActiveWindowShowTypeOverTime" enum="ActiveWindowShowType">
  <owner>kuscher@google.com</owner>
  <summary>
    The show type of the active window tracked over time by logging on a regular
    basis (30 minutes).
  </summary>
</histogram>

<histogram name="Ash.AppList.TimeBetweenTaskSwitches" units="seconds">
  <owner>bruthig@chromium.org</owner>
  <owner>tdanderson@chromium.org</owner>
  <summary>
    The amount of time between selecting an item from the Ash app list. Not
    recorded on the first time an item is selected from the app list after
    startup.
  </summary>
</histogram>

<histogram name="Ash.Desktop.TimeBetweenNavigateToTaskSwitches" units="seconds">
  <owner>bruthig@chromium.org</owner>
  <owner>tdanderson@chromium.org</owner>
  <summary>
    The number of seconds between task window activations triggered by users
    clicking or tapping on a window, as recorded by the Desktop_SwitchTask user
    action. Recorded on ChromeOS only. Task switches from other sources are
    ignored and do not affect this metric. In other words, if a user performs
    the following steps (1) click on task window 'A' (2) Alt+Tab to task 'Z'(3)
    click on task window 'B', then this will result in a sample recorded for the
    time delta between activating task window 'A'and 'B'.
  </summary>
</histogram>

<histogram name="Ash.Dock.Action" enum="DockedAction">
  <owner>kuscher@google.com</owner>
  <owner>varkha@chromium.org</owner>
  <summary>
    User-initiated action taken that affects docked windows such as docking,
    undocking, minimizing, restoring, closing or just dragging a docked window.
  </summary>
</histogram>

<histogram name="Ash.Dock.ActionSource" enum="DockedActionSource">
  <owner>kuscher@google.com</owner>
  <owner>varkha@chromium.org</owner>
  <summary>
    Source (mouse, touch, keyboard or unknown) of the user-initiated action for
    docked windows.
  </summary>
</histogram>

<histogram name="Ash.Dock.ItemsAll">
  <owner>kuscher@google.com</owner>
  <owner>varkha@chromium.org</owner>
  <summary>
    Number of all docked windows or panels including hidden or minimized.
    Recorded on every user action that interacts with docked windows.
  </summary>
</histogram>

<histogram name="Ash.Dock.ItemsLarge">
  <owner>kuscher@google.com</owner>
  <owner>varkha@chromium.org</owner>
  <summary>
    Number of large (wider than dock maximum width) windows that had to be
    shrunk to get docked among the visible docked windows. Recorded on every
    user action that interacts with docked windows.
  </summary>
</histogram>

<histogram name="Ash.Dock.ItemsPanels">
  <owner>kuscher@google.com</owner>
  <owner>varkha@chromium.org</owner>
  <summary>
    Number of docked visible panels. Recorded on every user action that
    interacts with docked windows.
  </summary>
</histogram>

<histogram name="Ash.Dock.ItemsVisible">
  <owner>kuscher@google.com</owner>
  <owner>varkha@chromium.org</owner>
  <summary>
    Number of visible docked windows or panels. Recorded on every user action
    that interacts with docked windows.
  </summary>
</histogram>

<histogram name="Ash.Dock.TimeBetweenUse" units="seconds">
  <owner>kuscher@google.com</owner>
  <owner>varkha@chromium.org</owner>
  <summary>
    Time elapsed between instances of docking, undocking or any other action
    affecting docked state of a window.
  </summary>
</histogram>

<histogram name="Ash.Dock.Width" units="pixels">
  <owner>kuscher@google.com</owner>
  <owner>varkha@chromium.org</owner>
  <summary>
    Width of the docked area in pixels. Recorded every time it changes after a
    user window resize operation is completed.
  </summary>
</histogram>

<histogram name="Ash.GestureCreated" enum="UIEventType">
  <obsolete>
    Deprecated 08/2014 in Issue 352654, and replaced by Event.GestureCreated.
  </obsolete>
  <owner>kuscher@google.com</owner>
  <owner>rbyers@chromium.org</owner>
  <summary>
    The gesture-events recognized and dispatched by the browser gesture
    recognizer.
  </summary>
</histogram>

<histogram name="Ash.GestureTarget" enum="GestureActionType">
  <owner>kuscher@google.com</owner>
  <owner>rbyers@chromium.org</owner>
  <summary>
    The gesture-events recognized and dispatched by the browser gesture
    recognizer for various UI components.
  </summary>
</histogram>

<histogram name="Ash.ImmersiveFullscreen.WindowType" enum="WindowType">
  <owner>kuscher@google.com</owner>
  <summary>
    The type of the window which is put into immersive fullscreen. Immersive
    fullscreen is entered via the F4 key.
  </summary>
</histogram>

<histogram name="Ash.NumberOfVisibleWindowsInPrimaryDisplay" units="Windows">
  <owner>tdanderson@google.com</owner>
  <owner>bruthig@google.com</owner>
  <summary>
    An upper bound on the number of windows visible to the user on the primary
    display. Determined by processing the windows in increasing z-order and
    counting all non-minimized windows until a maximized or fullscreen window is
    processed. This metric is logged periodically every 30 minutes.
  </summary>
</histogram>

<histogram name="Ash.Shelf.Menu.NumItemsEnabledUponSelection" units="Count">
  <owner>bruthig@google.com</owner>
  <owner>tdanderson@google.com</owner>
  <summary>
    Tracks the number of menu items that are enabled in a shelf item's secondary
    menu. This metric is only recorded when a menu item is selected.
  </summary>
</histogram>

<histogram name="Ash.Shelf.Menu.SelectedMenuItemIndex" units="Index">
  <owner>bruthig@google.com</owner>
  <owner>tdanderson@google.com</owner>
  <summary>
    Tracks the index of the selected menu item in a shelf item's secondary menu.
    This metric is only recorded when a menu item is selected.
  </summary>
</histogram>

<histogram name="Ash.Shelf.NumberOfItems" units="Icons">
  <owner>bruthig@google.com</owner>
  <owner>tdanderson@google.com</owner>
  <summary>
    The number of icons in the shelf, not including the App Launcher icon. This
    metric is recorded every 30 minutes.
  </summary>
</histogram>

<histogram name="Ash.Shelf.NumberOfPinnedItems" units="Icons">
  <owner>bruthig@google.com</owner>
  <owner>tdanderson@google.com</owner>
  <summary>
    The number of pinned icons in the shelf, not including the App Launcher
    icon. This metric is recorded every 30 minutes.
  </summary>
</histogram>

<histogram name="Ash.Shelf.NumberOfUnpinnedItems" units="Icons">
  <owner>bruthig@google.com</owner>
  <owner>tdanderson@google.com</owner>
  <summary>
    The number of unpinned icons in the shelf. This metric is recorded every 30
    minutes.
  </summary>
</histogram>

<histogram name="Ash.Shelf.TimeBetweenNavigateToTaskSwitches" units="seconds">
  <owner>bruthig@google.com</owner>
  <owner>tdanderson@google.com</owner>
  <summary>
    The number of seconds between contiguous task switch user actions triggered
    by the Shelf buttons where the user activates a different user-predictable
    task. Task switches from other sources are ignored and do not affect this
    metric. In other words, if a user performs the following steps (1) launch
    task 'A' from the Shelf (2) Alt+Tab to task 'Z' (3) launch task 'B' from the
    Shelf, then this will result in a sample recorded for the time delta between
    launching tasks 'A' and 'B'.
  </summary>
</histogram>

<histogram name="Ash.Shelf.TimeBetweenWindowMinimizedAndActivatedActions"
    units="ms">
  <owner>bruthig@google.com</owner>
  <owner>tdanderson@google.com</owner>
  <summary>
    Tracks the amount of time between a window being minimized by the shelf and
    subsequently activated. In other words this metric is only recorded if a
    shelf button pressed action causes a window to be minimized and the very
    next shelf button pressed action causes the same window to be activated.
  </summary>
</histogram>

<histogram name="Ash.ShelfAlignmentOverTime" enum="ShelfAlignmentValue">
  <owner>kuscher@google.com</owner>
  <summary>
    The current state of the shelf (alignment) tracked over time by logging on a
    regular basis (30 minutes), this is used instead of log in or shelf usage to
    track users that do not lock/unlock or log in frequently and use a small
    number of browser instances or otherwise infrequently interact with the
    shelf launcher.
  </summary>
</histogram>

<histogram name="Ash.ShelfAlignmentUsage" enum="ShelfAlignmentValue">
  <owner>kuscher@google.com</owner>
  <summary>
    The current state of the shelf (alignment) when the shelf launcher is used
    to launch an app/window/etc, this is used instead of log in to give data on
    users that do not lock/unlock or log in frequently.
  </summary>
</histogram>

<histogram name="Ash.StationaryTouchDuration" units="seconds">
  <owner>kuscher@google.com</owner>
  <owner>rbyers@chromium.org</owner>
  <summary>The duration of mostly stationary long-duration touches.</summary>
</histogram>

<histogram name="Ash.Tab.TimeBetweenSwitchToExistingTabUserActions"
    units="seconds">
  <owner>bruthig@chromium.org</owner>
  <owner>tdanderson@chromium.org</owner>
  <summary>
    The number of seconds between tab switches triggered by a user gesture (e.g.
    Ctrl+T, Ctrl+1, tapping or clicking the tab strip, etc).
  </summary>
</histogram>

<histogram name="Ash.TimeBetweenTaskSwitches" units="seconds">
  <owner>bruthig@google.com</owner>
  <owner>tdanderson@google.com</owner>
  <summary>
    The number of seconds between contiguous task switch user actions triggered
    by any of the other task switch actions that are tracked. (e.g.,
    Ash.Shelf.TimeBetweenNavigateToTaskSwitches,
    Ash.Tab.TimeBetweenSwitchToExistingTabUserActions,
    Ash.WindowCycleController.TimeBetweenTaskSwitches,
    Ash.AppList.TimeBetweenTaskSwitches,
    Ash.WindowSelector.TimeBetweenActiveWindowChanges, etc).
  </summary>
</histogram>

<histogram name="Ash.TouchDuration" units="ms">
  <obsolete>
    Deprecated 12/2013 in r239809, and replaced by Ash.TouchDuration2.
  </obsolete>
  <owner>kuscher@google.com</owner>
  <summary>The duration of a touch-sequence.</summary>
</histogram>

<histogram name="Ash.TouchDuration2" units="ms">
  <obsolete>
    Deprecated 08/2014 in Issue 352654, and replaced by Event.TouchDuration.
  </obsolete>
  <owner>kuscher@google.com</owner>
  <owner>rbyers@chromium.org</owner>
  <summary>The duration of a touch-sequence.</summary>
</histogram>

<histogram name="Ash.TouchMaxDistance" units="pixels">
  <obsolete>
    Deprecated 08/2014 in Issue 352654, and replaced by Event.TouchMaxDistance.
  </obsolete>
  <owner>kuscher@google.com</owner>
  <owner>rbyers@chromium.org</owner>
  <summary>
    The maximum euclidean distance in dips which a touch point has travelled
    away from its starting point. Only measured for single finger gestures.
  </summary>
</histogram>

<histogram name="Ash.TouchMoveInterval" units="ms">
  <owner>kuscher@google.com</owner>
  <owner>rbyers@chromium.org</owner>
  <summary>The interval between touch-move events.</summary>
</histogram>

<histogram name="Ash.TouchMoveSteps" units="pixels">
  <owner>kuscher@google.com</owner>
  <owner>rbyers@chromium.org</owner>
  <summary>The distance between touch-move events.</summary>
</histogram>

<histogram name="Ash.TouchPositionX" units="pixels">
  <owner>kuscher@google.com</owner>
  <owner>rbyers@chromium.org</owner>
  <summary>The position of the touch-events along the X axis.</summary>
</histogram>

<histogram name="Ash.TouchPositionY" units="pixels">
  <owner>kuscher@google.com</owner>
  <owner>rbyers@chromium.org</owner>
  <summary>The position of the touch-events along the Y axis.</summary>
</histogram>

<histogram name="Ash.TouchRadius" units="pixels">
  <owner>kuscher@google.com</owner>
  <owner>rbyers@chromium.org</owner>
  <summary>The radius of a touch event.</summary>
</histogram>

<histogram name="Ash.TouchStartAfterEnd" units="ms">
  <owner>kuscher@google.com</owner>
  <owner>rbyers@chromium.org</owner>
  <summary>
    The interval between the end of a touch-sequence and the start of the next
    touch-sequence.
  </summary>
</histogram>

<histogram name="Ash.TouchStartBurst">
  <owner>kuscher@google.com</owner>
  <owner>rbyers@chromium.org</owner>
  <summary>
    The number of rapid touch-starts that happened within a short interval.
    Logged once for each such burst group.
  </summary>
</histogram>

<histogram name="Ash.TouchView.TouchViewActive" units="ms">
  <owner>girard@chromium.org</owner>
  <summary>
    The length of time that TouchView is active, for each activation.
  </summary>
</histogram>

<histogram name="Ash.TouchView.TouchViewActivePercentage" units="%">
  <owner>girard@chromium.org</owner>
  <summary>The proportion of time spent in TouchView during a session.</summary>
</histogram>

<histogram name="Ash.TouchView.TouchViewActiveTotal" units="seconds">
  <owner>girard@chromium.org</owner>
  <summary>The total time that TouchView is active during a session.</summary>
</histogram>

<histogram name="Ash.TouchView.TouchViewInactive" units="ms">
  <owner>girard@chromium.org</owner>
  <summary>The length of time between TouchView activations.</summary>
</histogram>

<histogram name="Ash.TouchView.TouchViewInactiveTotal" units="seconds">
  <owner>girard@chromium.org</owner>
  <summary>
    The total time that TouchView is not active during a session.
  </summary>
</histogram>

<histogram name="Ash.Wallpaper.CustomLayout" enum="WallpaperLayout">
  <owner>xdai@chromium.org</owner>
  <summary>
    The custom wallpaper layout type. Recorded when the user sets a new custom
    wallpaper or changes the existing custom wallpaper's layout.
  </summary>
</histogram>

<histogram name="Ash.Wallpaper.DefaultIndex">
  <obsolete>
    Deprecated as of 11/2012. Use of indices has been removed.
  </obsolete>
  <owner>kuscher@google.com</owner>
  <summary>
    The wallpaper index if one of the default wallpapers has been selected.
    Recorded at user login. Currently only for the old wallpaper picker UI.
  </summary>
</histogram>

<histogram name="Ash.Wallpaper.Source" enum="WallpaperType">
  <owner>xdai@chromium.org</owner>
  <summary>
    Recorded when a new wallpaper is set, either by the built-in Wallpaper
    Picker App, or by a third party App. Note the wallpaper change triggered by
    Sync file system event doesn't count.
  </summary>
</histogram>

<histogram name="Ash.Wallpaper.Type" enum="WallpaperType">
  <owner>kuscher@google.com</owner>
  <summary>The wallpaper type. Recorded at user login.</summary>
</histogram>

<histogram name="Ash.WindowCycleController.CycleTime" units="ms">
  <owner>flackr@chromium.org</owner>
  <owner>kuscher@google.com</owner>
  <summary>
    The amount of time the Alt key is held after pressing Alt+Tab to begin
    cycling through windows.
  </summary>
</histogram>

<histogram name="Ash.WindowCycleController.TimeBetweenTaskSwitches"
    units="seconds">
  <owner>tdanderson@google.com</owner>
  <owner>bruthig@google.com</owner>
  <summary>
    The number of seconds between task switches triggered by the next window and
    previous window accelerator keys (ie Alt+Tab, Alt+Shift+Tab).
  </summary>
</histogram>

<histogram name="Ash.WindowManager.Lock.Success" units="ms">
  <owner>jdufault@chromium.org</owner>
  <summary>
    How long it took for the screen lock process to complete. This does not
    include timeouts.
  </summary>
</histogram>

<histogram name="Ash.WindowManager.Lock.Timeout" units="ms">
  <owner>jdufault@chromium.org</owner>
  <summary>
    How long it took for the screen lock process to complete, for timeouts only.
  </summary>
</histogram>

<histogram name="Ash.WindowSelector.ArrowKeyPresses">
  <owner>flackr@chromium.org</owner>
  <owner>tdanderson@chromium.org</owner>
  <summary>
    The number of times the arrow keys are pressed in overview mode per session,
    i.e. between bringing up overview mode and ending it. This is only measured
    for the sessions that end by selecting a window with the enter key.
  </summary>
</histogram>

<histogram name="Ash.WindowSelector.CycleTime" units="ms">
  <obsolete>
    Deprecated as of 06/2014. No longer relevant since alt-tab switching was
    separated from WindowSelector.
  </obsolete>
  <owner>flackr@chromium.org</owner>
  <owner>kuscher@google.com</owner>
  <summary>
    The amount of time the Alt key is held after pressing Alt+Tab to begin
    cycling through windows.
  </summary>
</histogram>

<histogram name="Ash.WindowSelector.Items">
  <owner>flackr@chromium.org</owner>
  <owner>kuscher@google.com</owner>
  <summary>
    The number of items (single windows or groups of windows such as panels) in
    the overview mode, present at the start of each session.
  </summary>
</histogram>

<histogram name="Ash.WindowSelector.ItemsWhenTextFilteringUsed" units="items">
  <owner>tdanderson@chromium.org</owner>
  <owner>flackr@chromium.org</owner>
  <summary>
    The number of items showing in overview mode at the moment when an item is
    selected or when selection is canceled. Only recorded if the text filtering
    textfield contains a non-empty string.
  </summary>
</histogram>

<histogram name="Ash.WindowSelector.KeyPressesOverItemsRatio" units="%">
  <owner>flackr@chromium.org</owner>
  <owner>tdanderson@chromium.org</owner>
  <summary>
    The ratio between the arrow key presses and the number of overview items,
    expressed as a percentage for a single session.
  </summary>
</histogram>

<histogram name="Ash.WindowSelector.OverviewClosedItems">
  <owner>flackr@chromium.org</owner>
  <owner>tdanderson@chromium.org</owner>
  <summary>
    The number of items closed from the window overview for a single session.
  </summary>
</histogram>

<histogram name="Ash.WindowSelector.TextFilteringStringLength"
    units="characters">
  <owner>tdanderson@chromium.org</owner>
  <owner>flackr@chromium.org</owner>
  <summary>
    The length of the string entered into the text filtering textfield at the
    moment when an item is selected or when selection is canceled.
  </summary>
</histogram>

<histogram name="Ash.WindowSelector.TextFilteringTextfieldCleared">
  <owner>tdanderson@chromium.org</owner>
  <owner>flackr@chromium.org</owner>
  <summary>
    The number of times the text filtering textfield has had all of its text
    removed within a single overview mode session. Measured from the time
    overview mode is invoked to when an item is selected or when selection is
    canceled.
  </summary>
</histogram>

<histogram name="Ash.WindowSelector.TimeBetweenActiveWindowChanges"
    units="seconds">
  <owner>bruthig@chromium.org</owner>
  <owner>tdanderson@chromium.org</owner>
  <summary>
    The amount of time between endings of overview mode sessions which were
    caused by the user selecting a window which was not previously active. Only
    recorded on the second and later times after startup that the user selected
    a window which was not previously active.
  </summary>
</histogram>

<histogram name="Ash.WindowSelector.TimeBetweenUse" units="ms">
  <owner>flackr@chromium.org</owner>
  <owner>kuscher@google.com</owner>
  <summary>
    The amount of time between uses of overview mode, recorded when overview
    mode is entered. Only recorded on the second and later times after startup
    that the user entered overview mode.
  </summary>
</histogram>

<histogram name="Ash.WindowSelector.TimeInOverview" units="ms">
  <owner>flackr@chromium.org</owner>
  <owner>kuscher@google.com</owner>
  <summary>
    The amount of time spent in overview mode. Overview mode is engaged by
    pressing the overview button. The time is measured from the moment the
    windows begin animating to a thumbnail size preview to when a window is
    selected or selection is canceled.
  </summary>
</histogram>

<histogram name="Ash.WindowSelector.TimeInOverviewWithTextFiltering" units="ms">
  <owner>tdanderson@chromium.org</owner>
  <owner>flackr@chromium.org</owner>
  <summary>
    The amount of time spent in overview mode when text filtering is used. The
    time is measured from the moment the windows begin animating to a thumbnail
    size preview to when a window is selected or selection is canceled. Only
    recorded if the text filtering textfield contains a non-empty string.
  </summary>
</histogram>

<histogram name="AsyncDNS.AttemptCountFail">
  <owner>juliatuttle@chromium.org</owner>
  <summary>
    Count of DnsAttempts before DnsTransaction completes with failure.
  </summary>
</histogram>

<histogram name="AsyncDNS.AttemptCountSuccess">
  <owner>juliatuttle@chromium.org</owner>
  <summary>
    Count of DnsAttempts before DnsTransaction completes successfully.
  </summary>
</histogram>

<histogram name="AsyncDNS.ConfigChange" enum="BooleanSuccess">
  <owner>juliatuttle@chromium.org</owner>
  <summary>
    Whether DnsConfigService::OnConfigChange actually corresponded to a change
    in DnsConfig.
  </summary>
</histogram>

<histogram name="AsyncDNS.ConfigNotifyInterval" units="ms">
  <owner>juliatuttle@chromium.org</owner>
  <summary>
    Duration of time between calls to DnsConfigService::InvalidateConfig.
  </summary>
</histogram>

<histogram name="AsyncDNS.ConfigParseDuration" units="ms">
  <owner>juliatuttle@chromium.org</owner>
  <summary>Duration of time spent parsing DnsConfig.</summary>
</histogram>

<histogram name="AsyncDNS.ConfigParsePosix" enum="AsyncDNSConfigParsePosix">
  <owner>juliatuttle@chromium.org</owner>
  <summary>
    Counts of results of parsing DnsConfig in DnsConfigServicePosix.
  </summary>
</histogram>

<histogram name="AsyncDNS.ConfigParseResult" enum="BooleanSuccess">
  <owner>juliatuttle@chromium.org</owner>
  <summary>Whether DnsConfig was parsed successfully.</summary>
</histogram>

<histogram name="AsyncDNS.ConfigParseWin" enum="AsyncDNSConfigParseWin">
  <owner>juliatuttle@chromium.org</owner>
  <summary>
    Counts of results of parsing DnsConfig in DnsConfigServiceWin.
  </summary>
</histogram>

<histogram name="AsyncDNS.DNSChangerDetected" enum="BooleanSuccess">
  <owner>juliatuttle@chromium.org</owner>
  <summary>
    Whether the first valid DnsConfig included a rogue nameserver.
  </summary>
</histogram>

<histogram name="AsyncDNS.DnsClientDisabledReason" enum="NetErrorCodes">
  <owner>juliatuttle@chromium.org</owner>
  <summary>
    Counts of specific error codes returned by DnsTask if a subsequent ProcTask
    succeeded, at the end of a streak of failures after which the DnsClient was
    disabled.
  </summary>
</histogram>

<histogram name="AsyncDNS.DnsClientEnabled" enum="BooleanSuccess">
  <owner>juliatuttle@chromium.org</owner>
  <summary>
    TRUE counts the events when a valid DnsConfig is received and used to enable
    DnsClient, while FALSE counts the events when DnsClient is disabled after a
    series of successful fallbacks from DnsTask to ProcTask.
  </summary>
</histogram>

<histogram name="AsyncDNS.FallbackFail" units="ms">
  <owner>juliatuttle@chromium.org</owner>
  <summary>
    Duration of time spent by ProcTask in failing fallback resolutions.
  </summary>
</histogram>

<histogram name="AsyncDNS.FallbackSuccess" units="ms">
  <owner>juliatuttle@chromium.org</owner>
  <summary>
    Duration of time spent by ProcTask in successful fallback resolutions.
  </summary>
</histogram>

<histogram name="AsyncDNS.HaveDnsConfig" enum="BooleanSuccess">
  <owner>juliatuttle@chromium.org</owner>
  <summary>
    Whether there was a valid DNS configuration at the start of a job which
    eventually completed successfully.
  </summary>
</histogram>

<histogram name="AsyncDNS.HostParseResult" enum="BooleanSuccess">
  <owner>juliatuttle@chromium.org</owner>
  <summary>Whether DnsHosts were parsed successfully.</summary>
</histogram>

<histogram name="AsyncDNS.HostsChange" enum="BooleanSuccess">
  <owner>juliatuttle@chromium.org</owner>
  <summary>
    Whether DnsConfigService::OnHostsChange actually corresponded to a change in
    DnsHosts.
  </summary>
</histogram>

<histogram name="AsyncDNS.HostsNotifyInterval" units="ms">
  <owner>juliatuttle@chromium.org</owner>
  <summary>
    Duration of time between calls to DnsConfigService::InvalidateHosts.
  </summary>
</histogram>

<histogram name="AsyncDNS.HostsParseDuration" units="ms">
  <owner>juliatuttle@chromium.org</owner>
  <summary>Duration of time spent parsing DnsHosts.</summary>
</histogram>

<histogram name="AsyncDNS.HostsParseWin" enum="AsyncDNSHostsParseWin">
  <owner>juliatuttle@chromium.org</owner>
  <summary>
    Counts of results of parsing DnsHosts in DnsConfigServiceWin.
  </summary>
</histogram>

<histogram name="AsyncDNS.HostsSize" units="bytes">
  <owner>juliatuttle@chromium.org</owner>
  <summary>
    The size of the HOSTS file observed before each attempt to parse it.
  </summary>
</histogram>

<histogram name="AsyncDNS.JobQueueTime" units="ms">
  <owner>juliatuttle@chromium.org</owner>
  <summary>
    Time elapsed between the time the HostResolverImpl::Job was created and the
    time the Job was started (using DnsClient).
  </summary>
</histogram>

<histogram name="AsyncDNS.JobQueueTime_HIGHEST" units="ms">
  <owner>juliatuttle@chromium.org</owner>
  <summary>
    Time elapsed between the time the HostResolverImpl::Job was created and the
    time the Job was started (using DnsClient). Includes only Jobs which had
    priority HIGHEST when started.
  </summary>
</histogram>

<histogram name="AsyncDNS.JobQueueTime_IDLE" units="ms">
  <owner>juliatuttle@chromium.org</owner>
  <summary>
    Time elapsed between the time the HostResolverImpl::Job was created and the
    time the Job was started (using DnsClient). Includes only Jobs which had
    priority IDLE when started.
  </summary>
</histogram>

<histogram name="AsyncDNS.JobQueueTime_LOW" units="ms">
  <owner>juliatuttle@chromium.org</owner>
  <summary>
    Time elapsed between the time the HostResolverImpl::Job was created and the
    time the Job was started (using DnsClient). Includes only Jobs which had
    priority LOW when started.
  </summary>
</histogram>

<histogram name="AsyncDNS.JobQueueTime_LOWEST" units="ms">
  <owner>juliatuttle@chromium.org</owner>
  <summary>
    Time elapsed between the time the HostResolverImpl::Job was created and the
    time the Job was started (using DnsClient). Includes only Jobs which had
    priority LOWEST when started.
  </summary>
</histogram>

<histogram name="AsyncDNS.JobQueueTime_MEDIUM" units="ms">
  <owner>juliatuttle@chromium.org</owner>
  <summary>
    Time elapsed between the time the HostResolverImpl::Job was created and the
    time the Job was started (using DnsClient). Includes only Jobs which had
    priority MEDIUM when started.
  </summary>
</histogram>

<histogram name="AsyncDNS.JobQueueTimeAfterChange" units="ms">
  <owner>juliatuttle@chromium.org</owner>
  <summary>
    Time elapsed between the last time the priority of a HostResolverImpl::Job
    changed (when a Request was attached or detached) and the time the Job was
    started (using DnsClient).
  </summary>
</histogram>

<histogram name="AsyncDNS.JobQueueTimeAfterChange_HIGHEST" units="ms">
  <owner>juliatuttle@chromium.org</owner>
  <summary>
    Time elapsed between the last time the priority of a HostResolverImpl::Job
    changed (when a Request was attached or detached) and the time the Job was
    started (using DnsClient). Includes only Jobs which had priority HIGHEST
    when started.
  </summary>
</histogram>

<histogram name="AsyncDNS.JobQueueTimeAfterChange_IDLE" units="ms">
  <owner>juliatuttle@chromium.org</owner>
  <summary>
    Time elapsed between the last time the priority of a HostResolverImpl::Job
    changed (when a Request was attached or detached) and the time the Job was
    started (using DnsClient). Includes only Jobs which had priority IDLE when
    started.
  </summary>
</histogram>

<histogram name="AsyncDNS.JobQueueTimeAfterChange_LOW" units="ms">
  <owner>juliatuttle@chromium.org</owner>
  <summary>
    Time elapsed between the last time the priority of a HostResolverImpl::Job
    changed (when a Request was attached or detached) and the time the Job was
    started (using DnsClient). Includes only Jobs which had priority LOW when
    started.
  </summary>
</histogram>

<histogram name="AsyncDNS.JobQueueTimeAfterChange_LOWEST" units="ms">
  <owner>juliatuttle@chromium.org</owner>
  <summary>
    Time elapsed between the last time the priority of a HostResolverImpl::Job
    changed (when a Request was attached or detached) and the time the Job was
    started (using DnsClient). Includes only Jobs which had priority LOWEST when
    started.
  </summary>
</histogram>

<histogram name="AsyncDNS.JobQueueTimeAfterChange_MEDIUM" units="ms">
  <owner>juliatuttle@chromium.org</owner>
  <summary>
    Time elapsed between the last time the priority of a HostResolverImpl::Job
    changed (when a Request was attached or detached) and the time the Job was
    started (using DnsClient). Includes only Jobs which had priority MEDIUM when
    started.
  </summary>
</histogram>

<histogram name="AsyncDNS.NameServersType" enum="AsyncDNSNameServersType">
  <obsolete>
    Deprecated as of 4/2016.
  </obsolete>
  <owner>juliatuttle@chromium.org</owner>
  <summary>
    Type of nameservers in the DNS config, recorded each time the config is read
    by the DNSConfigService.
  </summary>
</histogram>

<histogram name="AsyncDNS.ParseToAddressList" enum="AsyncDNSParseResult">
  <owner>juliatuttle@chromium.org</owner>
  <summary>
    Counts of results of parsing addresses out of DNS responses in successful
    DnsTransactions.
  </summary>
</histogram>

<histogram name="AsyncDNS.PrefDefaultSource" enum="AsyncDNSPrefDefaultSource">
  <owner>juliatuttle@chromium.org</owner>
  <summary>
    The source of the async DNS preference's default. Logged at startup, when
    the IO thread is created.
  </summary>
</histogram>

<histogram name="AsyncDNS.PrefSource" enum="AsyncDNSPrefSource">
  <owner>juliatuttle@chromium.org</owner>
  <summary>
    The source of the async DNS preference's value. Logged at startup, when the
    IO thread is created.
  </summary>
</histogram>

<histogram name="AsyncDNS.ResolveError" enum="NetErrorCodes">
  <owner>juliatuttle@chromium.org</owner>
  <summary>
    Counts of specific error codes returned by DnsTask if a subsequent ProcTask
    succeeded.
  </summary>
</histogram>

<histogram name="AsyncDNS.ResolveFail" units="ms">
  <owner>juliatuttle@chromium.org</owner>
  <summary>
    Duration of time taken by DnsTask in resolutions that failed. Excludes time
    spent in the subsequent fallback.
  </summary>
</histogram>

<histogram name="AsyncDNS.ResolveStatus" enum="AsyncDNSResolveStatus">
  <owner>juliatuttle@chromium.org</owner>
  <summary>
    Counts of the overall results of using asynchronous DNS in HostResolverImpl.
    This only includes jobs started with valid DNS configuration and excludes
    synchronous resolutions (as IP literals, from cache, and from HOSTS).
  </summary>
</histogram>

<histogram name="AsyncDNS.ResolveSuccess" units="ms">
  <owner>juliatuttle@chromium.org</owner>
  <summary>
    Duration of time taken by DnsTask in resolutions that succeeded.
  </summary>
</histogram>

<histogram name="AsyncDNS.ResolveSuccess_FAMILY_IPV4" units="ms">
  <owner>juliatuttle@chromium.org</owner>
  <summary>
    Same as AsyncDNS.ResolveSuccess, but limited to pure IPv4 lookups.
  </summary>
</histogram>

<histogram name="AsyncDNS.ResolveSuccess_FAMILY_IPV6" units="ms">
  <owner>juliatuttle@chromium.org</owner>
  <summary>
    Same as AsyncDNS.ResolveSuccess, but limited to pure IPv6 lookups.
  </summary>
</histogram>

<histogram name="AsyncDNS.ResolveSuccess_FAMILY_UNSPEC" units="ms">
  <owner>juliatuttle@chromium.org</owner>
  <summary>
    Same as AsyncDNS.ResolveSuccess, but limited to IPv4/IPv6 lookups.
  </summary>
</histogram>

<histogram name="AsyncDNS.ServerCount">
  <owner>juliatuttle@chromium.org</owner>
  <summary>
    Count of servers in DnsConfig. Recorded on every new DnsSession, which is
    created on DNS change.
  </summary>
</histogram>

<histogram name="AsyncDNS.ServerFailureIndex">
  <owner>juliatuttle@chromium.org</owner>
  <summary>
    Index in DnsConfig of the failing server, recorded at the time of failure.
  </summary>
</histogram>

<histogram name="AsyncDNS.ServerFailuresAfterNetworkChange">
  <owner>juliatuttle@chromium.org</owner>
  <summary>
    Count of server failures after network change before first success in the
    DnsSession. Recorded at the time of first success.
  </summary>
</histogram>

<histogram name="AsyncDNS.ServerFailuresAfterSuccess">
  <owner>juliatuttle@chromium.org</owner>
  <summary>
    Count of server failures after success until the end of the session. Server
    has reported success at some point during the session. Recorded at the end
    of the DnsSession.
  </summary>
</histogram>

<histogram name="AsyncDNS.ServerFailuresBeforeSuccess">
  <owner>juliatuttle@chromium.org</owner>
  <summary>
    Count of server failures before success. This is NOT the first success in
    the DnsSession. Recorded at the time of success.
  </summary>
</histogram>

<histogram name="AsyncDNS.ServerFailuresWithoutSuccess">
  <owner>juliatuttle@chromium.org</owner>
  <summary>
    Count of server failures without success until the end of the session.
    Server has never reported success during the DnsSession. Recorded at the end
    of the DnsSession.
  </summary>
</histogram>

<histogram name="AsyncDNS.ServerIsGood" enum="BooleanSuccess">
  <owner>juliatuttle@chromium.org</owner>
  <summary>
    The current server is &quot;good&quot; and does not have to be skipped.
  </summary>
</histogram>

<histogram name="AsyncDNS.SortFailure" units="ms">
  <owner>juliatuttle@chromium.org</owner>
  <summary>
    Duration of time taken in failing calls to AddressSorter in dual-stack
    resolutions using DnsTask.
  </summary>
</histogram>

<histogram name="AsyncDNS.SortSuccess" units="ms">
  <owner>juliatuttle@chromium.org</owner>
  <summary>
    Duration of time taken in successful calls to AddressSorter in dual-stack
    resolutions using DnsTask.
  </summary>
</histogram>

<histogram name="AsyncDNS.SuffixSearchDone">
  <owner>juliatuttle@chromium.org</owner>
  <summary>
    The number of names from the search name list consumed during a successful
    transaction (QTYPE A only).
  </summary>
</histogram>

<histogram name="AsyncDNS.SuffixSearchRemain">
  <owner>juliatuttle@chromium.org</owner>
  <summary>
    The number of names left on the search name list at the end of a successful
    transaction (QTYPE A only).
  </summary>
</histogram>

<histogram name="AsyncDNS.SuffixSearchStart">
  <owner>juliatuttle@chromium.org</owner>
  <summary>
    The number of names on the search name list at the start of a transaction
    (QTYPE A only).
  </summary>
</histogram>

<histogram name="AsyncDNS.TCPAttemptFail" units="ms">
  <owner>juliatuttle@chromium.org</owner>
  <summary>
    Duration of time taken by DnsTCPAttempt in failed attempts. Excludes
    timeouts.
  </summary>
</histogram>

<histogram name="AsyncDNS.TCPAttemptSuccess" units="ms">
  <owner>juliatuttle@chromium.org</owner>
  <summary>
    Duration of time taken by DnsTCPAttempt in successful attempts.
  </summary>
</histogram>

<histogram name="AsyncDNS.TimeoutErrorHistogram" units="ms">
  <owner>juliatuttle@chromium.org</owner>
  <summary>
    Difference between RTT and timeout calculated using Histogram algorithm.
  </summary>
</histogram>

<histogram name="AsyncDNS.TimeoutErrorHistogramUnder" units="ms">
  <owner>juliatuttle@chromium.org</owner>
  <summary>
    Difference between timeout calculated using Histogram algorithm and RTT.
  </summary>
</histogram>

<histogram name="AsyncDNS.TimeoutErrorJacobson" units="ms">
  <owner>juliatuttle@chromium.org</owner>
  <summary>
    Difference between RTT and timeout calculated using Jacobson algorithm.
  </summary>
</histogram>

<histogram name="AsyncDNS.TimeoutErrorJacobsonUnder" units="ms">
  <owner>juliatuttle@chromium.org</owner>
  <summary>
    Difference between timeout calculated using Jacobson algorithm and RTT.
  </summary>
</histogram>

<histogram name="AsyncDNS.TimeoutSpentHistogram" units="ms">
  <owner>juliatuttle@chromium.org</owner>
  <summary>
    Duration of time that would be spent waiting for lost request using
    Histogram algorithm.
  </summary>
</histogram>

<histogram name="AsyncDNS.TimeoutSpentJacobson" units="ms">
  <owner>juliatuttle@chromium.org</owner>
  <summary>
    Duration of time that would be spent waiting for lost request using Jacobson
    algorithm.
  </summary>
</histogram>

<histogram name="AsyncDNS.TotalTime" units="ms">
  <owner>juliatuttle@chromium.org</owner>
  <summary>
    Duration of time since a HostResolverImpl::Resolve request to the time a
    result is posted. Excludes canceled, evicted, and aborted requests. Includes
    cache hits (recorded as 0). Excludes speculative requests.
  </summary>
</histogram>

<histogram name="AsyncDNS.TotalTime_speculative" units="ms">
  <owner>juliatuttle@chromium.org</owner>
  <summary>
    Duration of time since a HostResolverImpl::Resolve request to the time a
    result is posted. Excludes canceled, evicted, and aborted requests. Includes
    cache hits (recorded as 0). Speculative requests only.
  </summary>
</histogram>

<histogram name="AsyncDNS.TransactionFailure" units="ms">
  <owner>juliatuttle@chromium.org</owner>
  <summary>
    Duration of time taken in failing DnsTransactions. This includes server
    failures, timeouts and NXDOMAIN results.
  </summary>
</histogram>

<histogram name="AsyncDNS.TransactionSuccess" units="ms">
  <owner>juliatuttle@chromium.org</owner>
  <summary>
    Duration of time taken in successful DnsTransactions. This includes all
    NOERROR answers, even if they indicate the name has no addresses or they
    cannot be parsed.
  </summary>
</histogram>

<histogram name="AsyncDNS.TransactionSuccess_A" units="ms">
  <owner>juliatuttle@chromium.org</owner>
  <summary>
    Same as AsyncDNS.TransactionSuccess but limited to A query type.
  </summary>
</histogram>

<histogram name="AsyncDNS.TransactionSuccess_AAAA" units="ms">
  <owner>juliatuttle@chromium.org</owner>
  <summary>
    Same as AsyncDNS.TransactionSuccess but limited to AAAA query type.
  </summary>
</histogram>

<histogram name="AsyncDNS.TTL" units="ms">
  <owner>juliatuttle@chromium.org</owner>
  <summary>
    TTL of the resolved addresses, as in the response received from the server.
    For results served from local cache, the TTL is from the original response.
  </summary>
</histogram>

<histogram name="AsyncDNS.UDPAttemptFail" units="ms">
  <owner>juliatuttle@chromium.org</owner>
  <summary>
    Duration of time taken by DnsUDPAttempt in failed attempts. Excludes
    timeouts.
  </summary>
</histogram>

<histogram name="AsyncDNS.UDPAttemptSuccess" units="ms">
  <owner>juliatuttle@chromium.org</owner>
  <summary>
    Duration of time taken by DnsUDPAttempt in successful attempts. Includes
    responses arriving after timeout, if multiple attempts are allowed.
  </summary>
</histogram>

<histogram name="AsyncDNS.UnchangedConfigInterval" units="ms">
  <owner>juliatuttle@chromium.org</owner>
  <summary>
    Duration of time since the last empty config result to the time a non-change
    OnConfigChange is received.
  </summary>
</histogram>

<histogram name="AsyncDNS.UnchangedHostsInterval" units="ms">
  <owner>juliatuttle@chromium.org</owner>
  <summary>
    Duration of time since the last empty config result to the time a non-change
    OnHostsChange is received.
  </summary>
</histogram>

<histogram name="AsyncDNS.WatchStatus" enum="AsyncDNSWatchStatus">
  <owner>juliatuttle@chromium.org</owner>
  <summary>
    The result of DnsConfigService watch. Counts STARTED on every initialization
    and FAILED_* on any failure.
  </summary>
</histogram>

<histogram name="Aura.CreatedGpuBrowserCompositor" enum="CompositorType">
  <owner>jbauman@chromium.org</owner>
  <summary>
    Whether the browser compositor uses GPU or the software renderer.
  </summary>
</histogram>

<histogram name="Autocheckout.Bubble" enum="AutocheckoutBubble">
  <obsolete>
    Deprecated as of 8/2013.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Measures the frequency of user interactions with the Autocheckout bubble,
    which prompts users to invoke Autocheckout on supported websites.
  </summary>
</histogram>

<histogram name="Autocheckout.BuyFlow" enum="AutocheckoutBuyFlow">
  <obsolete>
    Deprecated as of 8/2013.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Measures the frequency of final states reached in Autocheckout buy flow.
  </summary>
</histogram>

<histogram name="Autocheckout.DismissalState"
    enum="AutofillDialogDismissalState">
  <obsolete>
    Deprecated as of 8/2013.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>The state of the Autocheckout dialog when it was dismissed.</summary>
</histogram>

<histogram name="Autocheckout.FlowDuration" units="ms">
  <obsolete>
    Deprecated as of 8/2013.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Measures the time elapsed between when the user submitted the Autocheckout
    dialog and when the Autocheckout flow, or filling process, concluded.
  </summary>
</histogram>

<histogram name="Autocheckout.FlowDuration.Failed" units="ms">
  <obsolete>
    Deprecated as of 8/2013.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Measures the time elapsed between when the user submitted the Autocheckout
    dialog and when the Autocheckout flow concluded, in cases where the flow
    failed.
  </summary>
</histogram>

<histogram name="Autocheckout.FlowDuration.Succeeded" units="ms">
  <obsolete>
    Deprecated as of 8/2013.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Measures the time elapsed between when the user submitted the Autocheckout
    dialog and when the Autocheckout flow concluded, in cases where the flow
    succeeded.
  </summary>
</histogram>

<histogram name="Autocheckout.InitialUserState"
    enum="AutofillDialogInitialUserState">
  <obsolete>
    Deprecated as of 8/2013.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The initial state of a user that's interacting with a freshly shown
    Autocheckout dialog.
  </summary>
</histogram>

<histogram name="Autocheckout.PopupInDialog" enum="AutofillDialogPopupEvent">
  <obsolete>
    Deprecated as of 8/2013.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    User interactions with the Autofill popup shown while filling an
    Autocheckout dialog.
  </summary>
</histogram>

<histogram name="Autocheckout.Security" enum="AutofillDialogSecurity">
  <obsolete>
    Deprecated as of 8/2013.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Measures the frequency of security warnings and errors in the Autocheckout
    dialog.
  </summary>
</histogram>

<histogram name="Autocheckout.UiDuration" units="ms">
  <obsolete>
    Deprecated as of 8/2013.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Measures the duration for which an Autocheckout dialog was shown.
  </summary>
</histogram>

<histogram name="Autocheckout.UiDuration.Cancel" units="ms">
  <obsolete>
    Deprecated as of 8/2013.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Measures the duration for which an Autocheckout dialog was shown, in cases
    where the user ended up canceling out of the dialog.
  </summary>
</histogram>

<histogram name="Autocheckout.UiDuration.Submit" units="ms">
  <obsolete>
    Deprecated as of 8/2013.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Measures the duration for which an Autocheckout dialog was shown, in cases
    where the user ended up accepting the dialog.
  </summary>
</histogram>

<histogram name="Autocheckout.UiEvents" enum="AutofillDialogUiEvents">
  <obsolete>
    Deprecated as of 8/2013.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Measures how users are interacting with the Autocheckout dialog UI.
  </summary>
</histogram>

<histogram name="Autocheckout.UiLatencyToShow" units="ms">
  <obsolete>
    Deprecated as of 8/2013.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Measures the duration of time it takes for the Autocheckout UI to be
    actionable by the user after it is shown.
  </summary>
</histogram>

<histogram name="Autocheckout.WalletErrors" enum="WalletErrors">
  <obsolete>
    Deprecated as of 8/2013.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Measures the frequency of errors in communicating with the Google Online
    Wallet server.
  </summary>
</histogram>

<histogram name="Autocheckout.WalletRequiredActions"
    enum="WalletRequiredActions">
  <obsolete>
    Deprecated as of 8/2013.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Measures the frequency of required user actions returned by the Google
    Online Wallet server.
  </summary>
</histogram>

<histogram name="Autocheckout.WhitelistDownloadDuration" units="ms">
  <obsolete>
    Deprecated as of 8/2013.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Measures time taken to download the Autocheckout whitelist file.
  </summary>
</histogram>

<histogram name="Autocheckout.WhitelistDownloadDuration.Failed" units="ms">
  <obsolete>
    Deprecated as of 8/2013.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Measures time taken to download the Autocheckout whitelist file in case the
    download was failed.
  </summary>
</histogram>

<histogram name="Autocheckout.WhitelistDownloadDuration.Succeeded" units="ms">
  <obsolete>
    Deprecated as of 8/2013.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Measures time taken to download the Autocheckout whitelist file in case the
    download was succeeded.
  </summary>
</histogram>

<histogram name="AutodetectEncoding.Attempted" enum="BooleanAttempted">
  <obsolete>
    Deprecated as of 2/2016.
  </obsolete>
  <owner>jinsukkim@chromium.org</owner>
  <summary>
    Whether the text encoding auto detection logic was attempted for a web page.
    The logic is triggered when the parser fails to find the encoding method
    from other signals such as http header, meta tag, BOM, etc.

    If the logic successfully detects a new encoding method which is different
    from the default one, the result is reported through
    AutodetectEncoding.Detected with the encoding method (see below). Otherwise
    - i.e. detection logic somehow fails to work for the page or the detected
    one is same as the default - no result is reported.
  </summary>
</histogram>

<histogram name="AutodetectEncoding.Detected" enum="EncodingMethod"
    units="pages">
  <obsolete>
    Deprecated as of 2/2016.
  </obsolete>
  <owner>jinsukkim@chromium.org</owner>
  <summary>
    The number of web pages whose encoding method is found by the auto detection
    logic. Grouped by the encoding methods defined in EncodingMethod.
  </summary>
</histogram>

<histogram name="Autofill.AddressBook.AccessSkipped" enum="BooleanSkipped">
  <obsolete>
    Deprecated as of 8/2015.
  </obsolete>
  <owner>erikchen@chromium.org</owner>
  <summary>
    Whether an attempt to access the Mac AddressBook was skipped because doing
    so would incorrectly cause the appearance of the permissions dialog. This
    happens when Chrome auto-update changes the binary on disk before the first
    AddressBook access attempt.
  </summary>
</histogram>

<histogram name="Autofill.AddressBookAvailable" enum="BooleanAvailable">
  <obsolete>
    Deprecated as of 8/2015.
  </obsolete>
  <owner>isherman@chromium.org</owner>
  <summary>
    Whether the Mac AddressBook was available on an attempt to read data from
    it.
  </summary>
</histogram>

<histogram name="Autofill.AddressBookAvailableOnFirstAttempt"
    enum="BooleanAvailable">
  <obsolete>
    Deprecated as of 8/2015.
  </obsolete>
  <owner>isherman@chromium.org</owner>
  <summary>
    Whether the Mac AddressBook was available on the *first* attempt to read
    data from it.  This is only recorded once per Chrome profile.
  </summary>
</histogram>

<histogram name="Autofill.AddressSuggestionsCount">
  <owner>isherman@chromium.org</owner>
  <summary>
    The number of address suggestions shown in the Autofill popup.
  </summary>
</histogram>

<histogram name="Autofill.AutomaticProfileCreation" enum="BooleanCreated">
  <obsolete>
    Deprecated as of 6/2015, replaced by Autofill.ProfileActionOnFormSubmitted.
  </obsolete>
  <owner>sebsg@chromium.org</owner>
  <summary>
    Whether a new Autofill profile was created automatically. In the
    &quot;false&quot; case, an existing profile was used (and possibly updated).
  </summary>
</histogram>

<histogram name="Autofill.CardUploadDecision" enum="AutofillCardUploadDecision">
  <obsolete>
    Deprecated as of 2/2016, replaced by Autofill.CardUploadDecisionExpanded.
  </obsolete>
  <owner>jdonnelly@chromium.org</owner>
  <summary>
    Whether upload was offered upon detecting a form submission with credit card
    data and a reason if it wasn't.
  </summary>
</histogram>

<histogram name="Autofill.CardUploadDecisionExpanded"
    enum="AutofillCardUploadDecisionExpanded">
  <owner>jdonnelly@chromium.org</owner>
  <summary>
    Whether upload was offered upon detecting a form submission with credit card
    data and a detailed reason if it wasn't.
  </summary>
</histogram>

<histogram name="AutoFill.CCInfoBarAccepted">
  <obsolete>
    Deprecated as of 3/2011, replaced by Autofill.CreditCardInfoBar.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>The Autofill credit card info bar was accepted.</summary>
</histogram>

<histogram name="AutoFill.CCInfoBarDenied">
  <obsolete>
    Deprecated as of 3/2011, replaced by Autofill.CreditCardInfoBar.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>The Autofill credit card info bar was denied.</summary>
</histogram>

<histogram name="Autofill.CreditCardInfoBar" enum="AutofillCreditCardInfoBar">
  <owner>isherman@chromium.org</owner>
  <summary>
    The relative frequency with which users accept, deny, or ignore the Autofill
    credit card info bar prompt.
  </summary>
</histogram>

<histogram name="Autofill.DaysSinceLastUse.CreditCard" units="days">
  <owner>sebsg@chromium.org</owner>
  <summary>
    Logs the number of days that have passed since the credit card was last
    used.
  </summary>
</histogram>

<histogram name="Autofill.DaysSinceLastUse.Profile" units="days">
  <owner>sebsg@chromium.org</owner>
  <summary>
    Logs the number of days that have passed since the profile was last used.
  </summary>
</histogram>

<histogram name="Autofill.DeveloperEngagement"
    enum="AutofillDeveloperEngagement">
  <owner>isherman@chromium.org</owner>
  <summary>
    Measures the adoption of the HTML autocomplete type hint specification (see
    http://is.gd/whatwg_autocomplete for more details).  For each fillable form
    detected, logs whether that form includes author-specified type hints.
  </summary>
</histogram>

<histogram name="Autofill.FillDuration.FromInteraction.WithAutofill">
  <owner>isherman@chromium.org</owner>
  <summary>
    Time elapsed between the user's first interaction with a form and the form's
    submission, for an autofilled form.
  </summary>
</histogram>

<histogram name="Autofill.FillDuration.FromInteraction.WithoutAutofill">
  <owner>isherman@chromium.org</owner>
  <summary>
    Time elapsed between the user's first interaction with a form and the form's
    submission, for a non-autofilled form.
  </summary>
</histogram>

<histogram name="Autofill.FillDuration.FromLoad.WithAutofill">
  <owner>isherman@chromium.org</owner>
  <summary>
    Time elapsed between form load and form submission, for an autofilled form.
  </summary>
</histogram>

<histogram name="Autofill.FillDuration.FromLoad.WithoutAutofill">
  <owner>isherman@chromium.org</owner>
  <summary>
    Time elapsed between form load and form submission, for a non-autofilled
    form.
  </summary>
</histogram>

<histogram name="Autofill.FormEvents.Address" enum="AutofillFormEvent">
  <owner>waltercacau@chromium.org</owner>
  <summary>
    Autofill form events for address forms. These are recorded when the user
    interacts with a form requesting an address.
  </summary>
  <details>
    Important caveat about submission metrics: - Submission using autofill data
    is determined by simply evaluating if there was a fill operation in this
    page. So, if the user filled with local data, completed erased or modified
    the data after and then submitted, we would only emit one &quot;Submitted
    with server suggestion filled (once)&quot;; - The submission segmentation
    works by checking what kind of data was last filled for this type of form in
    the page load. So, if I user initially filled with local data and after that
    filled with server, we will only emit &quot;Submitted with server suggestion
    filled (once)&quot;.
  </details>
</histogram>

<histogram name="Autofill.FormEvents.CreditCard" enum="AutofillFormEvent">
  <owner>waltercacau@chromium.org</owner>
  <summary>
    Autofill form events for credit card forms. These are recorded when the user
    interacts with a form requesting a credit card.
  </summary>
  <details>
    Important caveat about submission metrics: - Submission using autofill data
    is determined by simply evaluating if there was a fill operation in this
    page. So, if the user filled with local data, completed erased or modified
    the data after and then submitted, we would only emit one &quot;Submitted
    with server suggestion filled (once)&quot;; - The submission segmentation
    works by checking what kind of data was last filled for this type of form in
    the page load. So, if I user initially filled with local data and after that
    filled with server, we will only emit &quot;Submitted with server suggestion
    filled (once)&quot;.
  </details>
</histogram>

<histogram name="Autofill.FormSubmittedState" enum="AutofillFormSubmittedState">
  <owner>sebsg@chromium.org</owner>
  <summary>The autofill state related to a submitted form.</summary>
</histogram>

<histogram name="Autofill.IcuCollatorCreationSuccess" enum="BooleanSuccess">
  <owner>mathp@chromium.org</owner>
  <summary>
    Tracks whether Autofill was able to create the ICU collator successfully.
  </summary>
</histogram>

<histogram name="Autofill.IsEnabled.PageLoad" enum="BooleanEnabled">
  <owner>isherman@chromium.org</owner>
  <summary>
    Tracks whether Autofill is enabled on page load for a page containing forms.
  </summary>
</histogram>

<histogram name="Autofill.IsEnabled.Startup" enum="BooleanEnabled">
  <owner>isherman@chromium.org</owner>
  <summary>Tracks whether Autofill is enabled when Chrome launches.</summary>
</histogram>

<histogram name="Autofill.KeyboardAccessoryButtonsIOS"
    enum="AutofillKeyboardAccessoryButtonsIOS">
  <owner>bondd@chromium.org</owner>
  <summary>
    [iOS] Measures the frequency of button presses on the iOS Autofill keyboard
    accessory.
  </summary>
</histogram>

<histogram name="Autofill.MacAddressBook" enum="AutofillMacAddressBook">
  <obsolete>
    Deprecated as of 8/2015.
  </obsolete>
  <owner>erikchen@chromium.org</owner>
  <summary>
    When Chrome tries to access the user's Address Book, OSX presents a blocking
    dialog which disrupts the user experience. A new Chrome feature has been
    introduced wherein Chrome only shows this blocking dialog if the user
    explicitly asked Chrome to access the user's Address Book. If a form's field
    looks like it might support Autofill suggestions from the user's Address
    Book and there are no other suggestions, Chrome shows an Autofill entry that
    prompts the user to give Chrome access to the user's Address Book. This
    histogram tracks the frequency that this Autofill entry is presented, and
    the frequency that this Autofill entry is selected.
  </summary>
</histogram>

<histogram name="Autofill.MacAddressBook.AcceptedSuggestionIsFromAddressBook"
    enum="BooleanFromAddressBook">
  <obsolete>
    Deprecated as of 8/2015.
  </obsolete>
  <owner>erikchen@chromium.org</owner>
  <summary>
    This metric is emitted each time the user accepts an Autofill suggestion. It
    records whether the result is from the Address Book.
  </summary>
</histogram>

<histogram name="Autofill.MacAddressBook.AccessTime" units="ms">
  <obsolete>
    Deprecated as of 8/2015.
  </obsolete>
  <owner>erikchen@chromium.org</owner>
  <summary>
    The amount of time spent accessing the OSX Address Book the first time after
    Chrome was launched. If this time is larger than ~100ms, this it is likely
    that the user was shown a blocking, modal dialog.
  </summary>
</histogram>

<histogram name="Autofill.MacAddressBook.ContainedMeCard"
    enum="BooleanContainedMeCard">
  <obsolete>
    Deprecated as of 8/2015.
  </obsolete>
  <owner>erikchen@chromium.org</owner>
  <summary>
    After a Chrome is given access to the Mac Address Book, whether the Address
    Book contained a Me card.
  </summary>
</histogram>

<histogram name="Autofill.MacAddressBook.MeCard.HadAddress"
    enum="BooleanHadAddress">
  <obsolete>
    Deprecated as of 8/2015.
  </obsolete>
  <owner>erikchen@chromium.org</owner>
  <summary>
    When Chrome is given access to the Me Card of the Address Book, whether the
    card has an address that contained a street number and either a city or zip
    code.
  </summary>
</histogram>

<histogram name="Autofill.MacAddressBook.MeCard.HadEmail"
    enum="BooleanHadEmail">
  <obsolete>
    Deprecated as of 8/2015.
  </obsolete>
  <owner>erikchen@chromium.org</owner>
  <summary>
    When Chrome is given access to the Me Card of the Address Book, whether the
    card has an email.
  </summary>
</histogram>

<histogram name="Autofill.MacAddressBook.MeCard.HadName" enum="BooleanHadName">
  <obsolete>
    Deprecated as of 8/2015.
  </obsolete>
  <owner>erikchen@chromium.org</owner>
  <summary>
    When Chrome is given access to the Me Card of the Address Book, whether the
    card has a name.
  </summary>
</histogram>

<histogram name="Autofill.MacAddressBook.MeCard.HadPhoneNumber"
    enum="BooleanHadPhoneNumber">
  <obsolete>
    Deprecated as of 8/2015.
  </obsolete>
  <owner>erikchen@chromium.org</owner>
  <summary>
    When Chrome is given access to the Me Card of the Address Book, whether the
    card has a phone number.
  </summary>
</histogram>

<histogram name="Autofill.MacAddressBook.NumShowsBeforeSelected">
  <obsolete>
    Deprecated as of 8/2015.
  </obsolete>
  <owner>erikchen@chromium.org</owner>
  <summary>
    The number of times that the access Address Book prompt has been shown when
    the user selects the prompt.
  </summary>
</histogram>

<histogram name="Autofill.NumberOfEditedAutofilledFieldsAtSubmission"
    units="fields">
  <owner>mathp@chromium.org</owner>
  <summary>
    The number of autofilled fields that were subsequently edited prior to the
    form being submitted.
  </summary>
</histogram>

<histogram name="Autofill.PasswordFormQueryVolume"
    enum="PasswordFormQueryVolume">
  <owner>dvadym@chromium.org</owner>
  <owner>gcasto@chromium.org</owner>
  <obsolete>
    Deprecated 10/2015.
  </obsolete>
  <summary>
    Tracks the increased load on the Autofill server if the restriction on
    querying for password forms with fewer than 3 fields were omitted.
  </summary>
</histogram>

<histogram name="Autofill.PayloadCompressionRatio" units="%">
  <obsolete>
    Deprecated as of 1/2016, autofill payload compression was removed.
  </obsolete>
  <owner>mathp@chromium.org</owner>
  <summary>
    Compression ratio of the query and upload payload that are sent to the
    Autofill server. The payload is compressed using gzip.
  </summary>
</histogram>

<histogram name="Autofill.ProfileActionOnFormSubmitted"
    enum="AutofillProfileAction">
  <owner>sebsg@chromium.org</owner>
  <summary>
    The profile action that took place when a form was submitted.
  </summary>
</histogram>

<histogram name="AutoFill.ProfileCount">
  <obsolete>
    Deprecated as of 3/2011, replaced by Autofill.StoredProfileCount.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>The number of Autofill address profiles a user has.</summary>
</histogram>

<histogram name="AutoFill.Quality" enum="AutofillQuality">
  <obsolete>
    Deprecated as of 3/2011, replaced by Autofill.Quality.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>The quality of the AutoFill implementation.</summary>
</histogram>

<histogram name="Autofill.Quality" enum="AutofillQuality">
  <obsolete>
    Deprecated as of 2/2014 (M35), replaced by Autofill.UserHappiness.
  </obsolete>
  <owner>isherman@chromium.org</owner>
  <summary>The quality of the Autofill implementation.</summary>
</histogram>

<histogram name="Autofill.Quality.HeuristicType" enum="AutofillTypeQuality">
  <owner>isherman@chromium.org</owner>
  <summary>The quality of Autofill's heuristic field type detection.</summary>
</histogram>

<histogram name="Autofill.Quality.HeuristicType.ByFieldType"
    enum="AutofillTypeQualityByFieldType">
  <owner>isherman@chromium.org</owner>
  <summary>
    The quality of Autofill's heuristic field type detection, broken down by the
    specific field type.  Fields with multiple possible types (based on the
    stored Autofill data) are logged as having ambiguous type.
  </summary>
</histogram>

<histogram name="Autofill.Quality.PredictedType" enum="AutofillTypeQuality">
  <owner>isherman@chromium.org</owner>
  <summary>The overall quality of the Autofill field type predictions.</summary>
</histogram>

<histogram name="Autofill.Quality.PredictedType.ByFieldType"
    enum="AutofillTypeQualityByFieldType">
  <owner>isherman@chromium.org</owner>
  <summary>
    The overall quality of the Autofill field type predictions, broken down by
    the specific field type.  Fields with multiple possible types (based on the
    stored Autofill data) are logged as having ambiguous type.
  </summary>
</histogram>

<histogram name="Autofill.Quality.ServerType" enum="AutofillTypeQuality">
  <owner>isherman@chromium.org</owner>
  <summary>The quality of the Autofill server's field type detection.</summary>
</histogram>

<histogram name="Autofill.Quality.ServerType.ByFieldType"
    enum="AutofillTypeQualityByFieldType">
  <owner>isherman@chromium.org</owner>
  <summary>
    The quality of the Autofill server's field type detection, broken down by
    the specific field type.  Fields with multiple possible types (based on the
    stored Autofill data) are logged as having ambiguous type.
  </summary>
</histogram>

<histogram name="Autofill.SaveCreditCardPrompt"
    enum="AutofillSaveCreditCardPrompt">
  <owner>jdonnelly@chromium.org</owner>
  <summary>
    The relative frequency with which users accept or deny the Autofill save
    credit card prompt.
  </summary>
</histogram>

<histogram name="Autofill.ScanCreditCard.Completed" enum="BooleanCompleted">
  <owner>rouslan@chromium.org</owner>
  <summary>Whether a credit card scan was completed or cancelled.</summary>
</histogram>

<histogram name="Autofill.ScanCreditCard.Duration" units="ms">
  <owner>rouslan@chromium.org</owner>
  <summary>How long a credit card took to scan.</summary>
</histogram>

<histogram name="Autofill.ScanCreditCardPrompt"
    enum="AutofillScanCreditCardPrompt">
  <owner>estade@chromium.org</owner>
  <summary>Usage of the &quot;Scan card&quot; control item.</summary>
</histogram>

<histogram name="Autofill.ServerExperimentId" enum="AutofillExperimentId">
  <obsolete>
    Deprecated as of 6/2011, replaced by Autofill.ServerExperimentId.Query.
  </obsolete>
  <owner>isherman@chromium.org</owner>
  <summary>
    The experiment ID received in response to an Autofill server query.
  </summary>
</histogram>

<histogram name="Autofill.ServerExperimentId.Query" enum="AutofillExperimentId">
  <obsolete>
    Deprecated as of 2/2014 (M35).
  </obsolete>
  <owner>isherman@chromium.org</owner>
  <summary>
    The experiment ID received in response to an Autofill server query.
  </summary>
</histogram>

<histogram name="Autofill.ServerExperimentId.Upload"
    enum="AutofillExperimentId">
  <obsolete>
    Deprecated as of 2/2014 (M35).
  </obsolete>
  <owner>isherman@chromium.org</owner>
  <summary>
    The experiment ID received at the time of an Autofill upload.
  </summary>
</histogram>

<histogram name="AutoFill.ServerQueryResponse" enum="AutofillQueryResult">
  <obsolete>
    Deprecated as of 3/2011, replaced by Autofill.ServerQueryResponse.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>The usefulness of AutoFill server information.</summary>
</histogram>

<histogram name="Autofill.ServerQueryResponse" enum="AutofillQueryResult">
  <owner>isherman@chromium.org</owner>
  <summary>The usefulness of Autofill server information.</summary>
</histogram>

<histogram name="Autofill.ServerResponseHasDataForForm"
    enum="BooleanHadPredictions">
  <owner>mathp@chromium.org</owner>
  <summary>
    Tracks whether Autofill server had at least some prediction data for a given
    form at query response time.
  </summary>
</histogram>

<histogram name="Autofill.StoredLocalCreditCardCount">
  <owner>mathp@chromium.org</owner>
  <summary>
    The number of local credit cards a user has stored, measured at Chrome
    profile launch time.
  </summary>
</histogram>

<histogram name="Autofill.StoredProfileCount">
  <owner>isherman@chromium.org</owner>
  <summary>
    The number of Autofill addresses a user has stored, measured at launch time.
  </summary>
</histogram>

<histogram name="Autofill.StoredProfileCountAtAutofillableFormSubmission">
  <owner>mathp@chromium.org</owner>
  <summary>
    The number of Autofill addresses a user has stored, measured when an
    autofillable form is submitted.
  </summary>
</histogram>

<histogram name="Autofill.SuggestionAcceptedIndex" units="position">
  <owner>mathp@chromium.org</owner>
  <summary>The index of the accepted Autofill suggestion in the popup.</summary>
</histogram>

<histogram name="Autofill.SuggestionAcceptedIndex.Autocomplete"
    units="position">
  <owner>mathp@chromium.org</owner>
  <summary>
    The index of the accepted Autocomplete suggestion in the popup.
  </summary>
</histogram>

<histogram name="Autofill.Timing.DetermineHeuristicTypes" units="ms">
  <owner>kenjitoyama@chromium.org</owner>
  <summary>
    Number of milliseconds passed between the start and end of
    FormStructure::DetermineHeuristicTypes().
  </summary>
</histogram>

<histogram name="Autofill.Timing.ParseForm" units="ms">
  <owner>kenjitoyama@chromium.org</owner>
  <summary>
    Number of milliseconds passed between the start and end of parsing a single
    form.
  </summary>
</histogram>

<histogram name="Autofill.UnmaskPrompt.Duration" units="ms">
  <owner>waltercacau@chromium.org</owner>
  <summary>
    Duration of the interaction with the UnmaskPrompt since it was shown until
    it was closed. This prompt is triggered when a user selects a masked card in
    an autofill dropdown.
  </summary>
</histogram>

<histogram name="Autofill.UnmaskPrompt.Events" enum="AutofillUnmaskPromptEvent">
  <owner>waltercacau@chromium.org</owner>
  <summary>
    Events tracking the usage of the unmasking prompt. This prompt is triggered
    when a user selects a masked card in a autofill dropdown.
  </summary>
</histogram>

<histogram name="Autofill.UnmaskPrompt.GetRealPanDuration" units="ms">
  <owner>waltercacau@chromium.org</owner>
  <summary>
    Duration of the GetRealPan API call. This API call is triggered by the
    unmasking prompt when the user types information to verify his ownership of
    the card being fetched.
  </summary>
</histogram>

<histogram name="Autofill.UnmaskPrompt.GetRealPanResult"
    enum="AutofillGetRealPanResult">
  <owner>waltercacau@chromium.org</owner>
  <summary>
    Tracks the result of the GetRealPan API call. This API call is triggered by
    the unmasking prompt when the user types information to verify his ownership
    of the card being fetched.
  </summary>
</histogram>

<histogram name="Autofill.UnmaskPrompt.TimeBeforeAbandonUnmasking" units="ms">
  <owner>waltercacau@chromium.org</owner>
  <summary>
    Time the user waited before abandoning an unmasking operation. In such a
    scenario, the user is cancelling a pending unmasking operation (possibly
    because it is taking too long).  The time measured here corresponds to the
    time between the user clicking the &quot;Verify&quot; button and then
    clicking &quot;Cancel&quot;.
  </summary>
</histogram>

<histogram name="Autofill.UnmaskPrompt.UnmaskingDuration" units="ms">
  <owner>waltercacau@chromium.org</owner>
  <summary>
    Duration between the user clicking the Verify button within the unmasking
    prompt until we get a response back from the server. This prompt is
    triggered when a user selects a masked card in an autofill dropdown.
  </summary>
</histogram>

<histogram name="Autofill.UserHappiness" enum="AutofillUserHappiness">
  <owner>isherman@chromium.org</owner>
  <summary>
    Measures the frequency of various events in the Autofill user interaction
    flow.  By comparing frequencies, we can compute several interesting
    &quot;user happiness&quot; metrics.
  </summary>
</histogram>

<histogram name="BackgroundMode.BackgroundApplicationsCount">
  <owner>atwilson@chromium.org</owner>
  <owner>mvanouwerkerk@chromium.org</owner>
  <summary>
    The number of background applications (extensions) for a profile that were
    loaded after the profile was registered with the BackgroundModeManager.
  </summary>
</histogram>

<histogram name="BackgroundMode.BackgroundModeEnabledPrefChanged"
    enum="BooleanEnabled">
  <owner>mvanouwerkerk@chromium.org</owner>
  <summary>
    Logged if BackgroundModeManager is running and listening for pref changes,
    and the pref does indeed change. The new value is logged.
  </summary>
</histogram>

<histogram name="BackgroundMode.MenuItemClick" enum="BackgroundModeMenuItem">
  <owner>mvanouwerkerk@chromium.org</owner>
  <summary>
    Logged when an item in the system tray icon menu is clicked.
  </summary>
</histogram>

<histogram name="BackgroundMode.OnStartup.AutoLaunchState"
    enum="AutoLaunchState">
  <owner>gab@chromium.org</owner>
  <summary>
    Logged during BackgroundModeManager's initialization. Indicates the
    AutoLaunchState the current browser process was launched in.
  </summary>
</histogram>

<histogram name="BackgroundMode.OnStartup.IsBackgroundModePrefEnabled"
    enum="BooleanEnabled">
  <owner>gab@chromium.org</owner>
  <summary>
    Logged during BackgroundModeManager's initialization. Indicates the state of
    the kBackgroundModeEnabled pref on startup.
  </summary>
</histogram>

<histogram name="BackgroundSync.Event.BatchSize">
  <owner>iclelland@chromium.org</owner>
  <summary>
    Records the number of sync events which were fired in a batch. A batch is
    defined as the set of sync events dispatched at the same time by the
    BackgroundSyncManager. One-shots usually run individually (a batch of one),
    unless the device was offline and multiple are waiting for the device to go
    back online.
  </summary>
</histogram>

<histogram name="BackgroundSync.Event.OneShotResult" enum="BooleanSuccess">
  <owner>iclelland@chromium.org</owner>
  <obsolete>
    As of 10/2015 this has been replaced by
    BackgroundSync.Event.OneShotResultPattern.
  </obsolete>
  <summary>Records whether a one-shot sync event succeeded or failed.</summary>
</histogram>

<histogram name="BackgroundSync.Event.OneShotResultPattern"
    enum="BackgroundSyncResultPattern">
  <owner>jkarlin@chromium.org</owner>
  <summary>
    Records whether a periodic sync event succeeded or failed and whether the
    sync event finished in the foreground or background.
  </summary>
  <details>
    A sync event finished in the foreground if the associated Service Worker
    Registration has a client at the time that the event finished.
  </details>
</histogram>

<histogram name="BackgroundSync.Event.OneShotStartedInForeground"
    enum="BooleanInForeground">
  <owner>jkarlin@chromium.org</owner>
  <summary>
    Records whether a one-shot sync started firing in the foreground or
    background. Called shortly before the event is fired.
  </summary>
</histogram>

<histogram name="BackgroundSync.Event.PeriodicResult" enum="BooleanSuccess">
  <owner>iclelland@chromium.org</owner>
  <obsolete>
    As of 10/2015 this has been replaced by
    BackgroundSync.Event.PeriodicResultPattern.
  </obsolete>
  <summary>Records whether a periodic sync event succeeded or failed.</summary>
</histogram>

<histogram name="BackgroundSync.Event.PeriodicResultPattern"
    enum="BackgroundSyncResultPattern">
  <owner>jkarlin@chromium.org</owner>
  <obsolete>
    Stopped recording as of 1/2016.
  </obsolete>
  <summary>
    Records whether a one-shot sync event succeeded or failed and whether the
    sync event finished in the foreground or background.
  </summary>
  <details>
    A sync event finished in the foreground if the associated Service Worker
    Registration has a client at the time that the event finished.
  </details>
</histogram>

<histogram name="BackgroundSync.Event.PeriodicStartedInForeground"
    enum="BooleanInForeground">
  <owner>jkarlin@chromium.org</owner>
  <obsolete>
    Stopped recording as of 1/2016.
  </obsolete>
  <summary>
    Records whether a periodic sync event started firing in the foreground or
    background. Called shortly before the event is fired.
  </summary>
</histogram>

<histogram name="BackgroundSync.Event.Time" units="ms">
  <owner>iclelland@chromium.org</owner>
  <summary>
    Time taken to execute a batch of sync events. A batch is defined as the set
    of sync events dispatched at the same time by the BackgroundSyncManager.
    Periodic syncs often run in a batch. One-shots usually run individually (a
    batch of one), unless the device was offline and multiple are waiting for
    the device to go back online.
  </summary>
</histogram>

<histogram name="BackgroundSync.LaunchTask.CancelSuccess" enum="BooleanSuccess">
  <owner>iclelland@chromium.org</owner>
  <summary>
    Records the result of attempting to cancel a future browser launch using the
    GCM Network Manager on Android.
  </summary>
</histogram>

<histogram name="BackgroundSync.LaunchTask.PlayServicesAvailable"
    enum="Boolean">
  <owner>iclelland@chromium.org</owner>
  <summary>
    Records whether Google Play Services is available to the Background Sync
    system on Android, for scheduling future sync events when the browser is not
    running. This will be logged at most once per run.
  </summary>
</histogram>

<histogram name="BackgroundSync.LaunchTask.ScheduleSuccess"
    enum="BooleanSuccess">
  <owner>iclelland@chromium.org</owner>
  <summary>
    Records the result of attempting to schedule a future browser launch using
    the GCM Network Manager on Android.
  </summary>
</histogram>

<histogram name="BackgroundSync.NetworkObserver.HasPermission" enum="Boolean">
  <owner>iclelland@chromium.org</owner>
  <summary>
    Records whether the browser has sufficient permissions to create a
    BackgroundSyncNetworkObserver object on Android, at the point when it tries
    to create it. This should never be false, but is being tracked in order to
    help resolve crbug.com/545473.
  </summary>
</histogram>

<histogram name="BackgroundSync.Registration.OneShot"
    enum="BackgroundSyncStatus">
  <owner>iclelland@chromium.org</owner>
  <summary>
    Records the result of attempting to register a one-shot sync.
  </summary>
</histogram>

<histogram name="BackgroundSync.Registration.OneShot.CouldFire"
    enum="BooleanCouldFireImmediately">
  <owner>iclelland@chromium.org</owner>
  <summary>
    Records the result of attempting to register a one-shot sync in a situation
    where the sync could fire immediately.
  </summary>
</histogram>

<histogram name="BackgroundSync.Registration.OneShot.IsDuplicate"
    enum="BooleanRegistrationIsDuplicate">
  <owner>iclelland@chromium.org</owner>
  <summary>
    Records whether a one-shot sync registration exactly duplicates an existing
    registered sync.
  </summary>
</histogram>

<histogram name="BackgroundSync.Registration.Periodic"
    enum="BackgroundSyncStatus">
  <owner>iclelland@chromium.org</owner>
  <obsolete>
    Stopped recording as of 1/2016.
  </obsolete>
  <summary>
    Records the result of attempting to register a periodic sync.
  </summary>
</histogram>

<histogram name="BackgroundSync.Registration.Periodic.IsDuplicate"
    enum="BooleanRegistrationIsDuplicate">
  <owner>iclelland@chromium.org</owner>
  <obsolete>
    Stopped recording as of 1/2016.
  </obsolete>
  <summary>
    Records whether a periodic sync registration exactly duplicates an existing
    registered sync.
  </summary>
</histogram>

<histogram name="BackgroundSync.Unregistration.OneShot"
    enum="BackgroundSyncStatus">
  <owner>iclelland@chromium.org</owner>
  <obsolete>
    Stopped recording as of 2/2016.
  </obsolete>
  <summary>
    Records the result of attempting to unregister a one-shot sync.
  </summary>
</histogram>

<histogram name="BackgroundSync.Unregistration.Periodic"
    enum="BackgroundSyncStatus">
  <owner>iclelland@chromium.org</owner>
  <obsolete>
    Stopped recording as of 1/2016.
  </obsolete>
  <summary>
    Records the result of attempting to unregister a periodic sync.
  </summary>
</histogram>

<histogram name="BatteryStatus.NumberBatteriesLinux"
    enum="BatteryStatusNumberBatteries">
  <owner>timvolodine@chromium.org</owner>
  <summary>
    Number of batteries reported by the UPower service on Linux at the start of
    the Battery Status API.
  </summary>
</histogram>

<histogram name="BatteryStatus.NumberBatteriesMac"
    enum="BatteryStatusNumberBatteries">
  <owner>timvolodine@chromium.org</owner>
  <summary>
    Number of internal batteries reported by MacOS at the start of the Battery
    Status API.
  </summary>
</histogram>

<histogram name="BatteryStatus.NumberBatteriesWin"
    enum="BatteryStatusNumberBatteriesWin">
  <owner>timvolodine@chromium.org</owner>
  <summary>
    Number of batteries reported by Windows at the start of the Battery Status
    API.
  </summary>
</histogram>

<histogram name="BatteryStatus.StartAndroid" enum="BooleanSuccess">
  <owner>timvolodine@chromium.org</owner>
  <summary>
    Whether the Battery Status API was successfully started up on Android.
  </summary>
</histogram>

<histogram name="Blacklist.Blocked" enum="DllHash">
  <owner>csharp@chromium.org</owner>
  <summary>
    Records the name hashes of all the dlls that are blocked from the browser
    process.
  </summary>
</histogram>

<histogram name="Blacklist.PatchedInRenderer" enum="BooleanHit">
  <obsolete>
    Removed at 2015 July.
  </obsolete>
  <owner>csharp@chromium.org</owner>
  <summary>
    Counts the number of times a renderer process is started with the browser
    blacklist patch. This should never be hit.
  </summary>
</histogram>

<histogram name="Blacklist.RetryAttempts.Success">
  <owner>csharp@chromium.org</owner>
  <owner>krstnmnlsn@chromium.org</owner>
  <summary>
    Records the number of attempts needed before the blacklist is properly set
    up. This is logged immediately after a successful setup.
  </summary>
</histogram>

<histogram name="Blacklist.Setup" enum="BlacklistSetup">
  <owner>csharp@chromium.org</owner>
  <summary>
    Records the successes and failures when running the browser blacklist setup
    code. Used to determine if the blacklist is working as intended during
    startup (since the blacklist runs before crash reporting is set up). This
    only occurs on Windows.
  </summary>
</histogram>

<histogram name="Blink.Compositing.UpdateTime" units="microseconds">
  <owner>paint-dev@chromium.org</owner>
  <summary>
    Time spent updating compositing in the Blink document lifecyce.
  </summary>
</histogram>

<histogram name="Blink.DecodedImage.Orientation" enum="DecodedImageOrientation">
  <owner>rob.buis@samsung.org</owner>
  <summary>Image orientation inferred during decode.</summary>
</histogram>

<histogram name="Blink.DecodedImageType" enum="DecodedImageType">
  <owner>urvang@chromium.org</owner>
  <summary>Image codec inferred during decode.</summary>
</histogram>

<histogram name="Blink.Fonts.ShapeCache">
  <owner>eae@chromium.org</owner>
  <summary>
    Total number of entries in all Blink ShapeCache instances. The value is
    reported each time the FontCache::purge() method is called.
  </summary>
</histogram>

<histogram name="Blink.MediaDocument.DownloadButton"
    enum="MediaDocumentDownloadButtonType">
  <owner>qinmin@chromium.org</owner>
  <summary>
    Records how the download button on the MediaDocument is used.
  </summary>
</histogram>

<histogram name="Blink.MediaElement.Autoplay" enum="MediaElementAutoPlay">
  <owner>oysteine@chromium.org</owner>
  <summary>
    Records user observation and interaction with Media HTML elements that
    feature autoplay, either script-controlled or through the attribute.
  </summary>
</histogram>

<histogram name="Blink.MemoryCache.RevalidationPolicy"
    enum="RevalidationPolicy">
  <owner>hiroshige@chromium.org</owner>
  <summary>
    RevalidationPolicy used for non-preloading requests for each resource type.
    https://crbug.com/579496
  </summary>
</histogram>

<histogram name="Blink.MemoryCache.RevalidationPolicy.Dead"
    enum="RevalidationPolicy">
  <owner>hiroshige@chromium.org</owner>
  <summary>
    RevalidationPolicy used for requests that hit Resource only referenced from
    MemoryCache for each resource type. https://crbug.com/579496 Requests
    counted by this are also counted by Blink.MemoryCache.RevalidationPolicy or
    Blink.MemoryCache.RevalidationPolicy.Preload.
  </summary>
</histogram>

<histogram name="Blink.MemoryCache.RevalidationPolicy.Preload"
    enum="RevalidationPolicy">
  <owner>hiroshige@chromium.org</owner>
  <summary>
    RevalidationPolicy used for preloading requests for each resource type.
    https://crbug.com/579496
  </summary>
</histogram>

<histogram name="Blink.Paint.UpdateTime" units="microseconds">
  <owner>paint-dev@chromium.org</owner>
  <summary>Time spent updating paint in the Blink document lifecycle.</summary>
</histogram>

<histogram name="Blink.PaintInvalidation.UpdateTime" units="microseconds">
  <owner>paint-dev@chromium.org</owner>
  <summary>
    Time spent updating paint invalidation in the Blink document lifecycle.
  </summary>
</histogram>

<histogram name="Blink.RestoredCachedStyleSheet"
    enum="RestoredCachedStyleSheet">
  <obsolete>
    Deprecated 01/2016 and replaced by Blink.RestoredCachedStyleSheet2
  </obsolete>
  <owner>kouhei@chromium.org</owner>
  <summary>
    On each link stylesheet tag resolve, record whether a Blink MemoryCached
    StyleSheetContents was reused.
  </summary>
</histogram>

<histogram name="Blink.RestoredCachedStyleSheet2" enum="StyleSheetCacheStatus">
  <owner>kouhei@chromium.org</owner>
  <summary>
    On each link stylesheet tag resolve, record which cache Blink hit.
  </summary>
</histogram>

<histogram name="Blink.ScanPendingActivityDuration" units="ms">
  <owner>haraken@chromium.org</owner>
  <summary>
    Duration of time taken to scan pending activities of all V8 wrappers in a
    worker thread.
  </summary>
</histogram>

<histogram name="Blink.StyleAndLayout.UpdateTime" units="microseconds">
  <owner>layout-dev@chromium.org</owner>
  <summary>
    Time spent updating style and layout in the Blink document lifecycle.
  </summary>
</histogram>

<histogram name="Blink.XHR.setRequestHeader.HeaderValueCategoryInRFC7230"
    enum="XMLHttpRequestHeaderValueCategoryInRFC7230">
  <owner>hiroshige@chromium.org</owner>
  <summary>
    The count of XMLHttpRequest.setRequestHeader() calls where header values are
    invalid/valid but affected by normalization/valid in RFC 7230.
    https://crbug.com/455099.
  </summary>
</histogram>

<histogram name="BlinkGC.CollectGarbage" units="ms">
  <owner>haraken@chromium.org</owner>
  <summary>Duration of time taken to run Heap::collectGarbage().</summary>
</histogram>

<histogram name="BlinkGC.CollectionRate" units="%">
  <owner>haraken@chromium.org</owner>
  <summary>
    The percentage of objects that have been collected by a Blink GC. 0 is
    passed if there were no objects when a Blink GC started.
  </summary>
</histogram>

<histogram name="BlinkGC.CommittedSize" units="MB">
  <owner>haraken@chromium.org</owner>
  <summary>
    The committed memory size in Blink GC. The value is reported when we see the
    highest memory usage we've ever seen in the renderer process.
  </summary>
</histogram>

<histogram name="BlinkGC.CompleteSweep" units="ms">
  <owner>haraken@chromium.org</owner>
  <summary>Duration of time taken to run ThreadState::completeSweep().</summary>
</histogram>

<histogram name="BlinkGC.GCReason" enum="GCReason">
  <owner>haraken@chromium.org</owner>
  <summary>A type of Blink GC.</summary>
</histogram>

<histogram name="BlinkGC.ObjectSizeAfterGC" units="KB">
  <owner>haraken@chromium.org</owner>
  <summary>
    The size of allocated objects just after Blink GC is triggered.
  </summary>
</histogram>

<histogram name="BlinkGC.ObjectSizeBeforeGC" units="KB">
  <owner>haraken@chromium.org</owner>
  <summary>
    The size of allocated objects just before Blink GC is triggered.
  </summary>
</histogram>

<histogram name="BlinkGC.PerformPendingSweep" units="ms">
  <obsolete>
    Removed at 2014 Jan.
  </obsolete>
  <owner>haraken@chromium.org</owner>
  <summary>
    Duration of time taken to run ThreadState::performPendingSweep().
  </summary>
</histogram>

<histogram name="BlinkGC.TimeForGlobalWeakProcessing" units="ms">
  <owner>haraken@chromium.org</owner>
  <summary>
    Duration of time taken to run global weak processing of Blink GC.
  </summary>
</histogram>

<histogram name="BlinkGC.TimeForInvokingPreFinalizers" units="ms">
  <owner>haraken@chromium.org</owner>
  <summary>
    Duration of time taken to run ThreadState::invokePreFinalizers().
  </summary>
</histogram>

<histogram name="BlinkGC.TimeForStoppingThreads" units="ms">
  <owner>haraken@chromium.org</owner>
  <summary>
    Duration of time taken to stop all Blink threads before starting a GC.
  </summary>
</histogram>

<histogram name="BlinkGC.TimeForSweepingAllObjects" units="ms">
  <owner>haraken@chromium.org</owner>
  <summary>Accumulated time taken to sweep all objects.</summary>
</histogram>

<histogram name="BlinkGC.TimeForThreadLocalWeakProcessing" units="ms">
  <owner>haraken@chromium.org</owner>
  <summary>Duration of time taken to run thread-local weak processing.</summary>
</histogram>

<histogram name="BlinkGC.TotalAllocatedSpace" units="KB">
  <owner>haraken@chromium.org</owner>
  <summary>
    The total size of allocated space in OS when a Blink GC is triggered.
  </summary>
</histogram>

<histogram name="BlinkGC.TotalObjectSpace" units="KB">
  <owner>haraken@chromium.org</owner>
  <summary>
    The total size of object space in all threads when a Blink GC is triggered.
  </summary>
</histogram>

<histogram name="Bluetooth.Android.GATTConnection.Disconnected.Result"
    enum="AndroidGATTConnectionErrorCodes">
  <owner>jyasskin@chromium.org</owner>
  <owner>ortuno@chromium.org</owner>
  <owner>scheib@chromium.org</owner>
  <summary>
    Disconnected GATT connection status codes. Used to better understand errors
    seen in Android.
  </summary>
</histogram>

<histogram name="Bluetooth.Android.GATTConnection.Failure.Result"
    enum="AndroidGATTConnectionErrorCodes">
  <owner>jyasskin@chromium.org</owner>
  <owner>ortuno@chromium.org</owner>
  <owner>scheib@chromium.org</owner>
  <summary>
    Failed GATT connection error codes. Used to better understand errors seen in
    Android.
  </summary>
</histogram>

<histogram name="Bluetooth.Android.GATTConnection.Success.Result"
    enum="AndroidGATTConnectionErrorCodes">
  <owner>jyasskin@chromium.org</owner>
  <owner>ortuno@chromium.org</owner>
  <owner>scheib@chromium.org</owner>
  <summary>
    Successful GATT connection result codes. Used to better understand Android
    results.
  </summary>
</histogram>

<histogram name="Bluetooth.ConnectedDeviceCount" units="devices">
  <owner>keybuk@chromium.org</owner>
  <summary>
    Counts the number of simulataneously connected Bluetooth devices. Used to
    direct testing efforts, and by our UI team to determine appropriate UI
    sizes.
  </summary>
</histogram>

<histogram name="Bluetooth.DiscoverySession.Start.Outcome"
    enum="BluetoothDiscoveryOutcomes">
  <owner>jyasskin@chromium.org</owner>
  <owner>ortuno@chromium.org</owner>
  <owner>scheib@chromium.org</owner>
  <summary>
    Records the outcome of calls to BluetoothAdapter::StartDiscoverySession.
    Used to prioritize efforts to fix failures of this function.
  </summary>
</histogram>

<histogram name="Bluetooth.DiscoverySession.Stop.Outcome"
    enum="BluetoothDiscoveryOutcomes">
  <owner>jyasskin@chromium.org</owner>
  <owner>ortuno@chromium.org</owner>
  <owner>scheib@chromium.org</owner>
  <summary>
    Records the outcome of calls to BluetoothDiscoverySession::Stop. Used to
    prioritize efforts to fix failures of this function.
  </summary>
</histogram>

<histogram name="Bluetooth.GATTErrors" enum="BluetoothGATTErrors">
  <owner>jyasskin@chromium.org</owner>
  <owner>ortuno@chromium.org</owner>
  <owner>scheib@chromium.org</owner>
  <obsolete>
    As of 08/2015 this has been replaced by
    Bluetooth.Web.Characteristic.ReadValue and
    Bluetooth.Web.Characteristic.WriteValue.
  </obsolete>
  <summary>
    Records how many times each GATT Error has occured. The results will be used
    to determine how common this errors are and if we need to provide better
    error messages to the users.
  </summary>
</histogram>

<histogram name="Bluetooth.PairingMethod" enum="BluetoothPairingMethod">
  <owner>keybuk@chromium.org</owner>
  <summary>
    Records the method used to pair each Bluetooth Device. Used to direct our
    testing efforts.
  </summary>
</histogram>

<histogram name="Bluetooth.PairingResult" enum="BluetoothPairingResult">
  <owner>keybuk@chromium.org</owner>
  <summary>
    Records the result of pairing each Bluetooth Device. Used to understand
    whether we are having significant problems with Bluetooth pairing and seeing
    errors more commonly than we should.
  </summary>
</histogram>

<histogram name="Bluetooth.RequestDevice.Outcome"
    enum="WebBluetoothRequestDeviceOutcome">
  <obsolete>
    Deprecated 08/2015 and replaced by Bluetooth.Web.RequestDevice.Outcome.
  </obsolete>
  <owner>jyasskin@chromium.org</owner>
  <owner>ortuno@chromium.org</owner>
  <owner>scheib@chromium.org</owner>
  <summary>
    Records the result of a navigator.bluetooth.requestDevice() call. Used to
    understand what errors developers are getting so we can target efforts
    toward the most common ones.
  </summary>
</histogram>

<histogram name="Bluetooth.Web.Blacklist.ParsedNonEmptyString"
    enum="BooleanSuccess">
  <owner>jyasskin@chromium.org</owner>
  <owner>ortuno@chromium.org</owner>
  <owner>scheib@chromium.org</owner>
  <summary>
    Records the result of BluetoothBlacklist::Add parsing a non-empty string.
    These strings will be updated dynamically by a server, and this histogram
    provides feedback that parsing is functioning correctly on clients.

    False values are BAD, a blacklist is failing to be applied correctly.
  </summary>
</histogram>

<histogram name="Bluetooth.Web.Characteristic.ReadValue.Outcome"
    enum="WebBluetoothGATTOperationOutcome">
  <owner>jyasskin@chromium.org</owner>
  <owner>ortuno@chromium.org</owner>
  <owner>scheib@chromium.org</owner>
  <summary>
    Records the outcome of a call to characteristic.readValue(). Used to know
    what types of errors users are seeing. The results will be used to determine
    how common these errors are and if we need to provide better error messages
    to the users.
  </summary>
</histogram>

<histogram name="Bluetooth.Web.Characteristic.StartNotifications.Outcome"
    enum="WebBluetoothGATTOperationOutcome">
  <owner>jyasskin@chromium.org</owner>
  <owner>ortuno@chromium.org</owner>
  <owner>scheib@chromium.org</owner>
  <summary>
    Records the outcome of a call to characteristic.startNofications(). Used to
    know what types of errors users are seeing. The results will be used to
    determine how common these errors are and if we need to provide better error
    messages to the users.
  </summary>
</histogram>

<histogram name="Bluetooth.Web.Characteristic.WriteValue.Outcome"
    enum="WebBluetoothGATTOperationOutcome">
  <owner>jyasskin@chromium.org</owner>
  <owner>ortuno@chromium.org</owner>
  <owner>scheib@chromium.org</owner>
  <summary>
    Records the outcome of a call to characteristic.writeValue(). Used to know
    what types of errors users are seeing. The results will be used to determine
    how common these errors are and if we need to provide better error messages
    to the users.
  </summary>
</histogram>

<histogram name="Bluetooth.Web.ConnectGATT.Outcome"
    enum="WebBluetoothConnectGATTOutcome">
  <owner>jyasskin@chromium.org</owner>
  <owner>ortuno@chromium.org</owner>
  <owner>scheib@chromium.org</owner>
  <summary>
    Records the result of a device.gatt.connect() call. Used to understand what
    errors developers are getting so we can target efforts toward the most
    common ones.
  </summary>
</histogram>

<histogram name="Bluetooth.Web.ConnectGATT.TimeFailed" units="ms">
  <owner>jyasskin@chromium.org</owner>
  <owner>ortuno@chromium.org</owner>
  <owner>scheib@chromium.org</owner>
  <summary>
    Records how long it takes for a connection attempt to fail. Use to let
    developers know how to better wait for and handle connection errors.
  </summary>
</histogram>

<histogram name="Bluetooth.Web.ConnectGATT.TimeSuccess" units="ms">
  <owner>jyasskin@chromium.org</owner>
  <owner>ortuno@chromium.org</owner>
  <owner>scheib@chromium.org</owner>
  <summary>
    Records how long it takes for a device to successfully connect. Use to let
    developers know how long it should take to connect to a BLE device.
  </summary>
</histogram>

<histogram name="Bluetooth.Web.FunctionCall.Count" enum="WebBluetoothFunction">
  <owner>jyasskin@chromium.org</owner>
  <owner>ortuno@chromium.org</owner>
  <owner>scheib@chromium.org</owner>
  <summary>
    Counts the number of times each call to a WebBluetooth function is done.
  </summary>
</histogram>

<histogram name="Bluetooth.Web.GetCharacteristic.Characteristic"
    enum="GATTCharacteristicHash">
  <owner>jyasskin@chromium.org</owner>
  <owner>ortuno@chromium.org</owner>
  <owner>scheib@chromium.org</owner>
  <summary>
    Records the UUIDs used when getting a characteristic. The recorded value is
    a 31-bit hash of the UUID. Used to know what types of characteristics to
    target when building libraries that use the Web Bluetooth API.
  </summary>
</histogram>

<histogram name="Bluetooth.Web.GetCharacteristic.Outcome"
    enum="WebBluetoothGetCharacteristicOutcome">
  <owner>jyasskin@chromium.org</owner>
  <owner>ortuno@chromium.org</owner>
  <owner>scheib@chromium.org</owner>
  <summary>
    Records the outcome of a call to getCharacteristic(). Used to understand
    what errors developers are getting so we can target efforts toward the most
    common ones.
  </summary>
</histogram>

<histogram name="Bluetooth.Web.GetCharacteristics.Characteristic"
    enum="GATTCharacteristicHash">
  <owner>jyasskin@chromium.org</owner>
  <owner>ortuno@chromium.org</owner>
  <owner>scheib@chromium.org</owner>
  <summary>
    Records the UUIDs used when getting characteristics. The recorded value is a
    31-bit hash of the UUID. Used to know what types of characteristics to
    target when building libraries that use the Web Bluetooth API.
  </summary>
</histogram>

<histogram name="Bluetooth.Web.GetCharacteristics.Outcome"
    enum="WebBluetoothGetCharacteristicOutcome">
  <owner>jyasskin@chromium.org</owner>
  <owner>ortuno@chromium.org</owner>
  <owner>scheib@chromium.org</owner>
  <summary>
    Records the outcome of a call to getCharacteristics(). Used to understand
    what errors developers are getting so we can target efforts toward the most
    common ones.
  </summary>
</histogram>

<histogram name="Bluetooth.Web.GetPrimaryService.Outcome"
    enum="WebBluetoothGetPrimaryServiceOutcome">
  <owner>jyasskin@chromium.org</owner>
  <owner>ortuno@chromium.org</owner>
  <owner>scheib@chromium.org</owner>
  <summary>
    Records the result of a GATTServer.getPrimaryService() call. Used to
    understand what errors developers are getting so we can target efforts
    toward the most common ones.
  </summary>
</histogram>

<histogram name="Bluetooth.Web.GetPrimaryService.Services"
    enum="GATTServiceHash">
  <owner>jyasskin@chromium.org</owner>
  <owner>ortuno@chromium.org</owner>
  <owner>scheib@chromium.org</owner>
  <summary>
    Records what GATT Services are used when connected. The record value is a
    31-bit hash of the Service UUID. This will help us know if we should build
    an API for specific services rather than a general Bluetooth API.
  </summary>
</histogram>

<histogram name="Bluetooth.Web.RequestDevice.Filters.Count" units="filters">
  <owner>jyasskin@chromium.org</owner>
  <owner>ortuno@chromium.org</owner>
  <owner>scheib@chromium.org</owner>
  <summary>
    Records how many filters are used when scanning. These results will help us
    better understand the uses of the API and make changes according to
    developers' behavior.
  </summary>
</histogram>

<histogram name="Bluetooth.Web.RequestDevice.Filters.Services"
    enum="GATTServiceHash">
  <owner>jyasskin@chromium.org</owner>
  <owner>ortuno@chromium.org</owner>
  <owner>scheib@chromium.org</owner>
  <summary>
    Records a 31-bit hash of the GATT Service UUIDs used when scanning. This
    will help us know if we should build an API for specific services rather
    than a general Bluetooth API.
  </summary>
</histogram>

<histogram name="Bluetooth.Web.RequestDevice.FilterSize" units="services">
  <owner>jyasskin@chromium.org</owner>
  <owner>ortuno@chromium.org</owner>
  <owner>scheib@chromium.org</owner>
  <summary>
    Records how many services are used in a filter. These results will help us
    better understand the uses of the API and make changes according to
    developers' behavior.
  </summary>
</histogram>

<histogram name="Bluetooth.Web.RequestDevice.OptionalServices.Count"
    units="filters">
  <owner>jyasskin@chromium.org</owner>
  <owner>ortuno@chromium.org</owner>
  <owner>scheib@chromium.org</owner>
  <summary>
    Records how many optional services are used when scanning. These results
    will help us better understand the uses of the API and make changes
    according to developers' behavior.
  </summary>
</histogram>

<histogram name="Bluetooth.Web.RequestDevice.OptionalServices.Services"
    units="GATTServiceHash">
  <owner>jyasskin@chromium.org</owner>
  <owner>ortuno@chromium.org</owner>
  <owner>scheib@chromium.org</owner>
  <summary>
    Records what optional services are used. The recorded value is a 31-bit hash
    of the Service UUID. These results will help us better understand the uses
    of the API and make changes according to developers' behavior.
  </summary>
</histogram>

<histogram name="Bluetooth.Web.RequestDevice.Outcome"
    enum="WebBluetoothRequestDeviceOutcome">
  <owner>jyasskin@chromium.org</owner>
  <owner>ortuno@chromium.org</owner>
  <owner>scheib@chromium.org</owner>
  <summary>
    Records the result of a navigator.bluetooth.requestDevice() call. Used to
    understand what errors developers are getting so we can target efforts
    toward the most common ones.
  </summary>
</histogram>

<histogram name="Bluetooth.Web.RequestDevice.UnionOfServices.Count"
    units="services">
  <owner>jyasskin@chromium.org</owner>
  <owner>ortuno@chromium.org</owner>
  <owner>scheib@chromium.org</owner>
  <summary>
    Records how many services are used when scanning. This results will help us
    better understand the uses of the API and make changes according to
    developers' behavior.
  </summary>
</histogram>

<histogram name="Bookmarks.EntryPoint" enum="BookmarksEntryPoint">
  <owner>ianwen@chromium.org</owner>
  <summary>How users add a new bookmark.</summary>
</histogram>

<histogram name="Bookmarks.LaunchDepth">
  <owner>yfriedman@chromium.org</owner>
  <summary>
    Logs the depth of the bookmark in the bookmark tree hierarchy every time a
    bookmark is launched. Depth indicates how many levels below a permanent
    bookmark folder the bookmark was found in (e.g. a bookmark immediately in
    the bookmark bar has depth 1).
  </summary>
</histogram>

<histogram name="Bookmarks.LaunchLocation" enum="BookmarkLaunchLocation">
  <owner>ianwen@chromium.org</owner>
  <summary>Logs a UI location from which a bookmark is launched.</summary>
</histogram>

<histogram name="Bookmarks.OnFaviconsChangedIconURL" enum="BooleanHit">
  <owner>pkotwicz@chromium.org</owner>
  <summary>
    Logs how frequently BookmarkModel::OnFaviconsChanged() is called with a
    non-empty |icon_url| to determine whether BookmarkNodes should be cached
    based on their favicon URLs (e.g. http://www.google.com/favicon.ico) in
    addition to their page URLs (e.g. http://www.google.com). OnFaviconChanged()
    is expected to be called less than 10 times per user per day with a
    non-empty |icon_url|.
  </summary>
</histogram>

<histogram name="Bookmarks.OpenAction" enum="BookmarksOpenAction">
  <obsolete>
    Deprecated as of 1/2016.
  </obsolete>
  <owner>kkimlabs@chromium.org</owner>
  <summary>
    Logs how user is opening a bookmark on Android. For example, user can long
    press and select &quot;Open in a new tab&quot; or &quot;Open in incognito
    tab&quot;.
  </summary>
</histogram>

<histogram name="BrotliFilter.CompressionPercent" units="%">
  <owner>eustas@chromium.org</owner>
  <summary>Compressed/Decompressed size ratio.</summary>
</histogram>

<histogram name="BrotliFilter.Status" enum="BrotliFilterDecodingStatus">
  <owner>eustas@chromium.org</owner>
  <summary>The final state of BrotliFilter.</summary>
</histogram>

<histogram name="BrotliFilter.UsedMemoryKB" units="KiB">
  <owner>eustas@chromium.org</owner>
  <summary>Maximal amount of memory allocated by decoder.</summary>
</histogram>

<histogram name="BrowserRenderProcessHost.ChildCrashes" enum="RendererType">
  <owner>wfh@chromium.org</owner>
  <summary>Count of renderer process crashes grouped by type.</summary>
</histogram>

<histogram name="BrowserRenderProcessHost.ChildKills" enum="RendererType">
  <owner>wfh@chromium.org</owner>
  <summary>Count of renderer process kills grouped by type.</summary>
</histogram>

<histogram name="BrowserRenderProcessHost.ChildKills.OOM" enum="RendererType">
  <owner>oshima@chromium.org</owner>
  <summary>
    Out of BrowserRenderProcessHost.ChildKills, numer of kills due to SIGKILL,
    which is a strong signal of out of memory on ChromeOS, grouped by renderer
    type.
  </summary>
</histogram>

<histogram name="BrowserRenderProcessHost.ChildLaunchFailureCodes"
    enum="LaunchErrorCodes">
  <owner>wfh@chromium.org</owner>
  <summary>
    The launch error codes for failed renderer process launches.
  </summary>
</histogram>

<histogram name="BrowserRenderProcessHost.ChildLaunchFailures"
    enum="RendererType">
  <owner>wfh@chromium.org</owner>
  <summary>Count of renderer process launch failures grouped by type.</summary>
</histogram>

<histogram name="BrowserRenderProcessHost.DisconnectedAlive"
    enum="RendererType">
  <owner>wfh@chromium.org</owner>
  <summary>
    Count of renderer process crashes that we miscounted because we took the
    exit code too early. Grouped by type.
  </summary>
</histogram>

<histogram name="Bubbles.Close.Accepted" enum="BubbleType">
  <owner>hcarmona@chromium.org</owner>
  <summary>An open bubble was closed because the user accepted it.</summary>
</histogram>

<histogram name="Bubbles.Close.Canceled" enum="BubbleType">
  <owner>hcarmona@chromium.org</owner>
  <summary>
    An open bubble was closed because the user didn't accept it.
  </summary>
</histogram>

<histogram name="Bubbles.Close.FocusLost" enum="BubbleType">
  <owner>hcarmona@chromium.org</owner>
  <summary>An open bubble was closed because of a focus change.</summary>
</histogram>

<histogram name="Bubbles.Close.Forced" enum="BubbleType">
  <owner>hcarmona@chromium.org</owner>
  <summary>An open bubble was forced to close.</summary>
</histogram>

<histogram name="Bubbles.Close.FrameDestroyed" enum="BubbleType">
  <owner>hcarmona@chromium.org</owner>
  <summary>An open bubble was dismissed because a frame was destroyed.</summary>
</histogram>

<histogram name="Bubbles.Close.FullscreenToggled" enum="BubbleType">
  <owner>hcarmona@chromium.org</owner>
  <summary>
    An open bubble was dismissed because fullscreen was toggled.
  </summary>
</histogram>

<histogram name="Bubbles.Close.Navigated" enum="BubbleType">
  <owner>hcarmona@chromium.org</owner>
  <summary>
    An open bubble was dismissed because the page was navigated.
  </summary>
</histogram>

<histogram name="Bubbles.Close.TabDetached" enum="BubbleType">
  <owner>hcarmona@chromium.org</owner>
  <summary>An open bubble was closed because a tab was detached.</summary>
</histogram>

<histogram name="Bubbles.Close.TabSwitched" enum="BubbleType">
  <owner>hcarmona@chromium.org</owner>
  <summary>An open bubble was closed because a tab was switched.</summary>
</histogram>

<histogram name="Bubbles.Close.UserDismissed" enum="BubbleType">
  <owner>hcarmona@chromium.org</owner>
  <summary>
    An open bubble was dismissed by the user without making a decission.
  </summary>
</histogram>

<histogram name="Bubbles.DisplayTime.All" units="ms">
  <owner>hcarmona@chromium.org</owner>
  <summary>
    Log the amount of time any bubble was visible. Only bubbles that are shown
    will have a visible time.
  </summary>
</histogram>

<histogram name="Bubbles.NeverShown" enum="BubbleType">
  <owner>hcarmona@chromium.org</owner>
  <summary>A bubble was given to the bubble manager but not shown.</summary>
</histogram>

<histogram name="Canvas.ContextType" enum="CanvasContextType">
  <owner>junov@chromium.org</owner>
  <owner>kbr@chromium.org</owner>
  <summary>
    Records the context type names used to create canvas rendering contexts.
  </summary>
</histogram>

<histogram name="Canvas.DisplayListFallbackReason"
    enum="CanvasDisplayListFallbackReason">
  <owner>junov@chromium.org</owner>
  <summary>
    The reasons why a canvas initially set to display list mode had to fall back
    to direct rasterization mode.
  </summary>
</histogram>

<histogram name="Canvas.GPUAccelerated2DCanvasDisableDeferralReason"
    enum="CanvasGPUAccelerated2DCanvasDisableDeferralReason">
  <owner>junov@chromium.org</owner>
  <summary>
    The reasons why a GPU accelerated canvas stopped deferring its rendering
    operations.
  </summary>
</histogram>

<histogram name="Canvas.HibernationEvents" enum="CanvasHibernationEvent">
  <owner>junov@chromium.org</owner>
  <summary>
    Records the occurrence of events related to 2D canvas GPU resource
    hibernation.
  </summary>
</histogram>

<histogram name="Canvas.RequestedImageMimeTypes" enum="RequestedImageMimeType">
  <owner>xlai@chromium.org</owner>
  <summary>
    Records the occurence of image file formats passed into toDataURL and toBlob
    functions in canvas.
  </summary>
</histogram>

<histogram name="CAPSUpdater.Step" enum="CAPSUpdaterStep">
  <owner>cpu@chromium.org</owner>
  <summary>
    Tracks the component updater steps for the Chrome Crash Service.
  </summary>
</histogram>

<histogram name="CaptivePortal.DetectResult" enum="CaptivePortalDetectResult">
  <owner>meacer@chromium.org</owner>
  <summary>Records the result of a captive portal probe.</summary>
</histogram>

<histogram name="CaptivePortal.Notification.Status"
    enum="CaptivePortalNotificationStatus">
  <owner>alemate@chromium.org</owner>
  <summary>
    Count of displayed and not displayed due to errors notifications about
    captive portal.
  </summary>
</histogram>

<histogram name="CaptivePortal.Notification.UserAction"
    enum="CaptivePortalNotificationUserAction">
  <owner>alemate@chromium.org</owner>
  <summary>
    Count of clicked, closed and ignored captive portal notifications.
  </summary>
</histogram>

<histogram name="CaptivePortal.OOBE.DetectionDuration" units="ms">
  <owner>alemate@chromium.org</owner>
  <summary>
    Duration of the captive portal detection process for a particular network at
    OOBE. Detection duration is recorded each time portal detection is completed
    for an active network.
  </summary>
</histogram>

<histogram name="CaptivePortal.OOBE.DetectionResult" enum="CaptivePortalStatus">
  <owner>alemate@chromium.org</owner>
  <summary>
    The result of captive portal detection attempts performed at OOBE. Detection
    result is recorded when portal detection is completed for an active network
    and when it differs from the previous result for the same network.
  </summary>
</histogram>

<histogram name="CaptivePortal.OOBE.DiscrepancyWithShill"
    enum="CaptivePortalStatus">
  <owner>alemate@chromium.org</owner>
  <summary>
    The result of captive portal detection attempts at OOBE if it diverges from
    network manager results. Detection result is recorded each time portal
    detection is completed for an active network.
  </summary>
</histogram>

<histogram name="CaptivePortal.OOBE.PortalToOnlineTransition" units="ms">
  <owner>alemate@chromium.org</owner>
  <summary>
    Number of milliseconds passed between consecutive reports for the same
    network about portal and online states.
  </summary>
</histogram>

<histogram name="CaptivePortal.RedirectTime" units="ms">
  <owner>alemate@chromium.org</owner>
  <summary>
    Number of milliseconds between start of request to gstatic.com/generate_204
    and receipt of response with redirect to captive portal login page.
  </summary>
</histogram>

<histogram name="CaptivePortal.Session.DetectionDuration" units="ms">
  <owner>alemate@chromium.org</owner>
  <summary>
    Duration of the captive portal detection process for a particular network in
    user session. Detection duration is recorded each time portal detection is
    completed for an active network.
  </summary>
</histogram>

<histogram name="CaptivePortal.Session.DetectionResult"
    enum="CaptivePortalStatus">
  <owner>alemate@chromium.org</owner>
  <summary>
    The result of captive portal detection attempts performed in user session.
    Detection result is recorded when portal detection is completed for an
    active network and when it differs from the previous result for the same
    network.
  </summary>
</histogram>

<histogram name="CaptivePortal.Session.DiscrepancyWithShill"
    enum="CaptivePortalStatus">
  <owner>alemate@chromium.org</owner>
  <summary>
    The result of captive portal detection attempts in session if it diverges
    from network manager results. Detection result is recorded each time portal
    detection is completed for an active network.
  </summary>
</histogram>

<histogram name="CaptivePortal.Session.PortalToOnlineTransition" units="ms">
  <owner>alemate@chromium.org</owner>
  <summary>
    Number of milliseconds passed between consecutive reports for the same
    network about portal and online states.
  </summary>
</histogram>

<histogram name="Cast.Network.Down.Duration.In.Seconds" units="seconds">
  <owner>cast-analytics@google.com</owner>
  <summary>
    Records the time the network has been down on a Cast device.  Recorded when
    network goes up.
  </summary>
</histogram>

<histogram name="Cast.Network.Up.Duration.In.Minutes" units="minutes">
  <owner>cast-analytics@google.com</owner>
  <summary>
    Records the time the network has been up on a Cast device.  Recorded when
    network goes down.
  </summary>
</histogram>

<histogram name="Cast.Sender.CastButtonShown" enum="BooleanEnabled">
  <owner>mfoltz@chromium.org</owner>
  <summary>
    Records the number of times the cast button was shown to the user. The value
    will be true if the button is enabled, and false if the button is disabled.
    Note that depending on the current UX, it's possible that we hide the button
    entirely if it's disabled, so it's possible for the false values to be 0.
  </summary>
</histogram>

<histogram name="Cast.Sender.CastButtonShownInitialFullscreen"
    enum="BooleanEnabled">
  <owner>mfoltz@chromium.org</owner>
  <summary>
    Records the number of times the cast button was shown to the user when the
    video is fullscreened. The value will only be recorded on entering
    fullscreen. The value will be true if the button is enabled, and false if
    the button is disabled. Note that depending on the current UX,it's possible
    that we hide the button entirely if it's disabled, so it's possible for the
    false values to be 0.
  </summary>
</histogram>

<histogram name="Cast.Sender.CastMediaType" enum="MediaContainers">
  <owner>miguelg@chromium.org</owner>
  <summary>Records the media type of every video being cast.</summary>
</histogram>

<histogram name="Cast.Sender.CastPlayerResult" enum="CastPlayBackState">
  <owner>maybelle@chromium.org</owner>
  <owner>miguelg@chromium.org</owner>
  <summary>
    Records the result of a request to play remotely on a per player app basis
    within Chrome for Android.
  </summary>
</histogram>

<histogram name="Cast.Sender.CastPlaySuccess" enum="BooleanSuccess">
  <obsolete>
    Deprecated 04/2014, and replaced by Cast.Sender.CastPlayerResult.
  </obsolete>
  <owner>maybelle@chromium.org</owner>
  <owner>miguelg@chromium.org</owner>
  <summary>
    Records the result of a request to play remotely. The value will be true if
    the playback succeeded, and false if there was an error.
  </summary>
</histogram>

<histogram name="Cast.Sender.CastTimeRemainingPercentage" units="%">
  <owner>mfoltz@chromium.org</owner>
  <summary>
    Records the percentage of the video left at the time the remote playback is
    stopped. This will be recorded when the playback is stopped by the user, or
    when it's stopped by the cast device.
  </summary>
</histogram>

<histogram name="Cast.Sender.DeviceType" enum="RemotePlaybackDeviceType">
  <owner>avayvod@google.com</owner>
  <summary>
    Records the type of the remote playback device selected by the user. This
    will be recorded when the user has chosen the device from the media route
    chooser dialog.
  </summary>
</histogram>

<histogram name="Cast.Sender.FullscreenControlsActionWithMediaElement"
    enum="MediaCommand">
  <owner>aberent@chromium.org</owner>
  <owner>avayvod@chromium.org</owner>
  <summary>
    Record each interaction with the fullscreen remote playback controls in
    cases when the corresponding media element on the page was present.
  </summary>
</histogram>

<histogram name="Cast.Sender.FullscreenControlsActionWithoutMediaElement"
    enum="MediaCommand">
  <owner>aberent@chromium.org</owner>
  <owner>avayvod@chromium.org</owner>
  <summary>
    Record each interaction with the fullscreen remote playback controls in
    cases when the corresponding media element on the page was not present.
  </summary>
</histogram>

<histogram name="Cast.Sender.MediaElementPresentWhenShowFullscreenControls"
    enum="BooleanPresent">
  <owner>aberent@chromium.org</owner>
  <owner>avayvod@chromium.org</owner>
  <summary>
    Indicates whether the corresponding media element on the page was present
    when the fullscreen remote playback controls were shown.
  </summary>
</histogram>

<histogram name="Cast.Sender.Overlay" enum="CastOverlayEvents">
  <owner>avayvod@chromium.org</owner>
  <owner>mlamouri@chromium.org</owner>
  <summary>
    Records events and user interactions related to the Cast overlay shown on
    video elements.
  </summary>
</histogram>

<histogram name="Cast.Sender.SessionTimeWithoutMediaElementPercentage"
    units="%">
  <owner>aberent@chromium.org</owner>
  <owner>avayvod@chromium.org</owner>
  <summary>
    Records the ratio of the time the media element was detached from the remote
    playback session to the total duration of the session (as from when the
    element has been attached till when the session stopped or disconnected), in
    percents.
  </summary>
</histogram>

<histogram name="Cast.Sender.UrlResolveResult"
    enum="RemotePlaybackUrlResolveResult">
  <owner>aberent@google.com</owner>
  <summary>
    Records the result of resolving the video URL for cast, including checking
    its CORS header.
  </summary>
</histogram>

<histogram name="Cast.Sender.VideoEncodeAcceleratorInitializeSuccess"
    enum="BooleanSuccess">
  <owner>posciak@chromium.org</owner>
  <summary>
    Indicates whether initialization of a video encode accelerator for Cast
    sender was successful.
  </summary>
</histogram>

<histogram name="CastV2.Transport.Connect.Latency.Unknown" units="ms">
  <owner>cast-analytics@google.com</owner>
  <summary>
    The latency between when a Cast V2 connection is established and the first
    message is received on that connection. &quot;Unknown&quot; is the peer
    type, which is not known at this point in the CastV2 connection
    establishment.  Naming conforms to the CastV2 sender-side histogram naming
    convention &quot;CastV2.[action].[name].[peer_type]&quot;.
  </summary>
</histogram>

<histogram name="CastV2.Transport.SslHandshake.Error.Unknown"
    enum="NetErrorCodes">
  <owner>cast-analytics@google.com</owner>
  <summary>
    On accepting a Cast V2 transport socket connection, if an error is
    encountered, the error code is logged here. &quot;Unknown&quot; is the peer
    type, which is not known at this point in the CastV2 connection
    establishment.  &quot;SslHandshake.Error&quot; is the name of the action.
    Naming conforms to the CastV2 sender-side histogram naming convention
    &quot;CastV2.[action].[name].[peer_type]&quot;.
  </summary>
</histogram>

<histogram name="CastV2.Transport.SslHandshake.Unknown" units="ms">
  <owner>cast-analytics@google.com</owner>
  <summary>
    The time taken to do the handshake during Cast V2 transport socket creation.
    &quot;Unknown&quot; is the peer type, which is not known at this point in
    the CastV2 connection establishment.  Naming conforms to the CastV2
    sender-side histogram naming convention
    &quot;CastV2.[action].[name].[peer_type]&quot;.
  </summary>
</histogram>

<histogram name="Cellular.ActivationFailure">
  <obsolete>
    Deprecated 04/2016 as doesn't have data nor owner.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The count of cellular device activation failures (Chrome OS).
  </summary>
</histogram>

<histogram name="Cellular.ActivationTry">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>The count of cellular device activation tries (Chrome OS).</summary>
</histogram>

<histogram name="Cellular.ConnectionFailed">
  <obsolete>
    Deprecated 04/2016 as doesn't have data nor owner.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The count of cellular reconnect failures during activation (Chrome OS).
  </summary>
</histogram>

<histogram name="Cellular.ConnectionRetry">
  <obsolete>
    Deprecated 04/2016 as doesn't have data nor owner.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The count of cellular device reconnect tries during activation (Chrome OS).
  </summary>
</histogram>

<histogram name="Cellular.MobileSetupFailed">
  <obsolete>
    Deprecated 04/2016 as doesn't have data nor owner.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The count of successful cellular plan established (Chrome OS).
  </summary>
</histogram>

<histogram name="Cellular.MobileSetupStart">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The count of initiated cellular device setup starts (Chrome OS).
  </summary>
</histogram>

<histogram name="Cellular.MobileSetupSucceeded">
  <obsolete>
    Deprecated 04/2016 as doesn't have data nor owner.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>The count of failed cellular plan setup tries (Chrome OS).</summary>
</histogram>

<histogram name="Cellular.PaymentFailed">
  <obsolete>
    Deprecated 04/2016 as doesn't have data nor owner.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>The count of failed cellular plan purchases (Chrome OS).</summary>
</histogram>

<histogram name="Cellular.PaymentReceived">
  <obsolete>
    Deprecated 04/2016 as doesn't have data nor owner.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The count of successfully completed cellular plan purchases (Chrome OS).
  </summary>
</histogram>

<histogram name="CertificateType">
  <obsolete>
    Deprecated as of 8/2013. This histogram only considered the leaf certificate
    expiry date as a proxy for whether a certificate was in-scope for the BRs,
    but did not consider the issuance date. As some CAs have issued long-lived
    certs prior to the BRs, this disproportionately reported those certs as
    being subject to the BRs, but non-compliant, when in reality they're not
    subject.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Information about the certificate algorithms and sizes in use on the web, to
    examine compliance with the CA/Browser Forum requirements and security best
    practice.
  </summary>
</histogram>

<histogram name="CertificateType2">
  <obsolete>
    Deprecated 04/2016 as doesn't have data nor owner.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Information about the certificate algorithms and sizes in use on the web, to
    examine compliance with the CA/Browser Forum requirements and security best
    practice. This histogram considers the notBefore as the issuance date, for
    purposes of what requirements apply.
  </summary>
</histogram>

<histogram name="ChildProcess.BadMessgeTerminated" enum="ProcessType2">
  <owner>jam@chromium.org</owner>
  <summary>
    Count of child processes killed because they sent an IPC that couldn't be
    deserialized.
  </summary>
</histogram>

<histogram name="ChildProcess.Crashed" enum="ProcessType">
  <obsolete>
    Deprecated 3/2013. Renamed to ChildProcess.Crashed2.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>Count of child process crashes grouped by process type.</summary>
</histogram>

<histogram name="ChildProcess.Crashed2" enum="ProcessType2">
  <owner>wfh@chromium.org</owner>
  <summary>Count of child process crashes grouped by process type.</summary>
</histogram>

<histogram name="ChildProcess.CrashedWasAlive" enum="ProcessType">
  <obsolete>
    Deprecated as of 10/2015.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Count of child process crashes that we miscounted because we took the exit
    code too early. Grouped by process type.
  </summary>
</histogram>

<histogram name="ChildProcess.Crashes" enum="ProcessType">
  <obsolete>
    Deprecated 10/2011. Renamed to ChildProcess.Crashed.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>Count of child process crashes grouped by process type.</summary>
</histogram>

<histogram name="ChildProcess.CrashesWasAlive" enum="ProcessType">
  <obsolete>
    Deprecated 10/2011. Renamed to ChildProcess.CrashedWasAlive.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Count of child process crashes that we miscounted because we took the exit
    code too early. Grouped by process type.
  </summary>
</histogram>

<histogram name="ChildProcess.DefaultCase" enum="ProcessType">
  <obsolete>
    Deprecated as of 10/2015.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Count of child process crashes for which we were not able to understand the
    exit code, grouped by process type.
  </summary>
</histogram>

<histogram name="ChildProcess.Disconnected" enum="ProcessType">
  <obsolete>
    Deprecated 3/2013. Renamed to ChildProcess.Disconnected2.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Count of child process abnormal channel disconnects grouped by process type.
  </summary>
</histogram>

<histogram name="ChildProcess.Disconnected2" enum="ProcessType2">
  <owner>wfh@chromium.org</owner>
  <summary>
    Count of child process abnormal channel disconnects grouped by process type.
  </summary>
</histogram>

<histogram name="ChildProcess.DisconnectedAlive" enum="ProcessType">
  <obsolete>
    Deprecated 3/2013. Renamed to ChildProcess.DisconnectedAlive2.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Count of child process abnormal channel disconnects that are not classified
    and reported because we took the exit code too early. Grouped by process
    type.
  </summary>
</histogram>

<histogram name="ChildProcess.DisconnectedAlive2" enum="ProcessType2">
  <owner>wfh@chromium.org</owner>
  <summary>
    Count of child process abnormal channel disconnects that are not classified
    and reported because we took the exit code too early. Grouped by process
    type.
  </summary>
</histogram>

<histogram name="ChildProcess.InvalidSandboxStateCrash.NoStartupWindow"
    enum="BooleanPresent">
  <owner>wfh@chromium.org</owner>
  <summary>
    Whether the browser command line had the switch --no-startup-window when a
    child process crashed due to invalid sandbox state. Recorded when a child
    process crashes if the exit code from the child process is
    RESULT_CODE_INVALID_SANDBOX_STATE.
  </summary>
</histogram>

<histogram name="ChildProcess.Killed" enum="ProcessType">
  <obsolete>
    Deprecated 3/2013. Renamed to ChildProcess.Killed2.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>Count of child process kills grouped by process type.</summary>
</histogram>

<histogram name="ChildProcess.Killed2" enum="ProcessType2">
  <owner>wfh@chromium.org</owner>
  <summary>Count of child process kills grouped by process type.</summary>
</histogram>

<histogram name="ChildProcess.Killed2.OOM" enum="ProcessType2">
  <owner>oshima@chromium.org</owner>
  <summary>
    Out of ChildProcess.Killled, number of kills due to SIGKILL, which is a
    strong signal of out of memory on ChromeOS, grouped by process type.
  </summary>
</histogram>

<histogram name="ChildProcess.KilledByExtensionAPI">
  <owner>nasko@chromium.org</owner>
  <summary>
    Count of child processes killed by the extension API (processes.terminate).
  </summary>
</histogram>

<histogram name="ChildProcess.KilledWasAlive" enum="ProcessType">
  <obsolete>
    Deprecated as of 10/2015.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Count of child process kills that we miscounted because we took the exit
    code too early. Grouped by process type.
  </summary>
</histogram>

<histogram name="ChildProcess.Kills" enum="ProcessType">
  <obsolete>
    Deprecated 10/2011. Renamed to ChildProcess.Killed.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>Count of child process kills grouped by process type.</summary>
</histogram>

<histogram name="ChildProcess.KillsWasAlive" enum="ProcessType">
  <obsolete>
    Deprecated 10/2011. Renamed to ChildProcess.KilledWasAlive.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Count of child process kills that we miscounted because we took the exit
    code too early. Grouped by process type.
  </summary>
</histogram>

<histogram name="Chrome.Android.Activity.CrashCounts" enum="AndroidActivityId">
  <obsolete>
    Deprecated 04/2016 as doesn't have data nor owner.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Indicates how many times each particular type of Activity was in the
    foreground when a UMA session was terminated abnormally. UMA sessions last
    as long as Chrome remains in the foreground.
  </summary>
</histogram>

<histogram name="Chrome.Android.Activity.LaunchCounts" enum="AndroidActivityId">
  <obsolete>
    Deprecated 04/2016 as doesn't have data nor owner.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Indicates how many times each particular type of Activity was brought to the
    foreground when a UMA session was active (i.e. launched at some point). UMA
    sessions last as long as Chrome remains in the foreground.
  </summary>
</histogram>

<histogram name="Chrome.Browser.CrashedExecutionPhase" enum="ExecutionPhase">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Indicates the execution phase the browser was in when the browser crashed.
  </summary>
</histogram>

<histogram name="Chrome.Browser.ExecutionPhase" enum="ExecutionPhase">
  <obsolete>
    Deprecated as of 11/2013.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Indicates the execution phase the browser was in when browser didn't exit
    cleanly.
  </summary>
</histogram>

<histogram name="Chrome.BrowserCrashDumpAttempts">
  <obsolete>
    Deprecated as of 04/2015.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The total number of times the browser process has attempted to generate a
    crash dump. This should be the sum of Chrome.BrowserDumpsWithCrash and
    Chrome.BrowserDumpsWithNoCrash.
  </summary>
</histogram>

<histogram name="Chrome.BrowserDumpsWithCrash">
  <obsolete>
    Deprecated as of 04/2015.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The number of times the browser process has attempted to generate a crash
    dump because of an actual browser crash.
  </summary>
</histogram>

<histogram name="Chrome.BrowserDumpsWithNoCrash">
  <obsolete>
    Deprecated as of 04/2015.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The number of times the browser process has attempted to generate a crash
    dump in a non-crashing (i.e., reporting only) context.
  </summary>
</histogram>

<histogram name="Chrome.SearchSelectExempt" enum="SearchEngine">
  <obsolete>
    Deprecated 8/2013. No longer tracked.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The default search engine selected by a user not in the search engine dialog
    experiment.
  </summary>
</histogram>

<histogram name="Chrome.SearchSelectExperiment" enum="SearchEngine">
  <obsolete>
    Deprecated 8/2013. No longer tracked.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The default search engine selected by a user in the search engine dialog
    experiment.
  </summary>
</histogram>

<histogram name="Chrome.SearchSelectExperimentSlot1" enum="SearchEngine">
  <obsolete>
    Deprecated 8/2013. No longer tracked.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The default search engine selected by a user in slot 1 of a randomized
    search engine dialog.
  </summary>
</histogram>

<histogram name="Chrome.SearchSelectExperimentSlot2" enum="SearchEngine">
  <obsolete>
    Deprecated 8/2013. No longer tracked.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The default search engine selected by a user in slot 2 of a randomized
    search engine dialog.
  </summary>
</histogram>

<histogram name="Chrome.SearchSelectExperimentSlot3" enum="SearchEngine">
  <obsolete>
    Deprecated 8/2013. No longer tracked.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The default search engine selected by a user in slot 3 of a randomized
    search engine dialog.
  </summary>
</histogram>

<histogram name="Chrome.SearchSelectExperimentSlot4" enum="SearchEngine">
  <obsolete>
    Deprecated 8/2013. No longer tracked.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The default search engine selected by a user in slot 4 of a randomized
    search engine dialog.
  </summary>
</histogram>

<histogram name="ChromeNotifierService.Actions"
    enum="ChromeNotifierServiceActionType">
  <obsolete>
    Deprecated 04/2016 as doesn't have data nor owner.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The actions to enable or disable services sending synced notifications.
    Synced Notification Sending services can be individually disabled by the
    user in the Chrome Notification center settings dialog.
  </summary>
</histogram>

<histogram name="ChromeOS.Display.ColorProfile" enum="ChromeOSColorProfile">
  <owner>xiaowenx@chromium.org</owner>
  <owner>mukai@chromium.org</owner>
  <summary>
    The name of the current color calibration of the display on ChromeOS. This
    value is sent when the color calibration is changed by the user.
  </summary>
</histogram>

<histogram name="ChromeOS.GAIA.WebViewFlow" enum="BooleanGAIAWebViewFlow">
  <owner>achuith@chromium.org</owner>
  <summary>
    Whether a user signed in using the new WebView-based GAIA flow. This value
    is sent after the GAIA screen has completed user authentication.
  </summary>
</histogram>

<histogram name="ChromeOS.MachineIdRegen.AgeSeconds" units="seconds">
  <owner>zeuthen@chromium.org</owner>
  <summary>
    The number of seconds of uptime since the last time the ChromeOS machine-id
    was regenerated. This is reported every time the machine-id is regenerated
    except for the first time since reboot.
  </summary>
</histogram>

<histogram name="ChromeOS.MachineIdRegen.Reason" enum="ChromeOSMachineIdReason">
  <owner>zeuthen@chromium.org</owner>
  <summary>
    The reason why the ChromeOS machine-id was regenerated. This is reported
    when the machine-id is re-generated.
  </summary>
</histogram>

<histogram name="ChromeOS.MemoryPressureLevel" enum="MemoryPressureLevel">
  <owner>xdai@chromium.org</owner>
  <summary>
    The memory pressure level in ChromeOS, which is recorded periodically (once
    per second). This is used to show the relative frequency of the system being
    in a critical vs relaxed memory pressure state.
  </summary>
</histogram>

<histogram name="ChromeOS.PlatformVerification.Available"
    enum="BooleanAvailable">
  <owner>dkrahn@chromium.org</owner>
  <summary>
    Whether platform verification subsystem features are available at the time a
    platform verification request is made for content protection on Chrome OS.
  </summary>
</histogram>

<histogram name="ChromeOS.PlatformVerification.ExpiryStatus"
    enum="ChromeOSPlatformVerificationExpiryStatus">
  <owner>dkrahn@chromium.org</owner>
  <summary>
    The result of a certificate expiry check during a platform verification
    attempt for content protection on Chrome OS.
  </summary>
</histogram>

<histogram name="ChromeOS.PlatformVerification.Result"
    enum="ChromeOSPlatformVerificationResult">
  <owner>dkrahn@chromium.org</owner>
  <summary>
    The result of a platform verification attempt for content protection on
    Chrome OS.
  </summary>
</histogram>

<histogram name="ChromeOS.SAML.APIUsed" enum="BooleanUsage">
  <owner>bartfab@chromium.org</owner>
  <summary>
    Whether a Chrome OS login via SAML used the principals API. This is recorded
    during login on Chrome OS if SAML is being used for authentication.
  </summary>
</histogram>

<histogram name="ChromeOS.SAML.Scraping.PasswordCount">
  <owner>bartfab@chromium.org</owner>
  <summary>
    The number of passwords that were scraped during a Chrome OS login via SAML.
    This is set only when the principals API is not used.
  </summary>
</histogram>

<histogram name="ChromeOS.SAML.Scraping.VerificationResult"
    enum="BooleanSuccess">
  <owner>bartfab@chromium.org</owner>
  <summary>
    Whether one of the scraped passwords was successfully verified as the user's
    password. This is set only when the principals API is not used.
  </summary>
</histogram>

<histogram name="ChromiumAndroidLinker.BrowserLoadTime" units="ms">
  <owner>rsesek@chromium.org</owner>
  <summary>
    The amount of time it took to load the native libraries in the browser
    process.
  </summary>
</histogram>

<histogram name="ChromiumAndroidLinker.BrowserStates"
    enum="ChromiumAndroidLinkerBrowserState">
  <owner>simonb@chromium.org</owner>
  <summary>
    Whether relro sharing was attempted for the browser process, and if
    attempted, whether it succeeded.
  </summary>
</histogram>

<histogram name="ChromiumAndroidLinker.IsLowMemoryDevice" enum="Boolean">
  <obsolete>
    Deprecated 10/2014 in Issue 419010, and replaced by
    ChromiumAndroidLinker.BrowserStates.
  </obsolete>
  <owner>simonb@chromium.org</owner>
  <summary>Is low memory device.</summary>
</histogram>

<histogram name="ChromiumAndroidLinker.LibraryLoadFromApkStatus"
    enum="LibraryLoadFromApkStatus">
  <owner>petrcermak@chromium.org</owner>
  <summary>
    Whether the device supports loading a library directly from the APK file.
    The functionality is checked and reported during every Chromium browser
    process start up.
  </summary>
</histogram>

<histogram name="ChromiumAndroidLinker.LoadedAtFixedAddressFailed"
    enum="Boolean">
  <obsolete>
    Deprecated 10/2014 in Issue 419010, and replaced by
    ChromiumAndroidLinker.RendererStates.
  </obsolete>
  <owner>simonb@chromium.org</owner>
  <summary>Load at fixed address failed.</summary>
</histogram>

<histogram name="ChromiumAndroidLinker.RendererLoadTime" units="ms">
  <owner>rsesek@chromium.org</owner>
  <summary>
    The amount of time it took to load the native libraries in the renderer
    process.
  </summary>
</histogram>

<histogram name="ChromiumAndroidLinker.RendererStates"
    enum="ChromiumAndroidLinkerRendererState">
  <owner>simonb@chromium.org</owner>
  <summary>
    Whether relro sharing was attempted for a renderer process, and if
    attempted, whether it succeeded.
  </summary>
</histogram>

<histogram name="Chromoting.Connections" enum="State">
  <owner>anandc@chromium.com</owner>
  <owner>sergeyu@chromium.org</owner>
  <summary>
    Recorded every time a Chromoting connection enters a new state.
  </summary>
</histogram>

<histogram name="Chromoting.Connections.Durations.Closed" units="minutes">
  <owner>anandc@chromium.org</owner>
  <owner>sergeyu@chromium.org</owner>
  <summary>
    The duration of sessions that were closed, normally by a user-initiated
    action.
  </summary>
</histogram>

<histogram name="Chromoting.Connections.Durations.Failed" units="minutes">
  <owner>anandc@chromium.org</owner>
  <owner>sergeyu@chromium.org</owner>
  <summary>The duration of sessions that failed to connect.</summary>
</histogram>

<histogram name="Chromoting.Connections.Times.ToAuthenticate" units="ms">
  <owner>anandc@chromium.org</owner>
  <owner>sergeyu@chromium.org</owner>
  <summary>
    The time taken to authenticate as part of a Chromoting connection request.
  </summary>
</histogram>

<histogram name="Chromoting.Connections.Times.ToConnect" units="ms">
  <owner>anandc@chromium.org</owner>
  <owner>sergeyu@chromium.org</owner>
  <summary>
    The time taken to connect to a remote-host, after a request has been
    authenticated.
  </summary>
</histogram>

<histogram name="Chromoting.Input.EventLatency" units="microseconds">
  <owner>anandc@chromium.org</owner>
  <owner>sergeyu@chromium.org</owner>
  <summary>
    Input event delivery latency from the browser to the plugin.
  </summary>
</histogram>

<histogram name="Chromoting.Video.Bandwidth" units="Bytes/second">
  <owner>anandc@chromium.org</owner>
  <owner>sergeyu@chromium.org</owner>
  <summary>
    The bandwidth of non-empty packets in Chromoting remote sessions, updated
    every time a video packet is processed and logged every 1s.
  </summary>
</histogram>

<histogram name="Chromoting.Video.CaptureLatency" units="ms">
  <owner>anandc@chromium.org</owner>
  <owner>sergeyu@chromium.org</owner>
  <summary>
    The time to capture a video frame on the host, returned as part of a video
    packet.
  </summary>
</histogram>

<histogram name="Chromoting.Video.CaptureOverhead" units="ms">
  <owner>anandc@chromium.org</owner>
  <owner>sergeyu@chromium.org</owner>
  <summary>
    Amount of time wasted on IPC and threading overhead when capturing a video
    frame.
  </summary>
</histogram>

<histogram name="Chromoting.Video.CapturePendingLatency" units="ms">
  <owner>anandc@chromium.org</owner>
  <owner>sergeyu@chromium.org</owner>
  <summary>
    The time from when an input event is received to when the next frame is
    captured.
  </summary>
</histogram>

<histogram name="Chromoting.Video.DecodeLatency" units="ms">
  <owner>anandc@chromium.org</owner>
  <owner>sergeyu@chromium.org</owner>
  <summary>The time to decode a video packet on the client.</summary>
</histogram>

<histogram name="Chromoting.Video.EncodeLatency" units="ms">
  <owner>anandc@chromium.org</owner>
  <owner>sergeyu@chromium.org</owner>
  <summary>
    The time to encode a video packet on the host, returned as part of a video
    packet.
  </summary>
</histogram>

<histogram name="Chromoting.Video.EncodePendingLatency" units="ms">
  <owner>anandc@chromium.org</owner>
  <owner>sergeyu@chromium.org</owner>
  <summary>
    Delay before a newly captured frame is passed to the encoder.
  </summary>
</histogram>

<histogram name="Chromoting.Video.FrameRate" units="fps">
  <owner>anandc@chromium.org</owner>
  <owner>sergeyu@chromium.org</owner>
  <summary>
    The frame-rate of non-empty packets in Chromoting remote sessions, updated
    every time a video packet is processed and logged every 1s.
  </summary>
</histogram>

<histogram name="Chromoting.Video.NetworkLatency" units="ms">
  <owner>anandc@chromium.org</owner>
  <owner>sergeyu@chromium.org</owner>
  <summary>
    Estimated network roundtrip latency calculated by subtracting total
    processing time on host and client from the total roundtrip time.
  </summary>
</histogram>

<histogram name="Chromoting.Video.PacketRate" units="packets/second">
  <owner>anandc@chromium.org</owner>
  <owner>sergeyu@chromium.org</owner>
  <summary>
    The packets/sec, including empty packets, in Chromoting remote sessions,
    updated every time a video packet is processed and logged every 1s.
  </summary>
</histogram>

<histogram name="Chromoting.Video.PaintLatency" units="ms">
  <owner>anandc@chromium.org</owner>
  <owner>sergeyu@chromium.org</owner>
  <summary>The time to paint a decoded video packet on the client.</summary>
</histogram>

<histogram name="Chromoting.Video.RoundTripLatency" units="ms">
  <owner>anandc@chromium.org</owner>
  <owner>sergeyu@chromium.org</owner>
  <summary>
    The time from an input being sent from the client to a response being
    received by the client after it is processed by the host.
  </summary>
</histogram>

<histogram name="Chromoting.Video.SendPendingLatency" units="ms">
  <owner>anandc@chromium.org</owner>
  <owner>sergeyu@chromium.org</owner>
  <summary>
    Delay before an encoded video packet is written to the send buffer.
  </summary>
</histogram>

<histogram name="clickjacking.discard_download" units="ms">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The length of time between a dangerous download appearing on the downloads
    shelf, and the &quot;Discard&quot; button being clicked.
  </summary>
</histogram>

<histogram name="clickjacking.dismiss_download" units="ms">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The length of time between a dangerous download appearing on the downloads
    shelf, and the &quot;Dismiss&quot; button being clicked.
  </summary>
</histogram>

<histogram name="clickjacking.launch_url" units="ms">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The length of time between the external protocol dialog being shown and the
    &quot;Launch Application&quot; button being clicked.
  </summary>
</histogram>

<histogram name="clickjacking.open_download" units="ms">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The length of time between a download appearing on the download shelf, and
    the user opening it by clicking the item or pressing return.
  </summary>
</histogram>

<histogram name="clickjacking.report_and_discard_download" units="ms">
  <obsolete>
    Deprecated 04/2016 as doesn't have data nor owner.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Time between &quot;Report and Discard&quot; button being shown and it being
    clicked.
  </summary>
</histogram>

<histogram name="clickjacking.save_download" units="ms">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The length of time between a dangerous download appearing on the download
    shelf, and the &quot;Keep&quot; button being clicked.
  </summary>
</histogram>

<histogram name="Clipboard.IncognitoUseCase" enum="ClipboardAction">
  <obsolete>
    Deprecated as of 4/2013, experiment confirmed correctness of our patch.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Counts how often the user writes or reads from the clipboard and whether the
    write was from an incognito window or not.
  </summary>
</histogram>

<histogram name="Clipboard.X11StoreCopyPasteDuration" units="ms">
  <owner>pkotwicz@chromium.org</owner>
  <summary>
    The length of time that it takes to transfer ownership of Chrome's CLIPBOARD
    selection to the clipboard manager when Chrome exits.
  </summary>
</histogram>

<histogram name="CloudPrint.AuthEvent" enum="CloudPrintAuthEventType">
  <owner>vitalybuka@chromium.org</owner>
  <summary>Event counts in CloudPrintAuth.</summary>
</histogram>

<histogram name="CloudPrint.AvailablePrinters">
  <owner>vitalybuka@chromium.org</owner>
  <summary>The number of printers availible for registration.</summary>
</histogram>

<histogram name="CloudPrint.AvailablePrintersList">
  <owner>vitalybuka@chromium.org</owner>
  <summary>
    The number of printers availible for registration in Windows Service.
  </summary>
</histogram>

<histogram name="CloudPrint.JobHandlerEvent"
    enum="CloudPrintJobHandlerEventType">
  <owner>vitalybuka@chromium.org</owner>
  <summary>Event counts in PrinterJobHandler.</summary>
</histogram>

<histogram name="CloudPrint.JobsDonePerInterval">
  <owner>vitalybuka@chromium.org</owner>
  <summary>The number of jobs successfully completed per hour.</summary>
</histogram>

<histogram name="CloudPrint.JobsStartedPerInterval">
  <owner>vitalybuka@chromium.org</owner>
  <summary>The number of jobs started per hour.</summary>
</histogram>

<histogram name="CloudPrint.JobStatus" enum="CloudPrintJobStatusType">
  <owner>vitalybuka@chromium.org</owner>
  <summary>Then number of job completion statuses.</summary>
</histogram>

<histogram name="CloudPrint.NativeJobStatus"
    enum="CloudPrintNativeJobStatusType">
  <owner>vitalybuka@chromium.org</owner>
  <summary>Event counts in PrintSystem.</summary>
</histogram>

<histogram name="CloudPrint.PrepareTime" units="ms">
  <owner>vitalybuka@chromium.org</owner>
  <summary>The amount of time needed to prepare job for spooling.</summary>
</histogram>

<histogram name="CloudPrint.PrinterBlacklistSize">
  <owner>vitalybuka@chromium.org</owner>
  <summary>The number of printers user has blacklisted.</summary>
</histogram>

<histogram name="CloudPrint.PrinterWhitelistSize">
  <owner>vitalybuka@chromium.org</owner>
  <summary>The number of printers user has whitelisted.</summary>
</histogram>

<histogram name="CloudPrint.PrintingTime" units="ms">
  <owner>vitalybuka@chromium.org</owner>
  <summary>The amount of time needed to finish print job.</summary>
</histogram>

<histogram name="CloudPrint.ServiceEvents" enum="ServiceProcessEventType">
  <owner>vitalybuka@chromium.org</owner>
  <summary>Event counts in ServiceProcessControl.</summary>
</histogram>

<histogram name="CloudPrint.ServiceProcessSocketLength">
  <owner>vitalybuka@chromium.org</owner>
  <obsolete>
    Deprecated as of 12/2015. Confirm assumption about socket name size.
    http://crbug.com/466644
  </obsolete>
  <summary>
    Temporarily histogram with size of IPC sockets in default location.
  </summary>
</histogram>

<histogram name="CloudPrint.ServiceUtilityCapsFailTime" units="ms">
  <owner>vitalybuka@chromium.org</owner>
  <summary>
    The amount of time used to fail to collect printer capabilities.
  </summary>
</histogram>

<histogram name="CloudPrint.ServiceUtilityCapsTime" units="ms">
  <owner>vitalybuka@chromium.org</owner>
  <summary>The amount of time used to collect printer capabilities.</summary>
</histogram>

<histogram name="CloudPrint.ServiceUtilityDisconnectTime" units="ms">
  <owner>vitalybuka@chromium.org</owner>
  <summary>
    The amount of time the utility process runs before disconnect.
  </summary>
</histogram>

<histogram name="CloudPrint.ServiceUtilityMetafileFailTime" units="ms">
  <owner>vitalybuka@chromium.org</owner>
  <summary>The amount of time used to fail to generate metafile.</summary>
</histogram>

<histogram name="CloudPrint.ServiceUtilityMetafileTime" units="ms">
  <owner>vitalybuka@chromium.org</owner>
  <summary>The amount of time used to generate metafile.</summary>
</histogram>

<histogram name="CloudPrint.ServiceUtilityProcessHostEvent"
    enum="ServiceUtilityProcessHostEventType">
  <owner>vitalybuka@chromium.org</owner>
  <summary>Event counts in ServiceUtilityProcessHost.</summary>
</histogram>

<histogram name="CloudPrint.SpoolingTime" units="ms">
  <owner>vitalybuka@chromium.org</owner>
  <summary>The amount of time needed to spool print job.</summary>
</histogram>

<histogram name="CloudPrint.UnregisterPrinters">
  <owner>vitalybuka@chromium.org</owner>
  <summary>The number of printers to unregister.</summary>
</histogram>

<histogram name="CloudPrint.UrlFetcherDownloadSize" units="KB">
  <owner>vitalybuka@chromium.org</owner>
  <summary>The amount of data downloaded on cloud print request.</summary>
</histogram>

<histogram name="CloudPrint.UrlFetcherRequestTime" units="ms">
  <owner>vitalybuka@chromium.org</owner>
  <summary>The amount of time needed for cloud print request.</summary>
</histogram>

<histogram name="CloudPrint.UrlFetcherRequestType"
    enum="CloudPrintUrlFetcherRequestType">
  <owner>vitalybuka@chromium.org</owner>
  <summary>Request counts to cloud print service.</summary>
</histogram>

<histogram name="CloudPrint.UrlFetcherRetries">
  <owner>vitalybuka@chromium.org</owner>
  <summary>The number of retries used to complete cloud print request.</summary>
</histogram>

<histogram name="CloudPrint.UrlFetcherUploadSize" units="KB">
  <owner>vitalybuka@chromium.org</owner>
  <summary>The amount of data uploaded with cloud print request.</summary>
</histogram>

<histogram name="CloudPrint.XmppPingTry">
  <owner>vitalybuka@chromium.org</owner>
  <summary>Number of tries before successful ping. 99 means giving up.</summary>
</histogram>

<histogram name="ComponentUpdater.Calls" enum="ComponentUpdaterCalls">
  <owner>sorin@chromium.org</owner>
  <summary>
    The number of times the component updater called UpdateClient::Install or
    UpdateClient::Update. These correspond to the number of manual component
    update checks performed as a result of a user action, and the number of
    automated component update checks.
  </summary>
</histogram>

<histogram name="ComponentUpdater.UpdateCompleteResult" enum="BooleanError">
  <owner>sorin@chromium.org</owner>
  <summary>The result of an install or an update check.</summary>
</histogram>

<histogram name="ComponentUpdater.UpdateCompleteTime" units="ms">
  <owner>sorin@chromium.org</owner>
  <summary>
    Time to complete an Install or an Update component update call.
  </summary>
</histogram>

<histogram
    name="Compositing.Browser.DisplayListRecordingSource.UpdateInvalidatedAreaPerMs"
    units="pixels/ms">
  <owner>paint-dev@chromium.org</owner>
  <obsolete>
    Deprecated 05/2016. See Blink.Paint.UpdateTime as a related alternate
    metric.
  </obsolete>
  <summary>
    Area of invalidated content, in pixels, divided by update (i.e. record), in
    milliseconds. Recorded when display list recording source is updated (in a
    browser process).
  </summary>
</histogram>

<histogram name="Compositing.Browser.DisplayListRecordingSource.UpdateUs"
    units="microseconds">
  <obsolete>
    Deprecated 05/2016. See Blink.Paint.UpdateTime as a related alternate
    metric.
  </obsolete>
  <owner>paint-dev@chromium.org</owner>
  <summary>
    Time spent updating (i.e. recording) a display list, in microseconds.
    Recorded when display list is updated (in a browser process).
  </summary>
</histogram>

<histogram name="Compositing.Browser.LayerTreeImpl.CalculateDrawPropertiesUs"
    units="microseconds">
  <owner>paint-dev@chromium.org</owner>
  <summary>
    Time spent updating layer draw properties, in microseconds. Recorded when a
    LayerTreeImpl's draw properties are updated (in a browser process).
  </summary>
</histogram>

<histogram name="Compositing.Browser.NumActiveLayers" units="layers">
  <owner>paint-dev@chromium.org</owner>
  <summary>
    The number of layers in the active tree for each compositor frame. This is
    logged once per frame, before the frame is drawn (in a browser process).
  </summary>
</histogram>

<histogram name="Compositing.Browser.NumRenderSurfaces" units="surfaces">
  <owner>paint-dev@chromium.org</owner>
  <summary>
    The number of render surfaces in the render surface layer list. Recorded
    each time the render surface layer list is constructed (in a browser
    process).
  </summary>
</histogram>

<histogram name="Compositing.Browser.PictureMemoryUsageKb" units="KB">
  <owner>paint-dev@chromium.org</owner>
  <summary>
    Total estimated memory used by SkPictures in the layer tree, in kilobytes.
    Recorded once per frame, before the frame is drawn (in a browser process).
  </summary>
</histogram>

<histogram name="Compositing.Browser.PicturePile.UpdateInvalidatedAreaPerMs"
    units="pixels/ms">
  <owner>paint-dev@chromium.org</owner>
  <summary>
    Area of invalidated content, in pixels, divided by update (i.e. record), in
    milliseconds. Recorded when picture pile is updated (in a browser process).
  </summary>
</histogram>

<histogram name="Compositing.Browser.PicturePile.UpdateUs" units="microseconds">
  <owner>paint-dev@chromium.org</owner>
  <summary>
    Time spent updating (i.e. recording) a picture pile, in microseconds.
    Recorded when picture pile is updated (in a browser process).
  </summary>
</histogram>

<histogram name="Compositing.Browser.RasterTask.RasterPixelsPerMs"
    units="pixels/ms">
  <owner>paint-dev@chromium.org</owner>
  <summary>
    Rasterized area, in pixels, divided by rasterization time, in milliseconds,
    of a compositor rasterization task. Recorded after the task finishes (in a
    browser process).
  </summary>
</histogram>

<histogram name="Compositing.Browser.RasterTask.RasterUs" units="microseconds">
  <owner>paint-dev@chromium.org</owner>
  <summary>
    Time spent completing a compositor rasterization task, in microseconds.
    Recorded after the task finishes (in a browser process).
  </summary>
</histogram>

<histogram
    name="Compositing.Browser.RenderPass.AppendQuadData.NumMissingTilesNoImageContent">
  <obsolete>
    Deprecated 02/2016. We'd learned as much as we could from this metric and it
    made no sense to keep it around.
  </obsolete>
  <owner>vollick@chromium.org</owner>
  <summary>
    Tracks the number of missing tiles that had some image content in the
    browser process.
  </summary>
</histogram>

<histogram
    name="Compositing.Browser.RenderPass.AppendQuadData.NumMissingTilesSomeImageContent">
  <obsolete>
    Deprecated 02/2016. We'd learned as much as we could from this metric and it
    made no sense to keep it around.
  </obsolete>
  <owner>vollick@chromium.org</owner>
  <summary>
    Tracks the number of missing tiles that did not have any image content in
    the browser process.
  </summary>
</histogram>

<histogram name="Compositing.CopyFromSurfaceTime" units="ms">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The turn around time taken for the async readback of pixels is measured
    here.
  </summary>
</histogram>

<histogram name="Compositing.CopyFromSurfaceTimeSynchronous" units="ms">
  <obsolete>
    Deprecated 04/2016 as doesn't have data nor owner.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The time taken for the sync readback of pixels is measured here.
  </summary>
</histogram>

<histogram
    name="Compositing.DisplayListRecordingSource.UpdateInvalidatedAreaPerMs"
    units="pixels/ms">
  <obsolete>
    Deprecated 09/2015, replaced by similar metrics under Compositing.Renderer
    and Compositing.Browser, depending on which process it occurs in.
  </obsolete>
  <owner>paint-dev@chromium.org</owner>
  <summary>
    Area of invalidated content, in pixels, divided by update (i.e. record), in
    milliseconds. Recorded when display list recording source is updated.
  </summary>
</histogram>

<histogram name="Compositing.DisplayListRecordingSource.UpdateUs"
    units="microseconds">
  <obsolete>
    Deprecated 09/2015, replaced by similar metrics under Compositing.Renderer
    and Compositing.Browser, depending on which process it occurs in.
  </obsolete>
  <owner>paint-dev@chromium.org</owner>
  <summary>
    Time spent updating (i.e. recording) a display list, in microseconds.
    Recorded when display list is updated.
  </summary>
</histogram>

<histogram name="Compositing.NumActiveLayers">
  <obsolete>
    Deprecated 04/2016, replaced by similar metrics under Compositing.Renderer
    and Compositing.Browser, depending on which process it occurs in.
  </obsolete>
  <owner>dneto@chromium.org</owner>
  <summary>
    The number of layers in the active tree for each compositor frame. This is
    logged once per frame, before the frame is drawn.
  </summary>
</histogram>

<histogram name="Compositing.PictureMemoryUsageKb" units="KB">
  <obsolete>
    Deprecated 09/2015, replaced by similar metrics under Compositing.Renderer
    and Compositing.Browser, depending on which process it occurs in.
  </obsolete>
  <owner>paint-dev@chromium.org</owner>
  <summary>
    Total estimated memory used by SkPictures in the layer tree, in kilobytes.
    Recorded once per frame, before the frame is drawn.
  </summary>
</histogram>

<histogram name="Compositing.PicturePile.UpdateInvalidatedAreaPerMs"
    units="pixels/ms">
  <obsolete>
    Deprecated 09/2015, replaced by similar metrics under Compositing.Renderer
    and Compositing.Browser, depending on which process it occurs in.
  </obsolete>
  <owner>paint-dev@chromium.org</owner>
  <summary>
    Area of invalidated content, in pixels, divided by update (i.e. record), in
    milliseconds. Recorded when picture pile is updated.
  </summary>
</histogram>

<histogram name="Compositing.PicturePile.UpdateUs" units="microseconds">
  <obsolete>
    Deprecated 09/2015, replaced by similar metrics under Compositing.Renderer
    and Compositing.Browser, depending on which process it occurs in.
  </obsolete>
  <owner>paint-dev@chromium.org</owner>
  <summary>
    Time spent updating (i.e. recording) a picture pile, in microseconds.
    Recorded when picture pile is updated.
  </summary>
</histogram>

<histogram name="Compositing.RasterTask.RasterPixelsPerMs" units="pixels/ms">
  <obsolete>
    Deprecated 09/2015, replaced by similar metrics under Compositing.Renderer
    and Compositing.Browser, depending on which process it occurs in.
  </obsolete>
  <owner>paint-dev@chromium.org</owner>
  <summary>
    Rasterized area, in pixels, divided by rasterization time, in milliseconds,
    of a compositor rasterization task. Recorded after the task finishes.
  </summary>
</histogram>

<histogram name="Compositing.RasterTask.RasterUs" units="microseconds">
  <obsolete>
    Deprecated 09/2015, replaced by similar metrics under Compositing.Renderer
    and Compositing.Browser, depending on which process it occurs in.
  </obsolete>
  <owner>paint-dev@chromium.org</owner>
  <summary>
    Time spent completing a compositor rasterization task, in microseconds.
    Recorded after the task finishes.
  </summary>
</histogram>

<histogram name="Compositing.Renderer.CALayerResult" enum="CALayerResult">
  <owner>ccameron@chromium.org</owner>
  <summary>
    The outcome of attempting to replace all renderer tiles with CALayers.
    Either success, or the first reason why a DrawQuad couldn't be replaced by a
    CALayer.
  </summary>
</histogram>

<histogram
    name="Compositing.Renderer.DisplayListRecordingSource.UpdateInvalidatedAreaPerMs"
    units="pixels/ms">
  <obsolete>
    Deprecated 05/2016. See Blink.Paint.UpdateTime as a related alternate
    metric.
  </obsolete>
  <owner>paint-dev@chromium.org</owner>
  <summary>
    Area of invalidated content, in pixels, divided by update (i.e. record), in
    milliseconds. Recorded when display list recording source is updated (in a
    renderer process).
  </summary>
</histogram>

<histogram name="Compositing.Renderer.DisplayListRecordingSource.UpdateUs"
    units="microseconds">
  <obsolete>
    Deprecated 05/2016. See Blink.Paint.UpdateTime as a related alternate
    metric.
  </obsolete>
  <owner>paint-dev@chromium.org</owner>
  <summary>
    Time spent updating (i.e. recording) a display list, in microseconds.
    Recorded when display list is updated (in a renderer process).
  </summary>
</histogram>

<histogram name="Compositing.Renderer.LayerTreeImpl.CalculateDrawPropertiesUs"
    units="microseconds">
  <owner>paint-dev@chromium.org</owner>
  <summary>
    Time spent updating layer draw properties, in microseconds. Recorded when a
    LayerTreeImpl's draw properties are updated (in a renderer process).
  </summary>
</histogram>

<histogram name="Compositing.Renderer.NumActiveLayers" units="layers">
  <owner>paint-dev@chromium.org</owner>
  <summary>
    The number of layers in the active tree for each compositor frame. This is
    logged once per frame, before the frame is drawn (in a renderer process).
  </summary>
</histogram>

<histogram name="Compositing.Renderer.NumRenderSurfaces" units="surfaces">
  <owner>paint-dev@chromium.org</owner>
  <summary>
    The number of render surfaces in the render surface layer list. Recorded
    each time the render surface layer list is constructed (in a renderer
    process).
  </summary>
</histogram>

<histogram name="Compositing.Renderer.PictureMemoryUsageKb" units="KB">
  <owner>paint-dev@chromium.org</owner>
  <summary>
    Total estimated memory used by SkPictures in the layer tree, in kilobytes.
    Recorded once per frame, before the frame is drawn (in a renderer process).
  </summary>
</histogram>

<histogram name="Compositing.Renderer.PicturePile.UpdateInvalidatedAreaPerMs"
    units="pixels/ms">
  <owner>paint-dev@chromium.org</owner>
  <summary>
    Area of invalidated content, in pixels, divided by update (i.e. record), in
    milliseconds. Recorded when picture pile is updated (in a renderer process).
  </summary>
</histogram>

<histogram name="Compositing.Renderer.PicturePile.UpdateUs"
    units="microseconds">
  <owner>paint-dev@chromium.org</owner>
  <summary>
    Time spent updating (i.e. recording) a picture pile, in microseconds.
    Recorded when picture pile is updated (in a renderer process).
  </summary>
</histogram>

<histogram name="Compositing.Renderer.RasterTask.RasterPixelsPerMs"
    units="pixels/ms">
  <owner>paint-dev@chromium.org</owner>
  <summary>
    Rasterized area, in pixels, divided by rasterization time, in milliseconds,
    of a compositor rasterization task. Recorded after the task finishes (in a
    renderer process).
  </summary>
</histogram>

<histogram name="Compositing.Renderer.RasterTask.RasterUs" units="microseconds">
  <owner>paint-dev@chromium.org</owner>
  <summary>
    Time spent completing a compositor rasterization task, in microseconds.
    Recorded after the task finishes (in a renderer process).
  </summary>
</histogram>

<histogram
    name="Compositing.Renderer.RenderPass.AppendQuadData.NumMissingTilesNoImageContent">
  <obsolete>
    Deprecated 02/2016. We'd learned as much as we could from this metric and it
    made no sense to keep it around.
  </obsolete>
  <owner>vollick@chromium.org</owner>
  <summary>
    Tracks the number of missing tiles that had some image content in the
    renderer process.
  </summary>
</histogram>

<histogram
    name="Compositing.Renderer.RenderPass.AppendQuadData.NumMissingTilesSomeImageContent">
  <obsolete>
    Deprecated 02/2016. We'd learned as much as we could from this metric and it
    made no sense to keep it around.
  </obsolete>
  <owner>vollick@chromium.org</owner>
  <summary>
    Tracks the number of missing tiles that did not have any image content in
    the renderer process.
  </summary>
</histogram>

<histogram
    name="Compositing.RenderPass.AppendQuadData.CheckerboardedNeedRasterContentArea"
    units="pixels/frame">
  <owner>weiliangc@chromium.org</owner>
  <summary>
    Checkerboarded area, in number of pixels, that has recording but does not
    have time to finish rastering yet. A sample is recorded everytime a frame is
    drawn while a scroll is in progress. Tracking bug 535732.
  </summary>
</histogram>

<histogram
    name="Compositing.RenderPass.AppendQuadData.CheckerboardedNoRecordingContentArea"
    units="pixels/frame">
  <owner>weiliangc@chromium.org</owner>
  <summary>
    Checkerboarded area, in number of pixels, that has no recording to raster
    from. A sample is recorded everytime a frame is drawn while a scroll is in
    progress. Tracking bug 535732.
  </summary>
</histogram>

<histogram name="Compositing.RenderPass.AppendQuadData.NumIncompleteTiles">
  <owner>weiliangc@chromium.org</owner>
  <summary>
    Keeps track of number of incomplete tiles in a drawn compositor frame while
    scrolling. This is a rough measurement of ugliness during user interaction.
    Incomplete tiles are non ideal scaled. A sample is recorded everytime a
    frame is drawn while a scroll is in progress. Tracking bug 381695.
  </summary>
</histogram>

<histogram name="Compositing.RenderPass.AppendQuadData.NumMissingTiles">
  <owner>weiliangc@chromium.org</owner>
  <summary>
    Keeps track of number of missing tiles in a drawn compositor frame while
    scrolling. This is a rough measurement of ugliness during user interaction.
    Incomplete tiles are checkerboard or solid color. A sample is recorded
    everytime a frame is drawn while a scroll is in progress. Tracking bug
    381695.
  </summary>
</histogram>

<histogram name="ConnectivityDiagnostics.ChromeOsSignalStrength" units="%">
  <owner>ebeach@google.com</owner>
  <summary>
    Connectivity Diagnostics App: WiFi signal strength recorded during
    NIC_SIGNAL_STRENGTH test.
  </summary>
  <details>
    The &quot;Strength&quot; property of a WiFi signal is a partially-reversible
    function that linearly maps the RSSI range -120dBm to -20dBm to Strength
    values from 0 to 100.
  </details>
</histogram>

<histogram name="ConnectivityDiagnostics.HTTP_LATENCY" units="ms">
  <owner>ebeach@google.com</owner>
  <summary>HTTP latency seen by the Connectivity Diagnostics.</summary>
  <details>
    HTTP latency is computed using the chrome.socket API to make an HTTP GET
    request to the /generate_204 page of three randomly generated Google
    hostnames (*-ccd-testing-v4.metric.gstatic.com). The time taken from issuing
    the HTTP request to receiving a response is clocked in JavaScript and the
    arithmetic mean of the three times is used as the HTTP latency.
  </details>
</histogram>

<histogram name="ConnectivityDiagnostics.RESOLVER_LATENCY" units="ms">
  <owner>ebeach@google.com</owner>
  <summary>Resolution latency seen by the Connectivity Diagnostics.</summary>
  <details>
    Resolver latency is computed by using the chrome.dns API to query three
    randomly generated Google hostnames (*-ccd-testing-v4.metric.gstatic.com).
    The random hostnames guarantees that there will be no caching of DNS
    hostnames. The time taken from issuing the DNS request to receiving a
    response is clocked in JavaScript and the arithmetic mean of the three times
    is used as the resolver latency.
  </details>
</histogram>

<histogram name="ConnectivityDiagnostics.TestVerdict"
    enum="ConnectivityDiagnosticsTestVerdict">
  <owner>ebeach@google.com</owner>
  <summary>
    Connectivity Diagnostics App: Outcome of the connectivity tests.
  </summary>
</histogram>

<histogram name="ConnectivityDiagnostics.TimeTaken" units="ms">
  <owner>ebeach@google.com</owner>
  <summary>
    Connectivity Diagnostics App: Amount of time taken to run each of the
    connectivity tests.
  </summary>
</histogram>

<histogram name="ContentSettings.DefaultCookiesSetting" enum="ContentSetting">
  <owner>toyoshim@chromium.org</owner>
  <summary>The default cookies setting at profile open.</summary>
</histogram>

<histogram name="ContentSettings.DefaultHandlersSetting" enum="ContentSetting">
  <obsolete>
    Deprecated 07/2014 since it is not referenced anywhere in the code.
  </obsolete>
  <owner>toyoshim@chromium.org</owner>
  <summary>The default handler setting at profile open.</summary>
</histogram>

<histogram name="ContentSettings.DefaultImagesSetting" enum="ContentSetting">
  <owner>toyoshim@chromium.org</owner>
  <summary>The default image setting at profile open.</summary>
</histogram>

<histogram name="ContentSettings.DefaultJavaScriptSetting"
    enum="ContentSetting">
  <owner>toyoshim@chromium.org</owner>
  <summary>The default JavaScript setting at profile open.</summary>
</histogram>

<histogram name="ContentSettings.DefaultKeygenSetting" enum="ContentSetting">
  <owner>svaldez@chromium.org</owner>
  <summary>
    The default setting for using key generation in forms at profile open.
  </summary>
</histogram>

<histogram name="ContentSettings.DefaultLocationSetting" enum="ContentSetting">
  <owner>toyoshim@chromium.org</owner>
  <summary>The default location setting at profile open.</summary>
</histogram>

<histogram name="ContentSettings.DefaultMediaStreamCameraSetting"
    enum="ContentSetting">
  <owner>msramek@chromium.org</owner>
  <summary>The default camera setting at profile open.</summary>
</histogram>

<histogram name="ContentSettings.DefaultMediaStreamMicSetting"
    enum="ContentSetting">
  <owner>msramek@chromium.org</owner>
  <summary>The default microphone setting at profile open.</summary>
</histogram>

<histogram name="ContentSettings.DefaultMediaStreamSetting"
    enum="ContentSetting">
  <obsolete>
    This setting was deprecated in r322364 and replaced with separate settings
    for camera and microphone. See
    ContentSettings.DefaultMediaStreamCameraSetting and
    ContentSettings.DefaultMediaStreamMicSetting.
  </obsolete>
  <owner>toyoshim@chromium.org</owner>
  <owner>msramek@chromium.org</owner>
  <summary>The default MediaStream setting at profile open.</summary>
</histogram>

<histogram name="ContentSettings.DefaultMIDISysExSetting" enum="ContentSetting">
  <owner>toyoshim@chromium.org</owner>
  <summary>
    The default MIDI permission setting on sysex (system exclusive) messages at
    profile open.
  </summary>
</histogram>

<histogram name="ContentSettings.DefaultMouseCursorSetting"
    enum="ContentSetting">
  <owner>toyoshim@chromium.org</owner>
  <summary>The default mouse cursor setting at profile open.</summary>
</histogram>

<histogram name="ContentSettings.DefaultNotificationsSetting"
    enum="ContentSetting">
  <owner>toyoshim@chromium.org</owner>
  <summary>The default notification setting at profile open.</summary>
</histogram>

<histogram name="ContentSettings.DefaultPluginsSetting" enum="ContentSetting">
  <owner>toyoshim@chromium.org</owner>
  <summary>The default plugins setting at profile open.</summary>
</histogram>

<histogram name="ContentSettings.DefaultPopupsSetting" enum="ContentSetting">
  <owner>toyoshim@chromium.org</owner>
  <summary>The default popups setting at profile open.</summary>
</histogram>

<histogram name="ContentSettings.DefaultPushMessagingSetting"
    enum="ContentSetting">
  <owner>miguelg@chromium.org</owner>
  <summary>
    The default permission setting for push messages at profile open.
  </summary>
</histogram>

<histogram name="ContentSettings.DefaultWebBluetoothGuardSetting"
    enum="ContentSetting">
  <owner>jyasskin@chromium.org</owner>
  <summary>
    The default permission setting for Web Bluetooth at profile open.
  </summary>
</histogram>

<histogram name="ContentSettings.Exceptions">
  <owner>lshang@chromium.org</owner>
  <summary>
    The number of user defined content setting exceptions at browser start.
    Suffixed with the name of content setting types.
  </summary>
</histogram>

<histogram name="ContentSettings.LastSettingParsed" enum="LastSettingParsed">
  <obsolete>
    Deprecated 2015-10-05 in Issue 433475. Histogram was used temorarily for
    diagnosing crash causes.
  </obsolete>
  <owner>scheib@chromium.org</owner>
  <summary>
    Numer of results of parsing WebsiteSettingsHandler::last_setting_ success or
    failure in WebsiteSettingsHandler methods.
  </summary>
</histogram>

<histogram name="ContentSettings.MixedScript"
    enum="ContentSettingMixedScriptAction">
  <owner>lgarron@chromium.org</owner>
  <summary>
    Tracks whether the mixed content shield was shown, and how the user
    interacted with it.
  </summary>
</histogram>

<histogram name="ContentSettings.NumberOfAllowCookiesExceptions">
  <owner>battre@chromium.org</owner>
  <summary>
    The number of user defined cookies setting exceptions for allowing cookies
    at browser start.
  </summary>
</histogram>

<histogram name="ContentSettings.NumberOfBlockCookiesExceptions">
  <owner>battre@chromium.org</owner>
  <summary>
    The number of user defined cookies setting exceptions for blocking cookies
    at browser start.
  </summary>
</histogram>

<histogram name="ContentSettings.NumberOfExceptions">
  <owner>battre@chromium.org</owner>
  <summary>
    The number of user defined hostname patterns for content settings at browser
    start.
  </summary>
</histogram>

<histogram name="ContentSettings.NumberOfSessionOnlyCookiesExceptions">
  <owner>battre@chromium.org</owner>
  <summary>
    The number of user defined cookies setting exceptions for 'clearing cookies
    on browser exit' at browser start.
  </summary>
</histogram>

<histogram name="ContentSettings.PermissionActions" enum="PermissionAction">
  <obsolete>
    Removed 11/2015 in favor of Permissions.Action.*
  </obsolete>
  <owner>miguelg@chromium.org</owner>
  <summary>
    Tracks whether a permission was granted, rejected, etc. The suffix of the
    histogram indicates which particular permission.
  </summary>
</histogram>

<histogram name="ContentSettings.PermissionActionsInsecureOrigin"
    enum="PermissionAction">
  <obsolete>
    Removed 11/2015 in favor of Permissions.Action.InsecureOrigin.*
  </obsolete>
  <owner>miguelg@chromium.org</owner>
  <summary>
    Tracks whether a permission was granted, rejected, etc on an insecure
    origin. The suffix of the histogram indicates which particular permission.
  </summary>
</histogram>

<histogram name="ContentSettings.PermissionActionsSecureOrigin"
    enum="PermissionAction">
  <obsolete>
    Removed 11/2015 in favor of Permissions.Action.SecureOrigin.*
  </obsolete>
  <owner>miguelg@chromium.org</owner>
  <summary>
    Tracks whether a permission was granted, rejected, etc on a secure origin.
    The suffix of the histogram indicates which particular permission.
  </summary>
</histogram>

<histogram name="ContentSettings.PermissionRequested" enum="PermissionType">
  <owner>miguelg@chromium.org</owner>
  <summary>Number of times a given permission was requested.</summary>
</histogram>

<histogram name="ContentSettings.PermissionRequested_InsecureOrigin"
    enum="PermissionType">
  <owner>miguelg@chromium.org</owner>
  <summary>
    Number of times a given permission was requested from an insecure origin.
  </summary>
</histogram>

<histogram name="ContentSettings.PermissionRequested_SecureOrigin"
    enum="PermissionType">
  <owner>miguelg@chromium.org</owner>
  <summary>
    Number of times a given permission was requested from a secure origin.
  </summary>
</histogram>

<histogram name="ContextMenu.SaveLinkType" enum="ContextMenuSaveLinkType">
  <owner>qinmin@chromium.org</owner>
  <summary>
    Type of the url when user saves the content through the save link context
    menu.
  </summary>
</histogram>

<histogram name="ContextMenu.SelectedOption" enum="ContextMenuOption">
  <owner>newt@chromium.org</owner>
  <summary>The option that the user selected from a context menu.</summary>
</histogram>

<histogram name="ContextMenu.Shown" enum="BooleanPresent">
  <owner>mpearson@chromium.org</owner>
  <summary>
    Recorded when a context menu is shown, sliced by whether a web contents was
    present.  (It generally should be; indeed, this code path should not be
    followed when it is absent.  For instance, invoking a context menu from the
    new tab page or from the sad tab page will not cause an emission to this
    histogram.)  Note that this refers to link context menus, not the
    cut-copy-paste context menus that can appear during long presses on text on
    a web page or long presses in the omnibox.  The value of this histogram for
    &quot;present&quot; could be usefully compared with the total count of
    ContextMenu.SelectedOption to determine the clickthrough rate for context
    menus.
  </summary>
</histogram>

<histogram name="Cookie.BackingStoreUpdateResults" enum="BackingStoreResults">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Whether or not updates to the backing store succeeded or failed, recorded
    every update.
  </summary>
</histogram>

<histogram name="Cookie.BetweenAccessIntervalMinutes" units="minutes">
  <obsolete>
    Deprecated 2015-08-17 as part of cookie histogram cleanup
    (https://crbug.com/521135).
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>Intervals between access time updates for each cookie.</summary>
</histogram>

<histogram name="Cookie.CookieDeleteEquivalent" enum="CookieDeleteEquivalent">
  <owner>jww@chromium.org</owner>
  <summary>
    Record when at attempt is made to delete an equivalent cookie on a set
    cookie operation and when such a cookie is found and deleted. Also measure
    when strict secure cookie rules affect this outcome and prevent a cookie
    from being deleted.
  </summary>
</histogram>

<histogram name="Cookie.CookiePrefix" enum="CookiePrefix">
  <owner>estark@chromium.org</owner>
  <summary>
    Number of times a cookie was set with a name prefixed by
    &quot;__Secure-&quot; or &quot;__Host-&quot; (prefixes reserved by
    https://tools.ietf.org/html/draft-west-cookie-prefixes).
  </summary>
</histogram>

<histogram name="Cookie.CookiePrefixBlocked" enum="CookiePrefix">
  <owner>estark@chromium.org</owner>
  <summary>
    Number of times a cookie was set with a name prefixed by
    &quot;__Secure-&quot; or &quot;__Host-&quot; that violate cookie prefix
    rules. That is, a __Secure- cookie must be set over a secure connection with
    the Secure attribute, and a __Host- cookie must be set over a secure
    connection, with the Secure attribute, with no Domain attribute, and with a
    Path attribute of &quot;/&quot;. (As defined in
    https://tools.ietf.org/html/draft-west-cookie-prefixes.)
  </summary>
</histogram>

<histogram name="Cookie.CookieSourceScheme" enum="CookieSourceScheme">
  <owner>estark@chromium.org</owner>
  <summary>
    For each cookie added to the store, record whether its source URL has a
    cryptographic scheme, broken down by Secure and not Secure.
  </summary>
</histogram>

<histogram name="Cookie.CorruptMetaTable">
  <owner>tnagel@chromium.org</owner>
  <summary>
    Records the detection of a corrupted meta table. See http://crbug.com/111376
    .
  </summary>
</histogram>

<histogram name="Cookie.CorruptMetaTableRecoveryFailed">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Records a failure to recover a corrupted meta table. See
    http://crbug.com/111376 .
  </summary>
</histogram>

<histogram name="Cookie.Count">
  <owner>battre@chromium.org</owner>
  <summary>
    Number of cookies in the store (recorded every 10 minutes of active browsing
    time)
  </summary>
</histogram>

<histogram name="Cookie.DBSizeInKB" units="KB">
  <owner>dmikurube@chromium.org</owner>
  <summary>
    The size, on disk, of the cookie database as it is being loaded.
  </summary>
</histogram>

<histogram name="Cookie.DeletionCause" enum="CookieDeletionCause">
  <owner>rdsmith@chromium.org</owner>
  <owner>ellyjones@chromium.org</owner>
  <summary>
    For each cookie removed from the store, the reason it was removed.
  </summary>
</histogram>

<histogram name="Cookie.DomainCount">
  <obsolete>
    Deprecated 2015-08-17 as part of cookie histogram cleanup
    (https://crbug.com/521135).
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    For each domain, number of cookies in that domain (recorded every 10 minutes
    of active browsing time).
  </summary>
</histogram>

<histogram name="Cookie.DomainPerEtldp1Count">
  <obsolete>
    Deprecated 2015-08-17 as part of cookie histogram cleanup
    (https://crbug.com/521135).
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    For every top level domain, number of subdomains in that top level domain
    (recorded every 10 minutes of active browsing time).
  </summary>
</histogram>

<histogram name="Cookie.Etldp1Count">
  <obsolete>
    Deprecated 2015-08-17 as part of cookie histogram cleanup
    (https://crbug.com/521135).
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    For every top level domain, number of cookies in that domain (recorded every
    10 minutes of active browsing time).
  </summary>
</histogram>

<histogram name="Cookie.EvictedLastAccessMinutes" units="minutes">
  <owner>rdsmith@chromium.org</owner>
  <owner>ellyjones@chromium.org</owner>
  <summary>
    For each evicted (not expired) cookie, the amount of time since it was last
    used
  </summary>
</histogram>

<histogram name="Cookie.ExpirationDurationMinutes" units="minutes">
  <owner>battre@chromium.org</owner>
  <summary>Number of minutes until cookie expires when set.</summary>
</histogram>

<histogram name="Cookie.KillDatabaseResult" enum="BooleanSuccess">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Whether killing the database because it was corrupted beyond repair
    succeeded.
  </summary>
</histogram>

<histogram name="Cookie.NumberOfLoadedCookies">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    This histogram records the total number of cookies loaded from disk,
    including any cookies that are discarded during loading (for whatever
    reason).
  </summary>
</histogram>

<histogram name="Cookie.ParsedCookieStatus" enum="ParsedCookieStatus">
  <obsolete>
    Deprecated as of 9/2013. Experiment to measure control characters in cookies
    is finished.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    When parsing a cookie, indicates if control characters were present in any
    of the cookie values and if any of the cookie values were invalid.
    Specifically, checks that all of the parsed values are valid according to
    the valid token definition in Section 2.2 of RFC2616 which specifies a token
    must have no separators (i.e. no characters from the following string,
    ignoring the starting and ending single quote: '()&lt;&gt;@,;:\&quot;/[]?={}
    \t') and no control characters.
  </summary>
</histogram>

<histogram name="Cookie.PriorityBlockingTime" units="ms">
  <owner>rdsmith@chromium.org</owner>
  <summary>
    This histogram records the total duration of time during which at least one
    web request was blocked waiting for the cookie store to load. If no requests
    were affected, the value is 0. If two requests are simultaneously blocked
    for 1 second, the value is 1 second. If two requests are consecutively
    blocked for 1 second each, the value is two seconds.
  </summary>
</histogram>

<histogram name="Cookie.PriorityLoadCount">
  <owner>rdsmith@chromium.org</owner>
  <summary>
    The number of distinct Effective Top-Level Domains Plus One (ETLD+1, i.e.,
    google.com, bbc.co.uk) for which a priority cookie load occurred.
  </summary>
</histogram>

<histogram name="Cookie.ReinstatedCookies" units="seconds">
  <obsolete>
    Deprecated as of 8/2015.
  </obsolete>
  <owner>huangs@chromium.org</owner>
  <summary>
    The duration in seconds between a cookie getting evicted (due to the number
    of cookies exceeding a domain limit), and subsequently reinstated.
  </summary>
</histogram>

<histogram name="Cookie.SetAttributePairCharsValidity" enum="BooleanValid">
  <obsolete>
    Deprecated as of 9/2013. Experiment to measure control characters in cookies
    is finished.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Indicates whether a cookie attribute pair was set with both a valid key and
    a valid attribute value or not. For the key, this implies that it was a
    valid token as defined in Section 2.2 of RFC2616 which specifies a token
    must have no separators (i.e. no characters from the following string,
    ignoring the starting and ending single quote: '()&lt;&gt;@,;:\&quot;/[]?={}
    \t') and no control characters. For the value, this implies that it
    contained no control characters and no semicolon.
  </summary>
</histogram>

<histogram name="Cookie.SetNameValidity" enum="BooleanValid">
  <obsolete>
    Deprecated as of 9/2013. Experiment to measure control characters in cookies
    is finished.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Indicates whether a cookie name was set with a valid token. A valid token is
    defined in Section 2.2 of RFC2616 which specifies a token must have no
    separators (i.e. no characters from the following string, ignoring the
    starting and ending single quote: '()&lt;&gt;@,;:\&quot;/[]?={} \t') and no
    control characters.
  </summary>
</histogram>

<histogram name="Cookie.SetValueCookieValueValidity" enum="BooleanValid">
  <obsolete>
    Deprecated as of 9/2013. Experiment to measure control characters in cookies
    is finished.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Indicates whether a cookie value was valid or invalid when there was an
    attempt to set it, where a valid value is defined in RFC 6265 as ASCII
    characters excluding controls, whitspace, comma, semicolon, and backslash.
  </summary>
</histogram>

<histogram name="Cookie.Shutdown.NumberOfCookiesDeleted">
  <obsolete>
    Deprecated as of 9/2015. The associated experiment was flawed.
  </obsolete>
  <owner>erikchen@chromium.org</owner>
  <summary>
    The number of session cookies deleted on shutdown. This metric is emitted
    even if no cookies are deleted.
  </summary>
</histogram>

<histogram name="Cookie.Shutdown.TimeSpentDeletingCookies" units="ms">
  <obsolete>
    Deprecated as of 9/2015. The associated experiment was flawed.
  </obsolete>
  <owner>erikchen@chromium.org</owner>
  <summary>
    The amount of time required to delete session cookies on shutdown. This
    metric is emitted even if no cookies are deleted.
  </summary>
</histogram>

<histogram name="Cookie.Startup.NumberOfCookiesDeleted">
  <owner>erikchen@chromium.org</owner>
  <summary>
    The number of session cookies deleted on startup. This metric is emitted
    even if no cookies are deleted. This metric is not emitted if session
    cookies are restored, rather than deleted on startup.
  </summary>
</histogram>

<histogram name="Cookie.Startup.TimeSpentDeletingCookies" units="ms">
  <owner>erikchen@chromium.org</owner>
  <summary>
    The amount of time required to delete session cookies on startup. This
    metric is emitted even if no cookies are deleted. This metric is not emitted
    if session cookies are restored, rather than deleted on startup.
  </summary>
</histogram>

<histogram name="Cookie.TimeBlockedOnLoad" units="ms">
  <owner>rdsmith@chromium.org</owner>
  <summary>
    The amount of time (ms) between the cookie store load starting and
    completing.
  </summary>
</histogram>

<histogram name="Cookie.TimeDatabaseMigrationToV5" units="ms">
  <obsolete>
    Deprecated as of 04/2015. The migration has finished for most users.
  </obsolete>
  <owner>rdsmith@chromium.org</owner>
  <summary>The amount of time (ms) to migrate a v4 database to v5.</summary>
</histogram>

<histogram name="Cookie.TimeDatabaseMigrationToV6" units="ms">
  <obsolete>
    Deprecated as of 04/2015. The migration has finished for most users.
  </obsolete>
  <owner>rdsmith@chromium.org</owner>
  <summary>The amount of time (ms) to migrate a v5 database to v6.</summary>
</histogram>

<histogram name="Cookie.TimeDatabaseMigrationToV7" units="ms">
  <obsolete>
    Deprecated as of 04/2015. The migration has finished for most users.
  </obsolete>
  <owner>rdsmith@chromium.org</owner>
  <summary>The amount of time (ms) to migrate a v6 database to v7.</summary>
</histogram>

<histogram name="Cookie.TimeDatabaseMigrationToV8" units="ms">
  <obsolete>
    Deprecated as of 04/2015. The migration has finished for most users.
  </obsolete>
  <owner>rdsmith@chromium.org</owner>
  <summary>The amount of time (ms) to migrate a v7 database to v8.</summary>
</histogram>

<histogram name="Cookie.TimeDatabaseMigrationToV9" units="ms">
  <owner>erikchen@chromium.org</owner>
  <summary>The amount of time (ms) to migrate a v8 database to v9.</summary>
</histogram>

<histogram name="Cookie.TimeGet" units="ms">
  <obsolete>
    Deprecated as of 11/2014.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The amount of time (ms) to get cookies for each URL request.
  </summary>
</histogram>

<histogram name="Cookie.TimeInitializeDB" units="ms">
  <owner>nyquist@chromium.org</owner>
  <summary>The amount of time (ms) to initialize the cookies database.</summary>
</histogram>

<histogram name="Cookie.TimeInitializeDomainMap" units="ms">
  <owner>nyquist@chromium.org</owner>
  <summary>
    The amount of time (ms) to read and parse the domain map from the cookies
    database.
  </summary>
</histogram>

<histogram name="Cookie.TimeKeyLoadDBQueueWait" units="ms">
  <owner>rdsmith@chromium.org</owner>
  <summary>
    This histogram records the wall-clock delay between a priority load task
    being posted to the DB-thread and its execution.
  </summary>
</histogram>

<histogram name="Cookie.TimeKeyLoadTotalWait" units="ms">
  <owner>erikchen@chromium.org</owner>
  <summary>
    This histogram records the the total amount of time spent fetching the
    cookies associated with an eTLD+1 from disk, including time spent waiting in
    task queues.
  </summary>
</histogram>

<histogram name="Cookie.TimeLoad" units="ms">
  <owner>rdsmith@chromium.org</owner>
  <summary>
    This histogram records the sum of the durations of all initial tasks loading
    cookies from the database.
  </summary>
</histogram>

<histogram name="Cookie.TimeLoadDBQueueWait" units="ms">
  <owner>erikchen@chromium.org</owner>
  <summary>
    This histogram records the wall-clock delay between the Load task being
    posted to the DB-thread and its execution.
  </summary>
</histogram>

<histogram name="Cookie.TimeLoadDomains" units="ms">
  <owner>nyquist@chromium.org</owner>
  <summary>
    The amount of time (ms) to read the domain map from the cookies database.
  </summary>
</histogram>

<histogram name="Cookie.TimeParseDomains" units="ms">
  <owner>nyquist@chromium.org</owner>
  <summary>
    The amount of time (ms) to parse the domains already loaded from the cookies
    database and put them in the domain map.
  </summary>
</histogram>

<histogram name="Cookie.Type" enum="CookieType">
  <owner>mkwst@chromium.org</owner>
  <summary>For each cookie added to the store, record it's type(s).</summary>
</histogram>

<histogram name="Cras.StreamTimeoutMilliSeconds" units="ms">
  <owner>hychao@chromium.org</owner>
  <summary>
    The longest additional time CRAS(Chrome OS audio server) ever waits for a
    stream exceeding the timeout threshold. This value is recorded per stream
    when it gets removed and used to investigate the audio glitch/skip problem
    on Chrome OS.
  </summary>
</histogram>

<histogram name="CrashExitCodes.Extension" enum="CrashExitCodes">
  <owner>wfh@chromium.org</owner>
  <summary>The exit codes for crashed extension processes.</summary>
</histogram>

<histogram name="CrashExitCodes.Renderer" enum="CrashExitCodes">
  <owner>wfh@chromium.org</owner>
  <summary>The exit codes for crashed renderer processes.</summary>
</histogram>

<histogram name="CrashReport.BreakpadCrashDumpOutcome" enum="DumpOutcome">
  <obsolete>
    Deprecated as of 04/2016 as CrashPad does not implement this.
  </obsolete>
  <owner>siggi@chromium.org</owner>
  <summary>
    Reports the result of an attempt to report a crash dump via Breakpad.
    Success indicates only that the out-of-process crash reporter succesfully
    generated a dump. The success or failure of the eventual upload is not
    measured. This stability metric is logged from the first Chrome launch
    post-dump.
  </summary>
</histogram>

<histogram name="CrashReport.BreakpadDumpWithoutCrashOutcome"
    enum="DumpOutcome">
  <obsolete>
    Deprecated as of 04/2016 as CrashPad does not implement this.
  </obsolete>
  <owner>siggi@chromium.org</owner>
  <summary>
    Reports the result of an attempt to report a dump via Breakpad without
    crashing. Success indicates only that the out-of-process crash reporter
    succesfully generated a dump. The success or failure of the eventual upload
    is not measured. This stability metric is logged from the first Chrome
    launch post-dump.
  </summary>
</histogram>

<histogram name="CrashReport.CrashBackgroundUploadDelay" units="ms">
  <owner>olivierrobin@chromium.org</owner>
  <owner>pkl@chromium.org</owner>
  <summary>
    Time delta between when the crash took place and when the crash was uploaded
    by the app as a background task. Only logged on iOS.
  </summary>
</histogram>

<histogram name="CrashReport.PendingReportsOnBackgroundWakeUp">
  <owner>olivierrobin@chromium.org</owner>
  <owner>pkl@chromium.org</owner>
  <summary>
    The number of crash reports present when the app wakes up as a background
    task to upload crash reports. Only logged on iOS.
  </summary>
</histogram>

<histogram name="CrashReport.PermanentUploadFailure" enum="BooleanHit">
  <owner>siggi@chromium.org</owner>
  <summary>
    Counts crash reports that the Kasko crash reporter fails to upload and hands
    off to Chrome. Kasko stores the failed reports in a location specified by
    Chrome. Chrome records this metric when it detects new minidump files in
    that location. Currently the reports are discarded, but they could
    eventually be uploaded via the Chrome network stack.
  </summary>
</histogram>

<histogram name="Cros.ClickOnShelf" enum="CrosShelfClickTarget">
  <obsolete>
    Deprecated as of 12/2013. Default pinned apps trial is finished.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>Chrome OS shelf clicks.</summary>
</histogram>

<histogram name="CrosDisks.ArchiveType" enum="CrosDisksArchiveType">
  <owner>benchan@chromium.org</owner>
  <summary>
    The type of archive file that Chrome OS cros-disks daemon is requested to
    mount.
  </summary>
</histogram>

<histogram name="CrosDisks.DeviceMediaType" enum="CrosDisksDeviceMediaType">
  <owner>benchan@chromium.org</owner>
  <summary>
    The media type of removable device that Chrome OS cros-disks daemon is
    requested to mount.
  </summary>
</histogram>

<histogram name="CrosDisks.FilesystemType" enum="CrosDisksFilesystemType">
  <owner>benchan@chromium.org</owner>
  <summary>
    The type of file system that Chrome OS cros-disks daemon is requested to
    mount.
  </summary>
</histogram>

<histogram name="CrosFirstRun.DialogShown">
  <owner>dzhioev@chromium.org</owner>
  <summary>
    Records the number of times when first-run dialog was shown.
  </summary>
</histogram>

<histogram name="CrosFirstRun.FurthestStep">
  <owner>dzhioev@chromium.org</owner>
  <summary>
    Index of furthest step that was reached during tutorial. Since order of
    steps could change eventially and new steps could apear we use index here
    instead of step name.
  </summary>
</histogram>

<histogram name="CrosFirstRun.TimeSpent" units="ms">
  <owner>dzhioev@chromium.org</owner>
  <summary>The total time that user spent on first-run tutorial.</summary>
</histogram>

<histogram name="CrosFirstRun.TimeSpentOnStep" units="ms">
  <owner>dzhioev@chromium.org</owner>
  <summary>The time that user spent on some step of tutorial.</summary>
</histogram>

<histogram name="CrosFirstRun.TutorialCompletion"
    enum="CrosFirstRunTutorialCompletionType">
  <owner>dzhioev@chromium.org</owner>
  <summary>Tracks the way how user left tutorial.</summary>
</histogram>

<histogram name="CrosFirstRun.TutorialLaunched">
  <owner>dzhioev@chromium.org</owner>
  <summary>
    Records the number of times when first-run tutorial has been launched.
  </summary>
</histogram>

<histogram name="Cryptohome.ChecksumStatus" enum="CryptohomeChecksumStatus">
  <owner>dkrahn@chromium.org</owner>
  <summary>
    Checksum status of critical persistent data used by Cryptohome. This status
    is recorded every time the cryptohomed daemon reads a file.
  </summary>
</histogram>

<histogram name="Cryptohome.Errors" enum="CryptohomeError">
  <owner>dkrahn@chromium.org</owner>
  <summary>Cryptohome errors.</summary>
</histogram>

<histogram name="Cryptohome.MigrationToGaiaId"
    enum="CryptohomeMigrationToGaiaId">
  <owner>alemate@chromium.org</owner>
  <summary>
    This is the status of cryptohome migration to GaiaId. Every time user logs
    in current migration status is recorded.
  </summary>
</histogram>

<histogram name="Cryptohome.TimeToInitPkcs11" units="ms">
  <owner>dkrahn@chromium.org</owner>
  <summary>
    The amount of time (ms) for Chrome OS cryptohome daemon to initialize the
    PKCS#11. Initializations under 1 second represent checks on a previously
    initialized PKCS#11, and should be discarded for analysis.
  </summary>
</histogram>

<histogram name="Cryptohome.TimeToMountAsync" units="ms">
  <owner>dkrahn@chromium.org</owner>
  <summary>
    The amount of time (ms) for Chrome OS cryptohome to mount the encrypted home
    directory asynchronously.
  </summary>
</histogram>

<histogram name="Cryptohome.TimeToMountGuestAsync" units="ms">
  <owner>dkrahn@chromium.org</owner>
  <summary>
    The amount of time (ms) for Chrome OS cryptohome to mount the encrypted
    guest home directory asynchronously.
  </summary>
</histogram>

<histogram name="Cryptohome.TimeToMountGuestSync" units="ms">
  <owner>dkrahn@chromium.org</owner>
  <summary>
    The amount of time (ms) for Chrome OS cryptohome to mount the encrypted
    guest home directory synchronously.
  </summary>
</histogram>

<histogram name="Cryptohome.TimeToMountSync" units="ms">
  <owner>dkrahn@chromium.org</owner>
  <summary>
    The amount of time (ms) for Chrome OS cryptohome to mount the encrypted home
    directory synchronously.
  </summary>
</histogram>

<histogram name="Cryptohome.TimeToTakeTpmOwnership" units="ms">
  <owner>dkrahn@chromium.org</owner>
  <summary>
    The amount of time (ms) for Chrome OS cryptohome daemon to take ownership of
    the TPM.
  </summary>
</histogram>

<histogram name="CustomTabs.ClientAppId" enum="ClientAppId">
  <owner>yusufo@chromium.org</owner>
  <summary>
    Android: AppId declared by the launching application in EXTRA_APPLICATION_ID
    in a custom tab. This histogram is used as a means to count the total
    instances of custom tabs created meanwhile binning them across launching
    apps that have identified themselves.
  </summary>
</histogram>

<histogram name="CustomTabs.IntentToFirstCommitNavigationTime" units="ms">
  <owner>lizeb@chromium.org</owner>
  <summary>
    Time between the intent arrival in Chrome and the first navigation commit,
    if the navigation is successful. Similar in principle to
    Startup.FirstCommitNavigationTime.
  </summary>
</histogram>

<histogram name="CustomTabs.IntentToPageLoadedTime" units="ms">
  <owner>lizeb@chromium.org</owner>
  <summary>
    Time between the intent arrival in Chrome and the first &quot;page
    loaded&quot; event, if the navigation is successful.
  </summary>
</histogram>

<histogram name="CustomTabs.PredictionStatus" enum="PredictionStatus">
  <owner>lizeb@chromium.org</owner>
  <summary>
    For Custom Tabs, records whether mayLaunchUrl() has been called, and if so,
    whether the call was later matched by a URL launch.
  </summary>
</histogram>

<histogram name="CustomTabs.PredictionToLaunch" units="ms">
  <owner>lizeb@chromium.org</owner>
  <summary>
    When a URL prediction succeeds, time in ms between the prediction and the
    actual launch.
  </summary>
</histogram>

<histogram name="CustomTabs.Visible" enum="VisibleTab">
  <owner>yusufo@chromium.org</owner>
  <summary>
    Recorded only for Android. Records on every metrics upload whether the
    currently visible tab is a custom tab. The custom tab is launched by a
    client app with customized UI. Some metrics like page load time will behave
    differently for these tabs since it will be possible to warm up the browser
    process and prepare resources for specific urls ahead of time via a service
    connection. This histogram can be used to cluster these metric differently.
  </summary>
</histogram>

<histogram name="CustomTabs.WarmupStateOnLaunch" enum="WarmupStateOnLaunch">
  <owner>lizeb@chromium.org</owner>
  <summary>
    Recorded only on Android. Reports whether warmup() has been called when a
    Custom Tabs Intent is received from an application, and if so, whether the
    call could be matched with a session.
  </summary>
</histogram>

<histogram name="DataReductionProxy.AutoLoFiAccuracy"
    enum="DataReductionProxyAutoLoFiAccuracy">
  <owner>bengr@chromium.org</owner>
  <owner>tbansal@chromium.org</owner>
  <obsolete>
    Replaced by DataReductionProxy.LoFi.Accuracy.
  </obsolete>
  <summary>
    Counts the accuracy of estimated network quality when using Lo-Fi. Counters
    are incremented when a main frame URL request is handled by Data Reduction
    Proxy and session was in Auto Lo-Fi enabled field trial.
  </summary>
</histogram>

<histogram name="DataReductionProxy.AutoLoFiRequestHeaderState"
    enum="DataReductionProxyAutoLoFiRequestHeaderState">
  <owner>tbansal@chromium.org</owner>
  <summary>
    Counts the changes in the state of Lo-Fi request header (q=low) being added
    to the Chrome proxy request header. Counters are incremented when a main
    frame URL request is handled by Data Reduction Proxy and session was in Auto
    Lo-Fi enabled field trial.
  </summary>
</histogram>

<histogram name="DataReductionProxy.BlockTypeFallback"
    enum="DataReductionProxyBypassType">
  <owner>bengr@chromium.org</owner>
  <owner>marq@chromium.org</owner>
  <owner>megjablon@chromium.org</owner>
  <summary>
    Counts various events that trigger Chrome to block the fallback
    configuration of the data reduction proxy.
  </summary>
</histogram>

<histogram name="DataReductionProxy.BlockTypePrimary"
    enum="DataReductionProxyBypassType">
  <owner>bengr@chromium.org</owner>
  <owner>marq@chromium.org</owner>
  <owner>megjablon@chromium.org</owner>
  <summary>
    Counts various events that trigger Chrome to block the primary configuration
    of the data reduction proxy.
  </summary>
</histogram>

<histogram name="DataReductionProxy.BypassedBytes" units="bytes">
  <owner>bengr@chromium.org</owner>
  <owner>megjablon@chromium.org</owner>
  <summary>
    Counts the response bytes that did not go through the data reduction proxy
    as the result of a bypass event.
  </summary>
</histogram>

<histogram name="DataReductionProxy.BypassedBytes.NotBypassed" units="bytes">
  <owner>bengr@chromium.org</owner>
  <owner>megjablon@chromium.org</owner>
  <summary>
    Counts the response bytes that went through the data reduction proxy and
    were not bypassed.
  </summary>
</histogram>

<histogram name="DataReductionProxy.BypassInfoFallback"
    enum="DataReductionProxyBypassEventType_Deprecated">
  <obsolete>
    Deprecated as of 6/2014, replaced by DataReductionProxy.BypassTypeFallback.
  </obsolete>
  <owner>bengr@chromium.org</owner>
  <owner>marq@chromium.org</owner>
  <summary>
    Counts various events that trigger Chrome to bypass the fallback
    configuration of the data reduction proxy.
  </summary>
</histogram>

<histogram name="DataReductionProxy.BypassInfoPrimary"
    enum="DataReductionProxyBypassEventType_Deprecated">
  <obsolete>
    Deprecated as of 6/2014, replaced by DataReductionProxy.BypassTypePrimary.
  </obsolete>
  <owner>bengr@chromium.org</owner>
  <owner>marq@chromium.org</owner>
  <summary>
    Counts various events that trigger Chrome to bypass the primary
    configuration of the data reduction proxy.
  </summary>
</histogram>

<histogram name="DataReductionProxy.BypassOnNetworkErrorFallback"
    enum="NetErrorCodes">
  <owner>bengr@chromium.org</owner>
  <summary>
    Positive net error code that caused the fallback data reduction proxy to be
    bypassed and put on the proxy retry list. Called after a failure to connect
    or resolve a host name.
  </summary>
</histogram>

<histogram name="DataReductionProxy.BypassOnNetworkErrorPrimary"
    enum="NetErrorCodes">
  <owner>bengr@chromium.org</owner>
  <summary>
    Positive net error code that caused the primary data reduction proxy to be
    bypassed and put on the proxy retry list. Called after a failure to connect
    or resolve a host name.
  </summary>
</histogram>

<histogram name="DataReductionProxy.BypassTypeFallback"
    enum="DataReductionProxyBypassType">
  <owner>bengr@chromium.org</owner>
  <owner>marq@chromium.org</owner>
  <owner>megjablon@chromium.org</owner>
  <summary>
    Counts various events that trigger Chrome to bypass the fallback
    configuration of the data reduction proxy.
  </summary>
</histogram>

<histogram name="DataReductionProxy.BypassTypePrimary"
    enum="DataReductionProxyBypassType">
  <owner>bengr@chromium.org</owner>
  <owner>marq@chromium.org</owner>
  <owner>megjablon@chromium.org</owner>
  <summary>
    Counts various events that trigger Chrome to bypass the primary
    configuration of the data reduction proxy.
  </summary>
</histogram>

<histogram name="DataReductionProxy.ConfigFetchLostBytesCL">
  <obsolete>
    Removed in Feb. 2016
  </obsolete>
  <owner>bengr@chromium.org</owner>
  <summary>
    Size of the response body. This is the actual number of bytes received,
    which usually agrees with but is not necessarily the same as the size
    specified by the Content-Length header. Only recorded if the request is sent
    while a simulated Data Reduction Proxy configuration fetch is taking place.
  </summary>
</histogram>

<histogram name="DataReductionProxy.ConfigFetchLostBytesDiff">
  <obsolete>
    Removed in Feb. 2016
  </obsolete>
  <owner>bengr@chromium.org</owner>
  <summary>
    The difference between the size specified in the X-Original-Content-Length
    header and the size of the response body. Only recorded if the request is
    sent while a simulated Data Reduction Proxy configuration fetch is taking
    place. Only positive values are logged, so if X-Original-Content-Length is
    not specified or if it equals or exceeds the content length, it is not
    logged.
  </summary>
</histogram>

<histogram name="DataReductionProxy.ConfigFetchLostBytesOCL">
  <obsolete>
    Removed in Feb. 2016
  </obsolete>
  <owner>bengr@chromium.org</owner>
  <summary>
    Size specified in the X-Original-Content-Length header. If this header is
    not present in the response, the size of the response body is used. Only
    recorded if the request is sent while a simulated Data Reduction Proxy
    configuration fetch is taking place.
  </summary>
</histogram>

<histogram name="DataReductionProxy.ConfigService.AuthExpired"
    enum="BooleanExpired">
  <owner>bengr@chromium.org</owner>
  <summary>
    Total number of authentication required responses received from the Data
    Reduction Proxy.

    An &quot;Unexpired&quot; value is recorded every time a new client config is
    fetched and parsed successfully. An &quot;Expired&quot; value is recorded
    every time Chrome receives an authentication failure from the data saver
    proxy.
  </summary>
</histogram>

<histogram name="DataReductionProxy.ConfigService.AuthExpiredSessionKey"
    enum="DataReductionProxyConfigServiceAuthExpiredSessionKey">
  <owner>bengr@chromium.org</owner>
  <owner>tbansal@chromium.org</owner>
  <summary>
    On receiving an authentication failure from the data reduction proxy,
    records whether the session key used in the request matches the current
    session key.

    Recorded every time Chrome receives an authentication failure from the data
    saver proxy.
  </summary>
</histogram>

<histogram name="DataReductionProxy.ConfigService.AuthFailure.LatencyPenalty"
    units="ms">
  <owner>bengr@chromium.org</owner>
  <owner>tbansal@chromium.org</owner>
  <summary>
    Time from when the request starts to the time when the auth failure is
    received from the data saver proxy.

    Recorded every time an auth failure is received from the data saver proxy.
  </summary>
</histogram>

<histogram
    name="DataReductionProxy.ConfigService.FetchFailedAttemptsBeforeSuccess">
  <owner>bengr@chromium.org</owner>
  <summary>
    The number of failed attempts when retrieving the configuration from the
    Data Reduction Proxy API before a successful attempt took place.

    Recorded every time a new client config is fetched and parsed successfully.
    If the device has a valid connection type but no Internet connectivity, this
    count will keep increasing.
  </summary>
</histogram>

<histogram name="DataReductionProxy.ConfigService.FetchLatency" units="ms">
  <owner>bengr@chromium.org</owner>
  <summary>
    Time from when the Data Reduction Proxy configuration request starts until
    it completes.

    Recorded every time a new client config is fetched and parsed successfully.
  </summary>
</histogram>

<histogram name="DataReductionProxy.ConfigService.FetchResponseCode"
    enum="HttpResponseCode">
  <owner>bengr@chromium.org</owner>
  <summary>
    Count per HttpResponseCode when attempting to retrieve the Data Reduction
    Proxy configuration from the Data Reduction Proxy API.
  </summary>
</histogram>

<histogram name="DataReductionProxy.ConfigService.HTTPRequests"
    enum="DataReductionProxyConfigServiceHTTPRequests">
  <owner>bengr@chromium.org</owner>
  <owner>tbansal@chromium.org</owner>
  <summary>
    Upper bound on the count of HTTP requests that did or did not go through the
    data saver proxy.

    An HTTP request may not go through data saver proxy if the config was
    unavailable, due to local bypass rules, or due to server side bypasses. If
    data saver is turned on, this metric is recorded every time proxy is
    resolved for an HTTP request.
  </summary>
</histogram>

<histogram name="DataReductionProxy.EnabledState"
    enum="DataReductionProxyEnabledState">
  <owner>bengr@chromium.org</owner>
  <owner>rajendrant@chromium.org</owner>
  <summary>
    Samples of user interactions with the Data Saver settings menu across all
    platforms (android, IOS, desktop extension). Data is collected whenever user
    toggles the ON/OFF switch in the settings menu for reducing data usage.

    For desktop, Off-to-On/On-to-Off histogram count will increment when the
    data saver extension is installed/uninstalled respectively as well.
  </summary>
</histogram>

<histogram name="DataReductionProxy.HeaderTamperDetectionHTTP">
  <owner>xingx@chromium.org</owner>
  <owner>bolian@chromium.org</owner>
  <owner>bengr@chromium.org</owner>
  <summary>
    For each carrier, the total number of HTTP responses that have been checked
    for tampering. This assumes the data reduction proxy injected fingerprints
    have not been tampered with. Only the data reduction proxy responses with
    200 OK response code are checked.
  </summary>
</histogram>

<histogram name="DataReductionProxy.HeaderTamperDetectionHTTPS">
  <owner>xingx@chromium.org</owner>
  <owner>bolian@chromium.org</owner>
  <owner>bengr@chromium.org</owner>
  <summary>
    For each carrier, the total number of HTTPS responses that have been checked
    for tampering. This assumes the data reduction proxy injected fingerprints
    have not been tampered with. Only the data reduction proxy responses with
    200 OK response code are checked.
  </summary>
</histogram>

<histogram name="DataReductionProxy.HeaderTamperDetectionPassHTTP">
  <owner>xingx@chromium.org</owner>
  <owner>bolian@chromium.org</owner>
  <owner>bengr@chromium.org</owner>
  <summary>
    For each carrier, the total number of HTTP responses that passed the tamper
    detection. This assumes the data reduction proxy injected fingerprints have
    not been tampered with. Only the data reduction proxy responses with 200 OK
    response code are checked.
  </summary>
</histogram>

<histogram name="DataReductionProxy.HeaderTamperDetectionPassHTTPS">
  <owner>xingx@chromium.org</owner>
  <owner>bolian@chromium.org</owner>
  <owner>bengr@chromium.org</owner>
  <summary>
    For each carrier, the total number of HTTPs responses that passed the tamper
    detection. This assumes the data reduction proxy injected fingerprints have
    not been tampered with. Only the data reduction proxy responses with 200 OK
    response code are checked.
  </summary>
</histogram>

<histogram name="DataReductionProxy.HeaderTamperedHTTP">
  <owner>xingx@chromium.org</owner>
  <owner>bolian@chromium.org</owner>
  <owner>bengr@chromium.org</owner>
  <summary>
    The total number of HTTP responses that some part (specified by suffix name)
    have been tampered with. This assumes the data reduction proxy injected
    fingerprints have not been tampered with. Only the data reduction proxy
    responses with 200 OK response code are checked.
  </summary>
</histogram>

<histogram name="DataReductionProxy.HeaderTamperedHTTPS">
  <owner>xingx@chromium.org</owner>
  <owner>bolian@chromium.org</owner>
  <owner>bengr@chromium.org</owner>
  <summary>
    The total number of HTTPS responses that some part (specified by suffix
    name) have been tampered with. This assumes the data reduction proxy
    injected fingerprints have not been tampered with. Only the data reduction
    proxy responses with 200 OK response code are checked.
  </summary>
</histogram>

<histogram name="DataReductionProxy.HistoricalDataUsageLoadTime" units="ms">
  <owner>kundaji@chromium.org</owner>
  <summary>
    Time taken to load historical data usage from Level DB into memory. This UMA
    is reported each time the method to load historical data usage is called,
    which happens when user views data usage history.
  </summary>
</histogram>

<histogram name="DataReductionProxy.LevelDBOpenStatus"
    enum="DataReductionProxyStoreStatus">
  <owner>kundaji@chromium.org</owner>
  <summary>Status of calling Open() on Data Reduction Proxy LevelDB.</summary>
</histogram>

<histogram name="DataReductionProxy.LevelDBSize" units="KB">
  <owner>kundaji@chromium.org</owner>
  <summary>Size of Data Reduction Proxy LevelDB measured at startup.</summary>
</histogram>

<histogram name="DataReductionProxy.LoFi.Accuracy"
    enum="DataReductionProxyAutoLoFiAccuracy">
  <owner>bengr@chromium.org</owner>
  <owner>tbansal@chromium.org</owner>
  <summary>
    Records the accuracy of estimated network quality when using Lo-Fi. Network
    quality predicted at the time of navigation start is compared with the
    network quality observed during the specified time interval following the
    start of the navigation. This metric is recorded only when the session is in
    Lo-Fi enabled field trial.
  </summary>
</histogram>

<histogram name="DataReductionProxy.LoFi.ImplicitOptOutAction"
    enum="DataReductionProxyLoFiImplicitOptOutAction">
  <owner>bengr@chromium.org</owner>
  <owner>megjablon@chromium.org</owner>
  <summary>
    Counts of Lo-Fi implicit opt out actions. If the user chooses to &quot;Load
    image&quot; for k pages in a session, LoFi is disabled for the remainder of
    that session. If Lo-Fi is disabled for j consecutive sessions, Lo-Fi is
    disabled for that user until the next implicit opt out epoch, which may be
    in a later session, or never. k and j default to 3 and are assigned via the
    DataReductionProxyLoFi field trial.
  </summary>
</histogram>

<histogram name="DataReductionProxy.LoFi.SessionState"
    enum="DataReductionProxyLoFiSessionState">
  <owner>bengr@chromium.org</owner>
  <owner>megjablon@chromium.org</owner>
  <summary>
    Tracks Lo-Fi usage at the granularity of browser sessions. Counts for each
    session if Lo-Fi was used or not. In the case where Lo-Fi was not used,
    records if it was because the network quality was always good or because the
    user had implicitly opted out. The session where a user permanently opts out
    is counted in the Lo-Fi used bucket.
  </summary>
</histogram>

<histogram name="DataReductionProxy.LoFi.TransformationType"
    enum="DataReductionProxyLoFiTransformationType">
  <owner>bengr@chromium.org</owner>
  <owner>megjablon@chromium.org</owner>
  <summary>
    Counts of pageloads that received or requested, but did not receive, various
    Lo-Fi transformations.
  </summary>
</histogram>

<histogram name="DataReductionProxy.LoFi.UIAction"
    enum="DataReductionProxyLoFiUIAction">
  <owner>bengr@chromium.org</owner>
  <owner>megjablon@chromium.org</owner>
  <summary>
    Samples of user interactions with the Lo-Fi snackbar and context menu
    option. These samples include:

    Displays and clicks on the &quot;Load images&quot; snackbar. Displays and
    clicks on the &quot;Load image&quot; and &quot;Load images&quot;context menu
    options. Count of pages where the user has clicked &quot;Load image&quot; at
    least once.
  </summary>
</histogram>

<histogram name="DataReductionProxy.MissingViaHeader.Bytes" units="bytes">
  <owner>bengr@chromium.org</owner>
  <owner>sclittle@chromium.org</owner>
  <summary>
    Counts the response bytes of responses that Chrome expected to come through
    a data reduction proxy and have the data reduction proxy via header, but
    where the data reduction proxy via header was missing. Note that this does
    not include responses that were bypassed.
  </summary>
</histogram>

<histogram name="DataReductionProxy.MissingViaHeader.ResponseCode">
  <owner>bengr@chromium.org</owner>
  <owner>sclittle@chromium.org</owner>
  <summary>
    Counts the different HTTP response codes of responses that Chrome expected
    to come through a data reduction proxy and have the data reduction proxy via
    header, but where the data reduction proxy via header was missing.
  </summary>
</histogram>

<histogram name="DataReductionProxy.NetworkChangeEvents"
    enum="DataReductionProxyNetworkChangeEvent">
  <owner>bengr@chromium.org</owner>
  <owner>megjablon@chromium.org</owner>
  <summary>
    Counts the number of times various events occur when the data reduction
    proxy is enabled and the IP address of the client changes.
  </summary>
</histogram>

<histogram name="DataReductionProxy.ProbeURL"
    enum="DataReductionProxyProbeURLFetchResult">
  <owner>bengr@chromium.org</owner>
  <owner>marq@chromium.org</owner>
  <summary>
    Counts various outcomes of requesting the data reduction proxy's probe URL.
  </summary>
</histogram>

<histogram name="DataReductionProxy.ProbeURLNetError" enum="NetErrorCodes">
  <owner>bengr@chromium.org</owner>
  <owner>megjablon@chromium.org</owner>
  <summary>
    Reports the type of network error when the data reduction proxy probe fails
    due to a network error.
  </summary>
</histogram>

<histogram name="DataReductionProxy.PromoAction"
    enum="DataReductionProxyPromoAction">
  <obsolete>
    Deprecated as of 3/2015, replaced by DataReductionProxy.UIAction.
  </obsolete>
  <owner>bengr@chromium.org</owner>
  <owner>marq@chromium.org</owner>
  <summary>
    Samples which method was used by the user to dismiss the proxy promo. This
    is sampled when the promo leaves view, with the sampled value depending on
    which of four possible controls the user used.
  </summary>
</histogram>

<histogram name="DataReductionProxy.ProxyPrefMigrationResult"
    enum="DataReductionProxyProxyPrefMigrationResult">
  <owner>sclittle@chromium.org</owner>
  <summary>
    Records the result of migrating the Data Reduction Proxy away from being
    configured via a proxy preference, including cases when no migration action
    was taken.
  </summary>
</histogram>

<histogram name="DataReductionProxy.RequestCompletionErrorCodes"
    enum="NetErrorCodes">
  <obsolete>
    Deprecated in 2/2016, since it didn't get recorded for many kinds of error
    codes when it should have been recorded, and
    Net.HttpRequestCompletionErrorCodes is a good enough replacement when
    filtering for clients with the Data Reduction Proxy enabled.
  </obsolete>
  <owner>sclittle@chromium.org</owner>
  <owner>bengr@chromium.org</owner>
  <summary>
    Reports the different network errors that requests that try to use the data
    reduction proxy are completing with, including OK and ABORTED.
  </summary>
</histogram>

<histogram name="DataReductionProxy.RequestCompletionErrorCodes.MainFrame"
    enum="NetErrorCodes">
  <obsolete>
    Deprecated in 2/2016, since it didn't get recorded for many kinds of error
    codes when it should have been recorded, and
    Net.HttpRequestCompletionErrorCodes is a good enough replacement when
    filtering for clients with the Data Reduction Proxy enabled.
  </obsolete>
  <owner>sclittle@chromium.org</owner>
  <owner>bengr@chromium.org</owner>
  <summary>
    Reports the different network errors that main frame resource requests that
    try to use the data reduction proxy are completing with, including OK and
    ABORTED.
  </summary>
</histogram>

<histogram name="DataReductionProxy.ResponseProxyServerStatus"
    enum="DataReductionProxyResponseProxyServerStatus">
  <owner>sclittle@chromium.org</owner>
  <owner>bengr@chromium.org</owner>
  <summary>
    Reports the state of the proxy server field in the response seen by the Data
    Reduction Proxy bypass logic.
  </summary>
</histogram>

<histogram name="DataReductionProxy.SecureProxyCheck.Latency" units="ms">
  <owner>bengr@chromium.org</owner>
  <summary>
    Time from when the Data Reduction Proxy secure proxy check starts until it
    completes.
  </summary>
</histogram>

<histogram name="DataReductionProxy.SettingsConversion"
    enum="DataReductionProxySettingsConversion">
  <obsolete>
    Deprecated as of 3/2015, replaced by DataReductionProxy.UIAction.
  </obsolete>
  <owner>bengr@chromium.org</owner>
  <owner>marq@chromium.org</owner>
  <summary>
    Samples of user interactions with the ON/OFF switch in the settings menu for
    reducing data usage. Only the setting changes between entering the reducing
    data usage setting menu and leaving the menu will be sampled. So if a user
    enters the menu with OFF and leaves it with OFF, it is counted as one OFF to
    OFF conversion regardless of how many times he or she toggles the ON/OFF
    switch.
  </summary>
</histogram>

<histogram name="DataReductionProxy.StartupState"
    enum="DataReductionProxyStartupState">
  <owner>bengr@chromium.org</owner>
  <owner>marq@chromium.org</owner>
  <summary>
    Samples of the state of the data reduction proxy on Chrome startup. The
    proxy will either be unavailable (the feature hasn't been rolled out to this
    user yet), not enabled (the feature is available but the user doesn't have
    it turned on), or enabled (the feature is enabled and turned on).
  </summary>
</histogram>

<histogram name="DataReductionProxy.UIAction" enum="DataReductionProxyUIAction">
  <owner>bengr@chromium.org</owner>
  <owner>megjablon@chromium.org</owner>
  <summary>
    Samples of user interactions with the Data Reduction Proxy promo, First Run
    Experience, and settings menu. All samples are mutually exclusive. These
    samples include:

    The user interactions with the promo. On Android, there are three actions
    that dismiss the promo (enable, dismiss, and learn more) and on iOS there is
    a toggle to enable the proxy. This is sampled when the promo leaves view. If
    the user clicks the link to the settings menu, the state of the ON/OFF
    switch in the menu is sampled when the view is exited.

    Any other user interaction with the the ON/OFF switch in the settings menu
    for reducing data usage. Only the setting changes between entering the
    reducing data usage setting menu and leaving the menu will be sampled
    regardless of how many times he or she toggles the ON/OFF switch. Other
    samples that report ON/OFF settings menu changes are not also reported here.

    The user interactions with the First Run Experience. On Android when the
    user sees the FRE card, the Data Reduction Proxy defaults to ON. The user
    can disable the proxy via a switch on the card. The state of the proxy is
    sampled when the First Run Experience is completed and only reported if the
    Data Reduction Proxy card was shown.
  </summary>
</histogram>

<histogram name="DataUsage.MatchingRulesCount.Invalid" units="count">
  <owner>bengr@chromium.org</owner>
  <owner>rajendrant@chromium.org</owner>
  <summary>
    The number of invalid matching rules fetched from the platform external data
    use observer. A sample is recorded everytime fetch done callback is called.
  </summary>
</histogram>

<histogram name="DataUsage.MatchingRulesCount.Valid" units="count">
  <owner>bengr@chromium.org</owner>
  <owner>rajendrant@chromium.org</owner>
  <summary>
    The number of valid matching rules fetched from the platform external data
    use observer. A sample is recorded everytime fetch done callback is called.
  </summary>
</histogram>

<histogram name="DataUsage.Perf.MatchingRuleFirstFetchDuration" units="ms">
  <owner>bengr@chromium.org</owner>
  <owner>rajendrant@chromium.org</owner>
  <summary>
    The time taken in milliseconds to fetch the matching rules for the first
    time from the platform external data use observer. This measures the
    duration from the start time of Chromium to the time the rules are returned
    asynchronously. A sample is recorded when the first fetch done callback is
    called.
  </summary>
</histogram>

<histogram name="DataUsage.Perf.ReportSubmissionDuration" units="ms">
  <owner>bengr@chromium.org</owner>
  <owner>rajendrant@chromium.org</owner>
  <summary>
    The time taken in milliseconds to submit the data use reports to the
    platform external data use observer. This measures the duration from the
    time of report submission to the time report submission done asynchronous
    callback is received. A sample is recorded everytime report submission done
    callback is received.
  </summary>
</histogram>

<histogram name="DataUsage.Perf.URLRegexMatchDuration" units="ms">
  <owner>bengr@chromium.org</owner>
  <owner>rajendrant@chromium.org</owner>
  <summary>
    The time taken in milliseconds for a regular expression to parse an URL. A
    sample is recorded evertime regular expression parsing is done for an URL.
  </summary>
</histogram>

<histogram name="DataUsage.ReportSubmission.Bytes" units="bytes">
  <owner>bengr@chromium.org</owner>
  <owner>tbansal@chromium.org</owner>
  <summary>
    Count of bytes in the data use reports that were intended to be submitted to
    the platform external data use observer.
  </summary>
</histogram>

<histogram name="DataUsage.ReportSubmissionResult"
    enum="DataUsageReportSubmissionResult">
  <owner>bengr@chromium.org</owner>
  <owner>tbansal@chromium.org</owner>
  <summary>Result of data usage report submission.</summary>
</histogram>

<histogram name="DataUsage.TabModel.ExpiredActiveTabEntryRemovalDuration"
    units="ms">
  <owner>bengr@chromium.org</owner>
  <owner>rajendrant@chromium.org</owner>
  <summary>
    The duration from the start time of a tab entry's latest data usage tracking
    session, till when the entry is expired and removed from the tab model. This
    is for tab entries that are still actively tracking data usage for a
    Chromium tab.

    Tab model maintains the tab entries, each pertaining to tracking sessions of
    a single Chromium tab. These entries are considered expired after some
    duration and can be removed from the tab model after that. The sample is
    taken when an expired tab entry still tracking data usage is removed from
    the tab model.
  </summary>
</histogram>

<histogram name="DataUsage.TabModel.ExpiredInactiveTabEntryRemovalDuration"
    units="ms">
  <owner>bengr@chromium.org</owner>
  <owner>rajendrant@chromium.org</owner>
  <summary>
    The duration from the end time of a tab entry's latest data usage tracking
    session, till when the entry is expired and removed from the tab model. This
    is for tab entries that are not actively tracking data usage for a Chromium
    tab.

    Tab model maintains the tab entries, each pertaining to tracking sessions of
    a single Chromium tab. These entries are considered expired after some
    duration and can be removed from the tab model after that. The sample is
    taken when an expired inactive tab entry is removed from the tab model.
  </summary>
</histogram>

<histogram name="DataUsage.TabModel.OldInactiveSessionRemovalDuration"
    units="ms">
  <owner>bengr@chromium.org</owner>
  <owner>rajendrant@chromium.org</owner>
  <summary>
    The duration from the end time of a data usage tracking session, till when
    the tracking session is removed from the tab model. This is for old tracking
    sessions that are not actively tracking data usage.

    Tab model maintains a limited number of tracking sessions per Chromium tab.
    When this limit is reached oldest inactive tracking sessions are removed.
    The sample is taken when an old inactive tracking session of a tab is
    removed from the tab model.
  </summary>
</histogram>

<histogram name="DataUsage.TabModel.TrackingSessionLifetime" units="ms">
  <owner>bengr@chromium.org</owner>
  <owner>rajendrant@chromium.org</owner>
  <summary>
    The lifetime of a data usage tracking session of a Chromium tab, maintained
    by the tab model. This is the duration between the time tracking started due
    to an entry event and ended with an exit event. The sample is taken when the
    data usage tracking session ends.
  </summary>
</histogram>

<histogram name="DataUsage.TabModel.UnexpiredTabEntryRemovalDuration"
    units="ms">
  <owner>bengr@chromium.org</owner>
  <owner>rajendrant@chromium.org</owner>
  <summary>
    The duration from the end time (start time, if still active) of a tab
    entry's latest data usage tracking session, till when the entry is removed
    from the tab model. This is for tab entries that are not expired yet, and
    removed from the tab model.

    Tab model maintains a limited number of entries, each pertaining to tracking
    sessions of a single Chromium tab. When this limit is reached even after
    removing expired tab entries, then oldest unexpired tab entries are removed.
    The sample is taken when an unexpired tab entry is removed from the tab
    model.
  </summary>
</histogram>

<histogram name="DataUsage.UIAction" enum="DataUsageUIAction">
  <owner>bengr@chromium.org</owner>
  <owner>megjablon@chromium.org</owner>
  <summary>
    Samples of user interactions with the Data Use snackbar and dialog. These
    samples include:

    Displays of the snackbar that indicates the start of data use tracking and
    clicks on its &quot;More&quot; button. Displays of snackbar that indicates
    the end of data use tracking and clicks on its &quot;More&quot; button.
    Displays of the dialog that indicates the end of data use tracking and the
    user interactions with it, which include: clicking &quot;Continue&quot;,
    clicking &quot;Cancel&quot;, clicking &quot;Learn more&quot;, and opting out
    of seeing the dialog. If the user opts out of seeing the dialog, he or she
    will see the snackbar that indicates the end of data use tracking from then
    on.
  </summary>
</histogram>

<histogram name="DataUse.MessageSize" units="bytes">
  <owner>amohammadkhan@chromium.org</owner>
  <owner>bengr@chromium.org</owner>
  <summary>
    The request and reponse size of the messages exchanged by a service. It is
    logged when the URLReqeust of a service is completed. The service name is
    added as a suffix to this histogram name.
  </summary>
</histogram>

<histogram name="DataUse.MessageSize.AllServices" enum="DataUseServices">
  <owner>amohammadkhan@chromium.org</owner>
  <owner>bengr@chromium.org</owner>
  <summary>
    The request and reponse size of the messages exchanged by all the services.
    Whenever a URLRequest of a service is completed, the number of exchanged
    bytes is logged in this histogram. The buckets in this histogram are
    services, so it makes it possible to compare the use of different services
    in different conditions. Different conditions are added as suffixes to this
    histogram. If the OS is not Android all the requests are considered
    foreground.
  </summary>
</histogram>

<histogram name="DataUse.Sync.Download.Bytes" enum="SyncModelTypes">
  <owner>amohammadkhan@chromium.org</owner>
  <owner>bengr@chromium.org</owner>
  <summary>
    Number of downloaded bytes of different data types in Sync service for
    received updates. It is updated when an update message is received from sync
    server.
  </summary>
</histogram>

<histogram name="DataUse.Sync.Download.Count" enum="SyncModelTypes">
  <owner>amohammadkhan@chromium.org</owner>
  <owner>bengr@chromium.org</owner>
  <summary>
    Number of downloaded entities of different data types in Sync service for
    received updates. It is updated when an update message is received from sync
    server.
  </summary>
</histogram>

<histogram name="DataUse.Sync.ProgressMarker.Bytes" enum="SyncModelTypes">
  <owner>amohammadkhan@chromium.org</owner>
  <owner>bengr@chromium.org</owner>
  <summary>
    Number of downloaded bytes of ProgressMarker of different data types in Sync
    service for received updates. It is updated when an update message is
    received from sync server.
  </summary>
</histogram>

<histogram name="DataUse.Sync.Upload.Bytes" enum="SyncModelTypes">
  <owner>amohammadkhan@chromium.org</owner>
  <owner>bengr@chromium.org</owner>
  <summary>
    Number of uploaded bytes of different data types in Sync service for sent
    commits. Updated when a commit message is sent to sync server.
  </summary>
</histogram>

<histogram name="DataUse.Sync.Upload.Count" enum="SyncModelTypes">
  <owner>amohammadkhan@chromium.org</owner>
  <owner>bengr@chromium.org</owner>
  <summary>
    Number of uploaded entities of different data types in Sync service for sent
    commits. Updated when a commit message is sent to sync server.
  </summary>
</histogram>

<histogram name="DataUse.TrafficSize.System" units="bytes">
  <owner>amohammadkhan@chromium.org</owner>
  <owner>bengr@chromium.org</owner>
  <summary>
    The total data use of Chrome's services. There is no ResourceRequestInfo
    attached to these requests. If the OS is not Android all the requests are
    considered foreground.
  </summary>
</histogram>

<histogram name="DataUse.TrafficSize.User" units="bytes">
  <owner>amohammadkhan@chromium.org</owner>
  <owner>bengr@chromium.org</owner>
  <summary>
    The total amount of data use of Chrome for user traffic. This traffic has
    content::ResourceRequestInfo attached to its request. If the OS is not
    Android all the requests are considered foreground.
  </summary>
</histogram>

<histogram name="DefaultBrowser.ActivateSettings.ErrorHresult" enum="Hresult">
  <owner>pmonette@chromium.org</owner>
  <owner>grt@chromium.org</owner>
  <summary>
    The HRESULT from ActivateApplication when opening the Win10+ settings page
    fails.
  </summary>
</histogram>

<histogram name="DefaultBrowser.AsyncSetAsDefault.Duration" units="ms">
  <obsolete>
    Deprecated 2015/11. Renamed to DefaultBrowser.SetDefaultAsyncDuration.
  </obsolete>
  <owner>pmonette@chromium.org</owner>
  <summary>
    How long it took to set Chrome as the default browser asynchronously in
    Windows 10+. The duration is recorded only on Success, Failure, Abandoned
    and Retry result codes.
  </summary>
</histogram>

<histogram name="DefaultBrowser.AsyncSetAsDefault.Result"
    enum="DefaultBrowserAsyncAttemptResult">
  <obsolete>
    Deprecated 2015/11. Renamed to DefaultBrowser.SetDefaultResult.
  </obsolete>
  <owner>pmonette@chromium.org</owner>
  <summary>
    The count of how many times users were successfully able to set Chrome as
    the default browser asynchronously in Windows 10+.
  </summary>
</histogram>

<histogram name="DefaultBrowser.InfoBar.UserInteraction"
    enum="DefaultBrowserInfoBarUserInteraction">
  <owner>pmonette@chromium.org</owner>
  <summary>
    Possible user interactions with the default browser info bar.
  </summary>
</histogram>

<histogram name="DefaultBrowser.InteractionResult"
    enum="MakeChromeDefaultResult">
  <owner>gab@chromium.org</owner>
  <summary>
    Results of interaction with set-as-default dialog in Win8+ first run flow.
  </summary>
</histogram>

<histogram name="DefaultBrowser.SetDefaultAsyncDuration" units="ms">
  <obsolete>
    Deprecated 2016/03. The async set-as-default experiments are finished.
  </obsolete>
  <owner>pmonette@chromium.org</owner>
  <summary>
    How long it took to set Chrome as the default browser asynchronously in
    Windows 10+. The duration is recorded only on Success, Failure, Abandoned,
    Retry and NoErrorsNotDefault result codes.
  </summary>
</histogram>

<histogram name="DefaultBrowser.SetDefaultResult"
    enum="SetDefaultAttemptResult">
  <obsolete>
    Deprecated 2016/03.
  </obsolete>
  <owner>pmonette@chromium.org</owner>
  <summary>
    The outcome of an attempt to set Chrome as the user's default browser.
  </summary>
</histogram>

<histogram name="DefaultBrowser.SetDefaultResult2" enum="DefaultWebClientState">
  <owner>pmonette@chromium.org</owner>
  <summary>
    The outcome of an attempt to set Chrome as the user's default browser.
  </summary>
</histogram>

<histogram name="DefaultBrowser.SettingsInteraction.ConcludeReason"
    enum="SettingsInteractionConcludeReason">
  <owner>pmonette@chromium.org</owner>
  <summary>
    The reason why the default browser settings interaction concluded on Windows
    10.
  </summary>
</histogram>

<histogram name="DefaultBrowser.SettingsInteraction.RegistryWatcherDuration"
    units="ms">
  <owner>pmonette@chromium.org</owner>
  <summary>
    The registry keys for the default browser protocols (http/https) are
    monitored to know when the user finished interacting with the system
    settings. This is how long it took for the last registry watcher to get
    signaled.
  </summary>
</histogram>

<histogram name="DefaultBrowser.State" enum="DefaultBrowserState">
  <owner>gab@chromium.org</owner>
  <summary>Whether Chrome was the default browser when it started up.</summary>
</histogram>

<histogram name="DefaultBrowserWarning.DontSetAsDefault" enum="BooleanHit">
  <obsolete>
    Deprecated 2015/11. The same information is available as the value Failure
    in DefaultBrowser.SetDefaultResult.
  </obsolete>
  <owner>gab@chromium.org</owner>
  <summary>
    In the make-default infobar, the user explicitly declined to set Chrome as
    default. Or, on OSes requiring the SetAsDefaultUI, the user explicitly chose
    another browser as default from the interactive UI. TODO(gab): Split the
    interactive signal into a separate histogram.
  </summary>
</histogram>

<histogram name="DefaultBrowserWarning.Ignored" enum="BooleanHit">
  <obsolete>
    Deprecated 2015/11. Renamed to DefaultBrowser.InfoBar.UserInteraction.
  </obsolete>
  <owner>gab@chromium.org</owner>
  <summary>
    The user ignored the make-default infobar (it was eventually dismissed along
    with its associated web content without the user interacting with it).
  </summary>
</histogram>

<histogram name="DefaultBrowserWarning.SetAsDefault" enum="BooleanHit">
  <obsolete>
    Deprecated 2015/11. Renamed to DefaultBrowser.Infobar.UserInteraction. There
    is no longer a distinction between interactive or not.
  </obsolete>
  <owner>gab@chromium.org</owner>
  <summary>
    In the make-default infobar, the user clicked a button making Chrome the
    default.
  </summary>
</histogram>

<histogram name="DefaultBrowserWarning.SetAsDefaultUI" enum="BooleanHit">
  <obsolete>
    Deprecated 2015/11. Renamed to DefaultBrowser.Infobar.UserInteraction. There
    is no longer a distinction between interactive or not.
  </obsolete>
  <owner>gab@chromium.org</owner>
  <summary>
    Same as SetAsDefault, but in Win8+ (resulting in interactive UI instead of
    automatic takeover). Successes == these reports minus reports for
    DefaultBrowserWarning.SetAsDefaultUIFailed and some
    DefaultBrowserWarning.DontSetAsDefault. TODO(gab): Improve reporting here.
  </summary>
</histogram>

<histogram name="DefaultBrowserWarning.SetAsDefaultUIFailed" enum="BooleanHit">
  <obsolete>
    Deprecated 2015/11. The same information is available as the value Failure
    in DefaultBrowser.SetDefaultResult.
  </obsolete>
  <owner>gab@chromium.org</owner>
  <summary>
    The user dismissed the interactive SetAsDefaultUI without making an explicit
    choice (or the UI failed to come up for another reason).
  </summary>
</histogram>

<histogram name="DefaultProtocolClient.SetDefaultResult"
    enum="SetDefaultAttemptResult">
  <obsolete>
    Deprecated 2016/03.
  </obsolete>
  <owner>pmonette@chromium.org</owner>
  <summary>
    The outcome of an attempt to set Chrome as the user's default client for a
    protocol.
  </summary>
</histogram>

<histogram name="DefaultProtocolClient.SetDefaultResult2"
    enum="DefaultWebClientState">
  <owner>pmonette@chromium.org</owner>
  <summary>
    The outcome of an attempt to set Chrome as the user's default client for a
    protocol.
  </summary>
</histogram>

<histogram name="DevTools.ActionTaken" enum="DevToolsAction">
  <owner>sergeyv@chromium.org</owner>
  <owner>vsevik@chromium.org</owner>
  <owner>pfeldman@chromium.org</owner>
  <summary>Specified DevTools action has been taken.</summary>
</histogram>

<histogram name="DevTools.InspectElement" units="ms">
  <owner>sergeyv@chromium.org</owner>
  <owner>vsevik@chromium.org</owner>
  <owner>pfeldman@chromium.org</owner>
  <summary>
    Time to load Developer Tools when user clicks Inspect Element in the context
    menu.
  </summary>
</histogram>

<histogram name="DevTools.PanelShown" enum="DevToolsPanel">
  <owner>sergeyv@chromium.org</owner>
  <owner>vsevik@chromium.org</owner>
  <owner>pfeldman@chromium.org</owner>
  <summary>Specified DevTools panel was shown.</summary>
</histogram>

<histogram name="DevTools.SettingChanged" enum="DevToolsSetting">
  <owner>sergeyv@chromium.org</owner>
  <owner>vsevik@chromium.org</owner>
  <owner>pfeldman@chromium.org</owner>
  <summary>Specified DevTools setting was changed.</summary>
</histogram>

<histogram name="Diagnostics.Recovery.ConflictingDlls" enum="DiagnosticsResult">
  <obsolete>
    Deprecated 04/2016 as doesn't have data nor owner.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    TBD - Not run automatically yet, so this is just a placeholder for future
    metrics collection.  Any samples collected here represent users running
    diagnostics manually.
  </summary>
</histogram>

<histogram name="Diagnostics.Recovery.DiskSpace" enum="DiagnosticsResult">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Shows the success and failure rates of the DiskSpace recovery step that runs
    on recovery startups.  The recovery step attempts to guarantee the DiskSpace
    test, which checks that the disk space in the volume where the user data
    directory normally lives is not dangerously low, would pass on the next
    startup.
  </summary>
</histogram>

<histogram name="Diagnostics.Recovery.InstallType" enum="DiagnosticsResult">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    TBD - Not run automatically yet, so this is just a placeholder for future
    metrics collection.  Any samples collected here represent users running
    diagnostics manually.
  </summary>
</histogram>

<histogram name="Diagnostics.Recovery.JSONBookmarks" enum="DiagnosticsResult">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Shows the success and failure rates of the JSONBookmarks recovery step that
    runs on recovery startups. The recovery step attempts to guarantee the
    JSONBookmarks test, which makes sure that the JSON-encoded Bookmarks file is
    properly formed, would pass on the next startup.
  </summary>
</histogram>

<histogram name="Diagnostics.Recovery.JSONLocalState" enum="DiagnosticsResult">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Shows the success and failure rates of the JSONLocalState recovery step that
    runs on recovery startups. The recovery step attempts to guarantee the
    JSONLocalState test, which makes sure that the JSON-encoded Local State file
    is properly formed, would pass on the next startup.
  </summary>
</histogram>

<histogram name="Diagnostics.Recovery.JSONPreferences" enum="DiagnosticsResult">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Shows the success and failure rates of the JSONPreferences recovery step
    that runs on recovery startups. The recovery step attempts to guarantee the
    JSONPreferences test, which makes sure that the JSON-encoded Preferences
    file is properly formed, would pass on the next startup.
  </summary>
</histogram>

<histogram name="Diagnostics.Recovery.OperatingSystem" enum="DiagnosticsResult">
  <obsolete>
    Deprecated 04/2016 as doesn't have data nor owner.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    TBD - Not run automatically yet, so this is just a placeholder for future
    metrics collection.  Any samples collected here represent users running
    diagnostics manually.
  </summary>
</histogram>

<histogram name="Diagnostics.Recovery.PathDictionaries"
    enum="DiagnosticsResult">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Shows the success and failure rates of the PathDictionaries recovery step
    that runs on recovery startups. The recovery step attempts to guarantee the
    PathDictionaries test, which makes sure that the path to the Dictionaries
    directory exists and has the right permissions, would pass on the next
    startup.
  </summary>
</histogram>

<histogram name="Diagnostics.Recovery.PathLocalState" enum="DiagnosticsResult">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Shows the success and failure rates of the PathLocalState recovery step that
    runs on recovery startups. The recovery step attempts to guarantee the
    PathLocalState test, which makes sure that the path to the Local State file
    exists and has the right permissions, would pass on the next startup.
  </summary>
</histogram>

<histogram name="Diagnostics.Recovery.PathResources" enum="DiagnosticsResult">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Shows the success and failure rates of the PathResources recovery step that
    runs on recovery startups. The recovery step attempts to guarantee the
    PathResources test, which makes sure that the path to the Resources
    directory exists and has the right permissions, would pass on the next
    startup.
  </summary>
</histogram>

<histogram name="Diagnostics.Recovery.PathUserData" enum="DiagnosticsResult">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Shows the success and failure rates of the PathUserData recovery step that
    runs on recovery startups. The recovery step attempts to guarantee the
    PathUserData test, which makes sure that the path to the User Data directory
    exists and has the right permissions, would pass on the next startup.
  </summary>
</histogram>

<histogram name="Diagnostics.Recovery.SQLiteIntegrityAppCache"
    enum="DiagnosticsResult">
  <obsolete>
    Deprecated 04/2016 as doesn't have data nor owner.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Shows the success and failure rates of the SQLiteIntegrityAppCache recovery
    step that runs on recovery startups.  The recovery step attempts to
    guarantee the SQLiteIntegrityAppCache test, which checks the integrity of
    the App Cache database, would pass on the next startup.
  </summary>
</histogram>

<histogram name="Diagnostics.Recovery.SQLiteIntegrityArchivedHistory"
    enum="DiagnosticsResult">
  <obsolete>
    Removed as of Jun 2014: we no longer have an archived database.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Shows the success and failure rates of the SQLiteIntegrityArchivedHistory
    recovery step that runs on recovery startups. The recovery step attempts to
    guarantee the SQLiteIntegrityArchivedHistory test, which checks the
    integrity of the Archived History database, would pass on the next startup.
  </summary>
</histogram>

<histogram name="Diagnostics.Recovery.SQLiteIntegrityCookie"
    enum="DiagnosticsResult">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Shows the success and failure rates of the SQLiteIntegrityCookie recovery
    step that runs on recovery startups.  The recovery step attempts to
    guarantee the SQLiteIntegrityCookie test, which checks the integrity of the
    Cookie database, would pass on the next startup.
  </summary>
</histogram>

<histogram name="Diagnostics.Recovery.SQLiteIntegrityDatabaseTracker"
    enum="DiagnosticsResult">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Shows the success and failure rates of the SQLiteIntegrityDatabaseTracker
    recovery step that runs on recovery startups.  The recovery step attempts to
    guarantee the SQLiteIntegrityDatabaseTracker test, which checks the
    integrity of the Database Tracker database, would pass on the next startup.
  </summary>
</histogram>

<histogram name="Diagnostics.Recovery.SQLiteIntegrityHistory"
    enum="DiagnosticsResult">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Shows the success and failure rates of the SQLiteIntegrityHistory recovery
    step that runs on recovery startups.  The recovery step attempts to
    guarantee the SQLiteIntegrityHistory test, which checks the integrity of the
    History database, would pass on the next startup.
  </summary>
</histogram>

<histogram name="Diagnostics.Recovery.SQLiteIntegrityNSSCert"
    enum="DiagnosticsResult">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Shows the success and failure rates of the SQLiteIntegrityNSSCert recovery
    step that runs on recovery startups.  The recovery step attempts to
    guarantee the SQLiteIntegrityNSSCert test, which checks the integrity of the
    NSS Certificate database, would pass on the next startup.
  </summary>
</histogram>

<histogram name="Diagnostics.Recovery.SQLiteIntegrityNSSKey"
    enum="DiagnosticsResult">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Shows the success and failure rates of the SQLiteIntegrityNSSKey recovery
    step that runs on recovery startups.  The recovery step attempts to
    guarantee the SQLiteIntegrityNSSKey test, which checks the integrity of the
    NSS Key database, would pass on the next startup.
  </summary>
</histogram>

<histogram name="Diagnostics.Recovery.SQLiteIntegrityThumbnails"
    enum="DiagnosticsResult">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Shows the success and failure rates of the SQLiteIntegrityThumbnails
    recovery step that runs on recovery startups.  The recovery step attempts to
    guarantee the SQLiteIntegrityThumbnails test, which checks the integrity of
    the Thumbnails database, would pass on the next startup.
  </summary>
</histogram>

<histogram name="Diagnostics.Recovery.SQLiteIntegrityWebData"
    enum="DiagnosticsResult">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Shows the success and failure rates of the SQLiteIntegrityWebData recovery
    step that runs on recovery startups.  The recovery step attempts to
    guarantee the SQLiteIntegrityWebData test, which checks the integrity of the
    Web Data database, would pass on the next startup.
  </summary>
</histogram>

<histogram name="Diagnostics.Recovery.Version" enum="DiagnosticsResult">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    TBD - Not run automatically yet, so this is just a placeholder for future
    metrics collection.  Any samples collected here represent users running
    diagnostics manually.
  </summary>
</histogram>

<histogram name="Diagnostics.RecoveryRun" enum="DiagnosticsRecoveryRun">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Count of the number of times diagnostics recovery is invoked or not, and how
    it was invoked.  A sample is added to this histogram once for each startup
    of Chrome.
  </summary>
</histogram>

<histogram name="Diagnostics.Test.ConflictingDlls" enum="DiagnosticsResult">
  <obsolete>
    Deprecated 04/2016 as doesn't have data nor owner.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    TBD - Not run automatically yet, so this is just a placeholder for future
    metrics collection.  Any samples collected here represent users running
    diagnostics manually.
  </summary>
</histogram>

<histogram name="Diagnostics.Test.DiskSpace" enum="DiagnosticsResult">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Shows the success and failure rates of diagnostics for the DiskSpace test
    that runs on recovery startups.  The DiskSpace test checks that the disk
    space in the volume where the user data directory normally lives is not
    dangerously low.
  </summary>
</histogram>

<histogram name="Diagnostics.Test.InstallType" enum="DiagnosticsResult">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    TBD - Not run automatically yet, so this is just a placeholder for future
    metrics collection.  Any samples collected here represent users running
    diagnostics manually.
  </summary>
</histogram>

<histogram name="Diagnostics.Test.JSONBookmarks" enum="DiagnosticsResult">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Shows the success and failure rates of diagnostics for the JSONBookmarks
    test that runs on recovery startups.  The JSONBookmarks test checks to make
    sure that the JSON encoded bookmarks file is properly formed.
  </summary>
</histogram>

<histogram name="Diagnostics.Test.JSONLocalState" enum="DiagnosticsResult">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Shows the success and failure rates of diagnostics for the JSONLocalState
    test that runs on recovery startups.  The JSONLocalState test checks to make
    sure that the JSON encoded Local State file is properly formed.
  </summary>
</histogram>

<histogram name="Diagnostics.Test.JSONPreferences" enum="DiagnosticsResult">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Shows the success and failure rates of diagnostics for the JSONPreferences
    test that runs on recovery startups.  The JSONPreferences test checks to
    make sure that the Preferences file is properly formed.
  </summary>
</histogram>

<histogram name="Diagnostics.Test.OperatingSystem" enum="DiagnosticsResult">
  <obsolete>
    Deprecated 04/2016 as doesn't have data nor owner.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    TBD - Not run automatically yet, so this is just a placeholder for future
    metrics collection.  Any samples collected here represent users running
    diagnostics manually.
  </summary>
</histogram>

<histogram name="Diagnostics.Test.PathDictionaries" enum="DiagnosticsResult">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Shows the success and failure rates of diagnostics for the PathDictionaries
    test that runs on recovery startups.  The PathDictionaries test checks makes
    sure that the path to the Dictionaries folder exists and has the right
    permissions.
  </summary>
</histogram>

<histogram name="Diagnostics.Test.PathLocalState" enum="DiagnosticsResult">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Shows the success and failure rates of diagnostics for the PathLocalState
    test that runs on recovery startups.   The PathLocalState test checks makes
    sure that the path to the Local State folder exists and has the right
    permissions.
  </summary>
</histogram>

<histogram name="Diagnostics.Test.PathResources" enum="DiagnosticsResult">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Shows the success and failure rates of diagnostics for the PathResources
    test that runs on recovery startups.  The PathResources test checks makes
    sure that the path to the Resources folder exists and has the right
    permissions.
  </summary>
</histogram>

<histogram name="Diagnostics.Test.PathUserData" enum="DiagnosticsResult">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Shows the success and failure rates of diagnostics for the PathUserData test
    that runs on recovery startups. The PathUserData test checks makes sure that
    the path to the User Data folder exists and has the right permissions.
  </summary>
</histogram>

<histogram name="Diagnostics.Test.SQLiteIntegrityAppCache"
    enum="DiagnosticsResult">
  <obsolete>
    Deprecated 04/2016 as doesn't have data nor owner.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Shows the success and failure rates of the SQLiteIntegrityAppCache test that
    runs on recovery startups.  The test checks the integrity of the App Cache
    database.
  </summary>
</histogram>

<histogram name="Diagnostics.Test.SQLiteIntegrityArchivedHistory"
    enum="DiagnosticsResult">
  <obsolete>
    Removed as of Jun 2014: we no longer have an archived database.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Shows the success and failure rates of the SQLiteIntegrityArchivedHistory
    test that runs on recovery startups.  The test checks the integrity of the
    Archived History database.
  </summary>
</histogram>

<histogram name="Diagnostics.Test.SQLiteIntegrityCookie"
    enum="DiagnosticsResult">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Shows the success and failure rates of the SQLiteIntegrityCookie test that
    runs on recovery startups.  The test checks the integrity of the Cookie
    database.
  </summary>
</histogram>

<histogram name="Diagnostics.Test.SQLiteIntegrityDatabaseTracker"
    enum="DiagnosticsResult">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Shows the success and failure rates of the SQLiteIntegrityDatabaseTracker
    test that runs on recovery startups.  The test checks the integrity of the
    Database Tracker database.
  </summary>
</histogram>

<histogram name="Diagnostics.Test.SQLiteIntegrityHistory"
    enum="DiagnosticsResult">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Shows the success and failure rates of the SQLiteIntegrityHistory test that
    runs on recovery startups.  The test checks the integrity of the History
    database.
  </summary>
</histogram>

<histogram name="Diagnostics.Test.SQLiteIntegrityNSSCert"
    enum="DiagnosticsResult">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Shows the success and failure rates of the SQLiteIntegrityNSSCert test that
    runs on recovery startups.  The test checks the integrity of the NSS
    Certificate database.
  </summary>
</histogram>

<histogram name="Diagnostics.Test.SQLiteIntegrityNSSKey"
    enum="DiagnosticsResult">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Shows the success and failure rates of the SQLiteIntegrityNSSKey test that
    runs on recovery startups.  The test checks the integrity of the NSS Key
    database.
  </summary>
</histogram>

<histogram name="Diagnostics.Test.SQLiteIntegrityThumbnails"
    enum="DiagnosticsResult">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Shows the success and failure rates of the SQLiteIntegrityThumbnails test
    that runs on recovery startups.  The test checks the integrity of the
    Thumbnails database.
  </summary>
</histogram>

<histogram name="Diagnostics.Test.SQLiteIntegrityWebData"
    enum="DiagnosticsResult">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Shows the success and failure rates of the SQLiteIntegrityWebData test that
    runs on recovery startups.  The test checks the integrity of the Web Data
    database.
  </summary>
</histogram>

<histogram name="Diagnostics.Test.Version" enum="DiagnosticsResult">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    TBD - Not run automatically yet, so this is just a placeholder for future
    metrics collection.  Any samples collected here represent users running
    diagnostics manually.
  </summary>
</histogram>

<histogram name="Diagnostics.TestFailures" enum="DiagnosticsTestName">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Histogram comparing the various types of diagnostic test failures when
    diagnostic tests are run.  Note that some types of test failures cause the
    rest of the tests to be skipped.
  </summary>
</histogram>

<histogram name="DirectWrite.Fonts.BuildCache.File.Size" units="KB">
  <owner>shrikant@chromium.org</owner>
  <summary>
    Reports size of font cache file. This is reported every time we rebuild font
    cache.
  </summary>
</histogram>

<histogram name="DirectWrite.Fonts.BuildCache.Ignored">
  <owner>shrikant@chromium.org</owner>
  <summary>
    Reports the total number of fonts that will be ignored while building static
    font cache due to size limitation. During cache building phase if our logic
    suggests that we need to put more than 70% of font file contents into cache
    file then we don't cache that particular font file. These ignored font files
    are directly picked up from system fonts folder during Direct Write cache
    building process. Our end goal is to minimize costly open and close
    operations on font files in system folder.
  </summary>
</histogram>

<histogram name="DirectWrite.Fonts.Ignored">
  <owner>shrikant@chromium.org</owner>
  <summary>
    Reports the total number of fonts that will be ignored while loading a
    custom font collection. With current criteria fonts that are not in
    system-font location will be ignored.
  </summary>
</histogram>

<histogram name="DirectWrite.Fonts.Loaded">
  <owner>shrikant@chromium.org</owner>
  <summary>
    Reports the total number of fonts to be loaded through a custom font
    collection. This actually reports total font entries from registry excluding
    font entries that point to non-system location.
  </summary>
</histogram>

<histogram name="DirectWrite.Fonts.LoadTime" units="ms">
  <owner>shrikant@chromium.org</owner>
  <summary>
    Measures the total time spent in loading a custom font collection in
    non-cache-file mode. We load system fonts as a custom font collection to
    avoid any interaction with windows font cache service from sandboxed
    renderer process. Please note that windows font cache services is different
    from our cache file approach (later referred here as cache-file mode).
  </summary>
</histogram>

<histogram name="DirectWrite.Fonts.LoadTime.Cached" units="ms">
  <owner>shrikant@chromium.org</owner>
  <summary>
    Measures the total time spent in loading a custom font collection in
    cache-file mode. We load system fonts as a custom font collection to avoid
    any interaction with windows font cache service from sandboxed renderer
    process. Please note that windows font cache services is different from our
    cache file approach (later referred here as cache-file mode)
  </summary>
</histogram>

<histogram name="DirectWrite.Fonts.Proxy.Fallback.CacheSize" units="Count">
  <owner>kulshin@chromium.org</owner>
  <summary>Records how many font families are in the fallback cache.</summary>
</histogram>

<histogram name="DirectWrite.Fonts.Proxy.FallbackResult"
    enum="DirectWriteFontFallbackResult">
  <owner>kulshin@chromium.org</owner>
  <summary>
    Measures the effectiveness of the font fallback proxy. This tracks if we
    were able to find a suitable font to render the character, and whether an
    IPC was necessary.
  </summary>
</histogram>

<histogram name="DirectWrite.Fonts.Proxy.LoaderType"
    enum="DirectWriteFontLoaderType">
  <owner>kulshin@chromium.org</owner>
  <summary>
    The codepath that was used to load a font family. This is logged in the
    browser every time a renderer attempts to load a font family, once per font
    file.
  </summary>
</histogram>

<histogram name="DirectWrite.Fonts.Proxy.LoadFamilyResult"
    enum="DirectWriteLoadFamilyResult">
  <owner>kulshin@chromium.org</owner>
  <summary>
    The outcome of attempting to load a font family in the renderer (success vs
    failure and number of families). This is logged in the renderer once per
    family that is loaded.
  </summary>
</histogram>

<histogram name="DirectWrite.Fonts.Proxy.LoadFamilyTime" units="ms">
  <owner>kulshin@chromium.org</owner>
  <summary>
    The time taken to load a font family, excluding glyph data. This is logged
    in the renderer once per family that is loaded.
  </summary>
</histogram>

<histogram name="DisabledExtension.ExtensionWipedStatus" enum="BooleanWiped">
  <obsolete>
    Deprecated 04/2016 as doesn't have data nor owner.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>Whether an extension has been wiped out.</summary>
</histogram>

<histogram name="DisabledExtension.SideloadWipeoutCount">
  <obsolete>
    Deprecated 04/2016 as doesn't have data nor owner.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    How many external extensions get wiped out as a result of the Sideload
    Wipeout one-time initiative.
  </summary>
</histogram>

<histogram name="DisabledExtension.SideloadWipeoutNeeded" enum="BooleanSuccess">
  <obsolete>
    Deprecated 04/2016 as doesn't have data nor owner.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Whether any extension got wiped out as a result of the Sideload Wipeout
    one-time initiative.
  </summary>
</histogram>

<histogram name="DisabledExtension.UserSelection" enum="SideloadWipeoutBubble">
  <obsolete>
    Deprecated 04/2016 as doesn't have data nor owner.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The user selection in the Sideload Wipeout bubble, grouped by the
    UmaWipeoutHistogramOptions enum.
  </summary>
</histogram>

<histogram name="DiskBasedCertCache.CertIo" enum="CertificateChainPosition">
  <obsolete>
    Deprecated as of 01/2016. CertCacheTrial has been removed.
    https://crbug.com/522312
  </obsolete>
  <owner>brandonsalmon@chromium.org</owner>
  <summary>
    Records information about DiskBasedCertCache operations with respect to
    certificate chain positions. Zero indicates that a certificate is root, one
    indicates that it is the first intermediate certificate, etc.
  </summary>
</histogram>

<histogram name="DiskBasedCertCache.CertIoCacheResult" enum="CacheResult">
  <obsolete>
    Deprecated as of 01/2016. CertCacheTrial has been removed.
    https://crbug.com/522312
  </obsolete>
  <owner>brandonsalmon@chromium.org</owner>
  <summary>
    Records the outcome of requests to retrieve certificates from the disk
    cache.
  </summary>
</histogram>

<histogram name="DiskBasedCertCache.CertIoReadSuccessLeaf"
    enum="BooleanSuccess">
  <obsolete>
    Deprecated as of 01/2016. CertCacheTrial has been removed.
    https://crbug.com/522312
  </obsolete>
  <owner>brandonsalmon@chromium.org</owner>
  <summary>
    Whether or not the leaf certificate of a certificate chain was successfuly
    read from the disk cache.
  </summary>
</histogram>

<histogram name="DiskBasedCertCache.CertIoWriteSuccessLeaf"
    enum="BooleanSuccess">
  <obsolete>
    Deprecated as of 01/2016. CertCacheTrial has been removed.
    https://crbug.com/522312
  </obsolete>
  <owner>brandonsalmon@chromium.org</owner>
  <summary>
    Whether or not the leaf certificate of a certificate chain was successfully
    written to the disk cache.
  </summary>
</histogram>

<histogram name="DiskBasedCertCache.ChainReadTime" units="ms">
  <obsolete>
    Deprecated as of 01/2016. CertCacheTrial has been removed.
    https://crbug.com/522312
  </obsolete>
  <owner>brandonsalmon@chromium.org</owner>
  <summary>
    Measures the wall clock time spent reading a certificate chain. The starting
    time is when the read command is issued, and the ending time is when all of
    the  certificates in the chain have been read into memory.
  </summary>
</histogram>

<histogram name="DiskBasedCertCache.ChainWriteTime" units="ms">
  <obsolete>
    Deprecated as of 01/2016. CertCacheTrial has been removed.
    https://crbug.com/522312
  </obsolete>
  <owner>brandonsalmon@chromium.org</owner>
  <summary>
    Measures the wall clock time spent writing a certificate chain to disk. The
    starting time is when the write command is issued, and the ending time is
    when all the certificates in the chain have been written to disk.
  </summary>
</histogram>

<histogram name="DiskCache.0.FilesAge" units="hours">
  <owner>rvargas@chromium.org</owner>
  <summary>The age of the cache's files (wall time).</summary>
</histogram>

<histogram name="DiskCache.2.FilesAge" units="hours">
  <owner>rvargas@chromium.org</owner>
  <summary>
    The age of the cache's files (wall time). Media-specific cache.
  </summary>
</histogram>

<histogram name="DiskCache.3.FilesAge" units="hours">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>The age of the cache's files (wall time). AppCache.</summary>
</histogram>

<histogram name="DiskCache.4.FilesAge" units="hours">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>The age of the cache's files (wall time). ShaderCache.</summary>
</histogram>

<histogram name="DiskCache.SizeStats2" units="KB">
  <owner>rvargas@chromium.org</owner>
  <summary>The size distribution of data stored in the HTTP cache.</summary>
</histogram>

<histogram name="DiskCache.TotalIOTime" units="ms">
  <obsolete>
    Deprecated.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The total time it takes to perform a payload IO operation, for the regular
    disk cache.
  </summary>
</histogram>

<histogram name="DNS.AttemptCancelled">
  <owner>juliatuttle@chromium.org</owner>
  <summary>
    The attempt which completed after the job was already cancelled.
  </summary>
</histogram>

<histogram name="DNS.AttemptDiscarded">
  <owner>juliatuttle@chromium.org</owner>
  <summary>
    The attempt which completed after the job was already cancelled OR the
    attempt that has finished after host resolution was already completed by an
    earlier attempt.
  </summary>
</histogram>

<histogram name="DNS.AttemptFailDuration" units="ms">
  <owner>juliatuttle@chromium.org</owner>
  <summary>
    Duration of time taken in OS resolutions for actual navigations. These
    attempts which completed after the job was already canceled OR after the job
    was already completed by an earlier attempt. Note that cached resolutions
    may provide low (0ms?) resolution times.
  </summary>
</histogram>

<histogram name="DNS.AttemptFailure">
  <owner>juliatuttle@chromium.org</owner>
  <summary>The attempt that has not resolved the host successfully.</summary>
</histogram>

<histogram name="DNS.AttemptFirstFailure">
  <owner>juliatuttle@chromium.org</owner>
  <summary>
    The attempt that resolved the host first and the resolution was not
    successful.
  </summary>
</histogram>

<histogram name="DNS.AttemptFirstSuccess">
  <owner>juliatuttle@chromium.org</owner>
  <summary>
    The attempt that resolved the host first and the resolution was successful.
  </summary>
</histogram>

<histogram name="DNS.AttemptSuccess">
  <owner>juliatuttle@chromium.org</owner>
  <summary>The attempt that has resolved the host successfully.</summary>
</histogram>

<histogram name="DNS.AttemptSuccessDuration" units="ms">
  <owner>juliatuttle@chromium.org</owner>
  <summary>
    Duration of time taken in OS resolutions that succeeded and were requested
    for actual navigations. These attempts which completed after the job was
    already canceled OR after the job was already completed by an earlier
    attempt. Note that cached resolutions may provide low (0ms?) resolution
    times.
  </summary>
</histogram>

<histogram name="DNS.AttemptTimeSavedByRetry" units="ms">
  <owner>juliatuttle@chromium.org</owner>
  <summary>
    This histogram shows the time saved by having spawned an extra attempt, when
    the first attempt didn't finish before retry attempt.
  </summary>
</histogram>

<histogram name="DNS.CacheEvicted" units="ms">
  <owner>juliatuttle@chromium.org</owner>
  <summary>
    The time left to expiration of an entry when it is removed while compacting
    the HostCache.
  </summary>
</histogram>

<histogram name="DNS.CacheExpired" units="ms">
  <owner>juliatuttle@chromium.org</owner>
  <summary>
    The time since expiration of an entry when it is removed while compacting
    the HostCache.
  </summary>
</histogram>

<histogram name="DNS.CacheExpiredOnGet" units="ms">
  <owner>juliatuttle@chromium.org</owner>
  <summary>
    The time since expiration of an entry when it is removed on lookup.
  </summary>
</histogram>

<histogram name="DNS.EmptyAddressListAndNoError"
    enum="DNSEmptyAddressListAndNoError">
  <owner>juliatuttle@chromium.org</owner>
  <summary>
    Error status when an empty address list was found in OnLookupComplete().
  </summary>
</histogram>

<histogram name="DNS.HostCache.Erase" enum="DNS.HostCache.EraseReason">
  <owner>juliatuttle@chromium.org</owner>
  <summary>The reason for erasing a DNS entry from the host cache.</summary>
</histogram>

<histogram name="DNS.HostCache.EraseStale.ExpiredBy" units="ms">
  <owner>juliatuttle@chromium.org</owner>
  <summary>
    When erasing a stale (expired or old-network) DNS entry from the host cache,
    how long past the expiration time it is.
  </summary>
</histogram>

<histogram name="DNS.HostCache.EraseStale.NetworkChanges" units="changes">
  <owner>juliatuttle@chromium.org</owner>
  <summary>
    When erasing a stale (expired or old-network) DNS entry from the host cache
    how many network changes happened between setting and erasing it.
  </summary>
</histogram>

<histogram name="DNS.HostCache.EraseStale.StaleHits" units="hits">
  <owner>juliatuttle@chromium.org</owner>
  <summary>
    When erasing a stale (expired or old-network) DNS entry from the host cache
    how many hits it received while stale.
  </summary>
</histogram>

<histogram name="DNS.HostCache.EraseValid.ValidFor" units="ms">
  <owner>juliatuttle@chromium.org</owner>
  <summary>
    When erasing a valid DNS entry from the host cache, for how much longer it
    would have remained valid.
  </summary>
</histogram>

<histogram name="DNS.HostCache.Lookup" enum="DNS.HostCache.LookupOutcome">
  <owner>juliatuttle@chromium.org</owner>
  <summary>The outcome of looking up a DNS entry in the host cache.</summary>
</histogram>

<histogram name="DNS.HostCache.LookupStale.ExpiredBy" units="ms">
  <owner>juliatuttle@chromium.org</owner>
  <summary>
    When looking up a stale DNS entry in the host cache, how long past the
    expiration time it is.
  </summary>
</histogram>

<histogram name="DNS.HostCache.LookupStale.NetworkChanges" units="changes">
  <owner>juliatuttle@chromium.org</owner>
  <summary>
    When looking up a stale DNS entry in the host cache, how many network
    changes happened between setting it and looking it up.
  </summary>
</histogram>

<histogram name="DNS.HostCache.Set" enum="DNS.HostCache.SetOutcome">
  <owner>juliatuttle@chromium.org</owner>
  <summary>The outcome of setting a DNS entry in the host cache.</summary>
</histogram>

<histogram name="DNS.HostCache.UpdateStale.AddressListDelta"
    enum="DNS.AddressListDeltaType">
  <owner>juliatuttle@chromium.org</owner>
  <summary>
    When updating a stale (expired or old-network) DNS entry in the host cache,
    and both results are successful, how the address list differs between the
    old and new entries.
  </summary>
</histogram>

<histogram name="DNS.HostCache.UpdateStale.ExpiredBy" units="ms">
  <owner>juliatuttle@chromium.org</owner>
  <summary>
    When updating a stale (expired or old-network) DNS entry in the host cache,
    how long past the expiration time the old entry was.
  </summary>
</histogram>

<histogram name="DNS.HostCache.UpdateStale.NetworkChanges" units="changes">
  <owner>juliatuttle@chromium.org</owner>
  <summary>
    When updating a stale (expired or old-nework) DNS entry in the host cache,
    how many network changes happened between setting the old entry and setting
    the new entry.
  </summary>
</histogram>

<histogram name="DNS.HostCache.UpdateStale.StaleHits" units="hits">
  <owner>juliatuttle@chromium.org</owner>
  <summary>
    The number of hits received to an updated stale DNS entry in the host cache
    while it was stale.
  </summary>
</histogram>

<histogram name="DNS.IndependentFailedNavigation" units="ms">
  <owner>juliatuttle@chromium.org</owner>
  <summary>
    When either a pre-resolution was not done recently enough to provide
    benefit, or the corresponding pre-resolution is still pending, this
    histogram shows the duration of time used to resolve a hostname as not
    existing during a failed attempt to navigate to (GET) a URL.  In newer
    versions, if the hostname has never been found as a link during a page scan,
    and it has a referring URL, then it is added to referrer list data structure
    (hoping we'll do better next time).
  </summary>
</histogram>

<histogram name="DNS.IndependentNavigation" units="ms">
  <owner>juliatuttle@chromium.org</owner>
  <summary>
    When either a pre-resolution was not done recently enough to provide
    benefit, or the corresponding pre-resolution is still pending, this
    histogram shows the duration of the duration of time used to resolve a
    hostname to navigate to (GET) a URL.  In newer versions, if the hostname has
    never been found as a link during a page scan, and it has a referring URL,
    then it is added to referrer list data structure (hoping we'll do better
    next time).
  </summary>
</histogram>

<histogram name="DNS.JobQueueTime" units="ms">
  <owner>juliatuttle@chromium.org</owner>
  <summary>
    Time elapsed between the time the HostResolverImpl::Job was created and the
    time the Job was started (a getaddrinfo call was dispatched to the thread
    pool).
  </summary>
</histogram>

<histogram name="DNS.JobQueueTime_HIGHEST" units="ms">
  <owner>juliatuttle@chromium.org</owner>
  <summary>
    Time elapsed between the time the HostResolverImpl::Job was created and the
    time the Job was started (a getaddrinfo call was dispatched to the thread
    pool). Includes only Jobs which had priority HIGHEST when started.
  </summary>
</histogram>

<histogram name="DNS.JobQueueTime_IDLE" units="ms">
  <owner>juliatuttle@chromium.org</owner>
  <summary>
    Time elapsed between the time the HostResolverImpl::Job was created and the
    time the Job was started (a getaddrinfo call was dispatched to the thread
    pool). Includes only Jobs which had priority IDLE when started.
  </summary>
</histogram>

<histogram name="DNS.JobQueueTime_LOW" units="ms">
  <owner>juliatuttle@chromium.org</owner>
  <summary>
    Time elapsed between the time the HostResolverImpl::Job was created and the
    time the Job was started (a getaddrinfo call was dispatched to the thread
    pool). Includes only Jobs which had priority LOW when started.
  </summary>
</histogram>

<histogram name="DNS.JobQueueTime_LOWEST" units="ms">
  <owner>juliatuttle@chromium.org</owner>
  <summary>
    Time elapsed between the time the HostResolverImpl::Job was created and the
    time the Job was started (a getaddrinfo call was dispatched to the thread
    pool). Includes only Jobs which had priority LOWEST when started.
  </summary>
</histogram>

<histogram name="DNS.JobQueueTime_MEDIUM" units="ms">
  <owner>juliatuttle@chromium.org</owner>
  <summary>
    Time elapsed between the time the HostResolverImpl::Job was created and the
    time the Job was started (a getaddrinfo call was dispatched to the thread
    pool). Includes only Jobs which had priority MEDIUM when started.
  </summary>
</histogram>

<histogram name="DNS.JobQueueTimeAfterChange" units="ms">
  <owner>juliatuttle@chromium.org</owner>
  <summary>
    Time elapsed between the last time the priority of a HostResolverImpl::Job
    changed (when a Request was attached or detached) and the time the Job was
    started (a getaddrinfo call was dispatched to the thread pool).
  </summary>
</histogram>

<histogram name="DNS.JobQueueTimeAfterChange_HIGHEST" units="ms">
  <owner>juliatuttle@chromium.org</owner>
  <summary>
    Time elapsed between the last time the priority of a HostResolverImpl::Job
    changed (when a Request was attached or detached) and the time the Job was
    started (a getaddrinfo call was dispatched to the thread pool). Includes
    only Jobs which had priority HIGHEST when started.
  </summary>
</histogram>

<histogram name="DNS.JobQueueTimeAfterChange_IDLE" units="ms">
  <owner>juliatuttle@chromium.org</owner>
  <summary>
    Time elapsed between the last time the priority of a HostResolverImpl::Job
    changed (when a Request was attached or detached) and the time the Job was
    started (a getaddrinfo call was dispatched to the thread pool). Includes
    only Jobs which had priority IDLE when started.
  </summary>
</histogram>

<histogram name="DNS.JobQueueTimeAfterChange_LOW" units="ms">
  <owner>juliatuttle@chromium.org</owner>
  <summary>
    Time elapsed between the last time the priority of a HostResolverImpl::Job
    changed (when a Request was attached or detached) and the time the Job was
    started (a getaddrinfo call was dispatched to the thread pool). Includes
    only Jobs which had priority LOW when started.
  </summary>
</histogram>

<histogram name="DNS.JobQueueTimeAfterChange_LOWEST" units="ms">
  <owner>juliatuttle@chromium.org</owner>
  <summary>
    Time elapsed between the last time the priority of a HostResolverImpl::Job
    changed (when a Request was attached or detached) and the time the Job was
    started (a getaddrinfo call was dispatched to the thread pool). Includes
    only Jobs which had priority LOWEST when started.
  </summary>
</histogram>

<histogram name="DNS.JobQueueTimeAfterChange_MEDIUM" units="ms">
  <owner>juliatuttle@chromium.org</owner>
  <summary>
    Time elapsed between the last time the priority of a HostResolverImpl::Job
    changed (when a Request was attached or detached) and the time the Job was
    started (a getaddrinfo call was dispatched to the thread pool). Includes
    only Jobs which had priority MEDIUM when started.
  </summary>
</histogram>

<histogram name="DNS.PrefetchCacheEviction" units="ms">
  <owner>juliatuttle@chromium.org</owner>
  <summary>
    The duration of time used (most recently) to pre-resolve a hostname, when
    the prefetched resolution was apparently evicted from the cache.  The
    included samples only list pre-resolution times when the later
    navigations/fetches took in excess of 15ms.
  </summary>
</histogram>

<histogram name="DNS.PrefetchCacheEvictionL" units="ms">
  <owner>juliatuttle@chromium.org</owner>
  <summary>
    The duration of time used (most recently) to pre-resolve a hostname, when
    the prefetched resolution was apparently evicted from the cache.  The
    included samples only list pre-resolution times when the later
    navigations/fetches took in excess of 15ms.
  </summary>
</histogram>

<histogram name="DNS.PrefetchFoundName">
  <owner>juliatuttle@chromium.org</owner>
  <summary>Replaced by DNS.PrefetchFoundNameL.</summary>
</histogram>

<histogram name="DNS.PrefetchFoundNameL" units="ms">
  <owner>juliatuttle@chromium.org</owner>
  <obsolete>
    Deprecated 2/2010, and replaced by DNS.PrefetchResolution
  </obsolete>
  <summary>
    The duration of time used by the DNS pre-resolving threads to resolve a host
    name via the network.  Any resolutions that are faster than 15ms are
    considered to be local cache hits, not requiring network access, and are not
    included in this histogram. This histogram is most useful for estimating the
    typical cost of a name resolution, but it also estimates the total number of
    network-based resolutions induced by this feature.  Not all these
    resolutions prove helpful (i.e., the user does not always actually visit the
    resolved hostnames).
  </summary>
</histogram>

<histogram name="DNS.PrefetchNegativeHit">
  <owner>juliatuttle@chromium.org</owner>
  <summary>Replaced by DNS.PrefetchNegativeHitL.</summary>
</histogram>

<histogram name="DNS.PrefetchNegativeHitL" units="ms">
  <owner>juliatuttle@chromium.org</owner>
  <summary>
    The duration of time saved due to DNS pre-resolving in the &quot;name not
    found&quot; case.  Time &quot;savings&quot; shown in the histogram are
    defined to be the difference between the DNS pre-resolution duration, and
    the DNS resolution duration seen during a navigation.  These cache hits only
    list events where the DNS pre-resolve duration for a host was in excess of
    15ms (i.e., the network was consulted), and the actual DNS resolution (when
    a user attempted to navigate to a link with the same host name) took less
    than 15ms (i.e., the network was not consulted), which means the gain was a
    result of a &quot;cache hit&quot; in the OS cache.  For some users with
    LANs, all negative results (even when the DNS cache might otherwise help)
    take about 2.5 seconds (due to timeouts for netbios broadcasts), and hence
    no savings are possible (or shown) for such users in this category.
  </summary>
</histogram>

<histogram name="DNS.PrefetchPositiveHit">
  <owner>juliatuttle@chromium.org</owner>
  <summary>Replaced by DNS.PrefetchPositiveHitL.</summary>
</histogram>

<histogram name="DNS.PrefetchPositiveHitL" units="ms">
  <owner>juliatuttle@chromium.org</owner>
  <summary>
    The duration of time saved due to DNS pre-resolving in the &quot;name was
    found&quot; case, and induced by either a page scan for a link or an omnibox
    entry by the user. Time &quot;savings&quot; shown in the histogram are
    defined to be the difference between the DNS pre-resolution duration, and
    the DNS resolution duration seen during a navigation.  These cache hits only
    list events where the DNS pre-resolve duration for a host was in excess of
    15ms (i.e., the network was consulted), and the actual DNS resolution (when
    a user attempted to navigate to a link with the same host name) took less
    than 15ms (i.e., the network was not consulted), which means the gain was a
    result of a &quot;cache hit&quot; in the OS cache.
  </summary>
</histogram>

<histogram name="DNS.PrefetchQueue" units="ms">
  <owner>juliatuttle@chromium.org</owner>
  <summary>
    The duration of time spent by a proposed resolution waiting in the queue to
    be resolved.  This number is in addition to any DNS resolution time that may
    come later.
  </summary>
</histogram>

<histogram name="DNS.PrefetchReferredPositiveHit" units="ms">
  <owner>juliatuttle@chromium.org</owner>
  <summary>
    The duration of time saved due to DNS pre-resolving in the &quot;name was
    found&quot; case, and induced by predicting (using referrer lists) that a
    resolution was needed. Time &quot;savings&quot; shown in the histogram are
    defined to be the difference between the DNS pre-resolution duration, and
    the DNS resolution duration seen during a navigation.  These cache hits only
    list events where the DNS pre-resolve duration for a host was in excess of
    15ms (i.e., the network was consulted), and the actual DNS resolution (when
    a user attempted to navigate to a link with the same host name) took less
    than 15ms (i.e., the network was not consulted), which means the gain was a
    result of a &quot;cache hit&quot; in the OS cache.
  </summary>
</histogram>

<histogram name="DNS.PrefetchResolution" units="ms">
  <owner>juliatuttle@chromium.org</owner>
  <summary>
    The duration of time used by the DNS pre-resolving threads to resolve a host
    name via the network.  Any resolutions that are faster than 15ms are
    considered to be local cache hits, not requiring network access, and are not
    included in this histogram. This histogram is most useful for estimating the
    typical cost of a name resolution, but it also estimates the total number of
    network-based resolutions induced by this feature.  Not all these
    resolutions prove helpful (i.e., the user does not always actually visit the
    resolved hostnames).
  </summary>
</histogram>

<histogram name="DNS.QueueRecycledDeltaOver2">
  <owner>juliatuttle@chromium.org</owner>
  <summary>
    When, due to congestion avoidance, a queued pre-resolution is abandoned
    (recycled) without actually being resolved, this histograms records the age
    in the queue of that entry.  Only times over 2 seconds are recorded in this
    histogram.
  </summary>
</histogram>

<histogram name="DNS.QueueRecycledUnder2">
  <owner>juliatuttle@chromium.org</owner>
  <summary>
    When, due to congestion avoidance, a queued pre-resolution is abandoned
    (recycled) without actually being resolved, this histograms records the age
    in the queue of that entry.  Only times less than or equal to 2 seconds are
    recorded in this histogram.
  </summary>
</histogram>

<histogram name="DNS.ResolveCategory" enum="ResolutionCategory">
  <owner>juliatuttle@chromium.org</owner>
  <summary>
    Counts of successes and failures of OS resolutions in various categories.
  </summary>
</histogram>

<histogram name="DNS.ResolveFail" units="ms">
  <owner>juliatuttle@chromium.org</owner>
  <summary>
    Duration of time taken in OS resolutions for actual navigations.  Note that
    cached OS resolutions may provide low (0ms?) resolution times.
  </summary>
</histogram>

<histogram name="DNS.ResolveFail_FAMILY_IPV4" units="ms">
  <owner>juliatuttle@chromium.org</owner>
  <summary>Same as DNS.ResolveFail, but limited to pure IPv4 lookups.</summary>
</histogram>

<histogram name="DNS.ResolveFail_FAMILY_IPV6" units="ms">
  <owner>juliatuttle@chromium.org</owner>
  <summary>Same as DNS.ResolveFail, but limited to pure IPv6 lookups.</summary>
</histogram>

<histogram name="DNS.ResolveFail_FAMILY_UNSPEC" units="ms">
  <owner>juliatuttle@chromium.org</owner>
  <summary>Same as DNS.ResolveFail, but limited to IPv4/IPv6 lookups.</summary>
</histogram>

<histogram name="DNS.ResolveSpeculativeFail" units="ms">
  <owner>juliatuttle@chromium.org</owner>
  <summary>
    Duration of time taken in speculative OS resolutions.  Note that cached OS
    resolutions may provide low (0ms?) resolution times.
  </summary>
</histogram>

<histogram name="DNS.ResolveSpeculativeSuccess" units="ms">
  <owner>juliatuttle@chromium.org</owner>
  <summary>
    Duration of time taken in speculative OS resolution that succeeded.  Note
    that cached resolutions may provide low (0ms?) resolution times.
  </summary>
</histogram>

<histogram name="DNS.ResolveSuccess" units="ms">
  <owner>juliatuttle@chromium.org</owner>
  <summary>
    Duration of time taken in OS resolutions that succeeded and were requested
    for actual navigations.  Note that cached resolutions may provide low (0ms?)
    resolution times.
  </summary>
</histogram>

<histogram name="DNS.ResolveSuccess_FAMILY_IPV4" units="ms">
  <owner>juliatuttle@chromium.org</owner>
  <summary>
    Same as DNS.ResolveSuccess, but limited to pure IPv4 lookups.
  </summary>
</histogram>

<histogram name="DNS.ResolveSuccess_FAMILY_IPV6" units="ms">
  <owner>juliatuttle@chromium.org</owner>
  <summary>
    Same as DNS.ResolveSuccess, but limited to pure IPv6 lookups.
  </summary>
</histogram>

<histogram name="DNS.ResolveSuccess_FAMILY_UNSPEC" units="ms">
  <owner>juliatuttle@chromium.org</owner>
  <summary>
    Same as DNS.ResolveSuccess, but limited to IPv4/IPv6 lookups.
  </summary>
</histogram>

<histogram name="DNS.ResolveUnspecWaste" enum="ResolutionUnspecWasteCategory">
  <owner>juliatuttle@chromium.org</owner>
  <obsolete>
    Deprecated as of 5/2013.
  </obsolete>
  <summary>
    Counts of hits and misses in the DNS cache and DNS jobs pool of wasted
    HostResolverImpl::Jobs that could be avoided by always resolving using
    AF_UNSPEC.
  </summary>
</histogram>

<histogram name="DNS.TotalTime" units="ms">
  <owner>juliatuttle@chromium.org</owner>
  <summary>
    Duration of time since a HostResolverImpl::Resolve request to the time a
    result is posted. Excludes canceled, evicted, and aborted requests. Includes
    cache hits (recorded as 0). Excludes speculative requests.
  </summary>
</histogram>

<histogram name="DNS.TotalTime_speculative" units="ms">
  <owner>juliatuttle@chromium.org</owner>
  <summary>
    Duration of time since a HostResolverImpl::Resolve request to the time a
    result is posted. Excludes canceled, evicted, and aborted requests. Includes
    cache hits (recorded as 0). Speculative requests only.
  </summary>
</histogram>

<histogram name="DNS.UnexpectedResolution">
  <owner>juliatuttle@chromium.org</owner>
  <summary>
    In some cases, such as when content arrives with embedded references to
    other servers, the prefetch system can't (or doesn't) attempt to pre-resolve
    the hostnames.  As an example, a visit to www.cnn.com will fetch content
    with references to about 12 additional hostnames, none of which are
    currently anticipated.  Such resolutions are termed &quot;Unexpected
    Resolutions,&quot; and the durations associated with those DNS resolutions
    are shown below.  Future features may attempt to learn (from prior
    experience locally, or from server provided hints), what secondary hostname
    resolutions should be done when a primary resolution (or navigation) takes
    place.  This histogram shows what the potential savings are that
    &quot;remain on the table&quot; until we employ some of these more advanced
    features.
  </summary>
</histogram>

<histogram name="DNS.UnexpectedResolutionL">
  <owner>juliatuttle@chromium.org</owner>
  <summary>
    In some cases, such as when content arrives with embedded references to
    other servers, or when a page (such as one in SSL) preclude scanning and
    prefetching, the prefetch system can't (or doesn't) attempt to pre-resolve
    the hostnames.  As an example, a visit to www.cnn.com will fetch content
    with references to about 12 additional hostnames, none of which might be
    anticipated.  Similarly, clicking on a link in an SSL page won't be
    anticipated (since scanning in not allowed by default). Such resolutions are
    termed &quot;Unexpected Resolutions,&quot; and the durations associated with
    those navigation induced DNS resolutions are shown below.  If a referring
    URL is available for the navigation, the relationship to the referring URL
    was recorded, and future navigations to the referring hostname would have
    induced a pre-resolution of hostname that caused an entry below.  Such any
    entry may facilitate future listing in the ReferredPositiveHit histogram.
  </summary>
</histogram>

<histogram name="DnsProbe.ErrorPageUpdateStatus" enum="DnsProbe.ProbeStatus">
  <owner>juliatuttle@chromium.org</owner>
  <summary>Status of DNS probe updates sent to a DNS error page.</summary>
</histogram>

<histogram name="DnsProbe.Probe.Elapsed" units="ms">
  <owner>juliatuttle@chromium.org</owner>
  <obsolete>
    Renamed 7/2013 to DnsProbe.ProbeDuration.
  </obsolete>
  <summary>Time between starting and finishing DNS probe.</summary>
</histogram>

<histogram name="DnsProbe.Probe.NcnOffline.Elapsed" units="ms">
  <owner>juliatuttle@chromium.org</owner>
  <obsolete>
    Removed 7/2013.
  </obsolete>
  <summary>
    Time between starting and finishing DNS probe when NCN says we're offline.
  </summary>
</histogram>

<histogram name="DnsProbe.Probe.NcnOffline.Result"
    enum="DnsProbe.ObsoleteProbeResult">
  <owner>juliatuttle@chromium.org</owner>
  <obsolete>
    Removed 7/2013.
  </obsolete>
  <summary>
    Result of DNS probes sent by the probe service when NCN says we're offline.
  </summary>
</histogram>

<histogram name="DnsProbe.Probe.NcnOnline.Elapsed" units="ms">
  <owner>juliatuttle@chromium.org</owner>
  <obsolete>
    Removed 7/2013.
  </obsolete>
  <summary>
    Time between starting and finishing DNS probe when NCN says we're online.
  </summary>
</histogram>

<histogram name="DnsProbe.Probe.NcnOnline.Result"
    enum="DnsProbe.ObsoleteProbeResult">
  <owner>juliatuttle@chromium.org</owner>
  <obsolete>
    Removed 7/2013.
  </obsolete>
  <summary>
    Result of DNS probes sent by the probe service when NCN says we're online.
  </summary>
</histogram>

<histogram name="DnsProbe.Probe.Result" enum="DnsProbe.ObsoleteProbeResult">
  <owner>juliatuttle@chromium.org</owner>
  <obsolete>
    Renamed 7/2013 to DnsProbe.ProbeResult.  (Also switched to the full
    DnsProbe.ProbeStatus enum.)
  </obsolete>
  <summary>Result of DNS probes sent by the probe service.</summary>
</histogram>

<histogram name="DnsProbe.Probe.ResultBadConfig.Elapsed" units="ms">
  <owner>juliatuttle@chromium.org</owner>
  <obsolete>
    Removed 7/2013.
  </obsolete>
  <summary>Elapsed time of DNS probes that return PROBE_BAD_CONFIG.</summary>
</histogram>

<histogram name="DnsProbe.Probe.ResultBadConfig.SystemIsLocalhost"
    enum="DnsProbe.SystemIsLocalhost">
  <owner>juliatuttle@chromium.org</owner>
  <obsolete>
    Removed 7/2013.
  </obsolete>
  <summary>
    Whether the only nameserver in the system DNS config was 127.0.0.1 when the
    probe result was BAD_CONFIG.
  </summary>
</histogram>

<histogram name="DnsProbe.Probe.ResultBadConfig.SystemJobResult"
    enum="DnsProbe.JobResult">
  <owner>juliatuttle@chromium.org</owner>
  <obsolete>
    Removed 7/2013.
  </obsolete>
  <summary>
    The result of the system probe job when the overall probe result was
    BAD_CONFIG.
  </summary>
</histogram>

<histogram name="DnsProbe.Probe.ResultBadConfig.SystemNameserverCount">
  <owner>juliatuttle@chromium.org</owner>
  <obsolete>
    Removed 7/2013.
  </obsolete>
  <summary>
    The number of nameservers in the system DNS config when the probe result was
    BAD_CONFIG.
  </summary>
</histogram>

<histogram name="DnsProbe.Probe.ResultNoInternet.Elapsed" units="ms">
  <owner>juliatuttle@chromium.org</owner>
  <obsolete>
    Removed 7/2013.
  </obsolete>
  <summary>Elapsed time of DNS probes that return PROBE_NO_INTERNET.</summary>
</histogram>

<histogram name="DnsProbe.Probe.ResultNxdomain.Elapsed" units="ms">
  <owner>juliatuttle@chromium.org</owner>
  <obsolete>
    Removed 7/2013.
  </obsolete>
  <summary>Elapsed time of DNS probes that return PROBE_NXDOMAIN.</summary>
</histogram>

<histogram name="DnsProbe.Probe.ResultUnknown.Elapsed" units="ms">
  <owner>juliatuttle@chromium.org</owner>
  <obsolete>
    Removed 7/2013.
  </obsolete>
  <summary>Elapsed time of DNS probes that return PROBE_UNKNOWN.</summary>
</histogram>

<histogram name="DnsProbe.ProbeDuration" units="ms">
  <owner>juliatuttle@chromium.org</owner>
  <summary>Time between starting and finishing DNS probe.</summary>
</histogram>

<histogram name="DnsProbe.ProbeResult" enum="DnsProbe.ProbeStatus">
  <owner>juliatuttle@chromium.org</owner>
  <summary>Result of DNS probes sent by the probe service.</summary>
</histogram>

<histogram name="DocumentActivity.Enabled" enum="RunningMode">
  <owner>mariakhomenko@chromium.org</owner>
  <summary>
    Recorded only for Android. Records on every metrics upload whether document
    mode is enabled.
  </summary>
</histogram>

<histogram name="DocumentScan.ConverterResult" enum="BooleanSuccess">
  <owner>pstew@chromium.org</owner>
  <summary>
    Chrome OS document scan metric that tracks whether a document scan call to
    the image conversion process suceeded.
  </summary>
</histogram>

<histogram name="DocumentScan.ScanResult" enum="BooleanSuccess">
  <owner>pstew@chromium.org</owner>
  <summary>
    Chrome OS document scan metric that tracks whether a document scan call to
    the sane backend process suceeded.
  </summary>
</histogram>

<histogram name="DomainBoundCerts.DBLoadedCount">
  <owner>mattm@chromium.org</owner>
  <summary>Number of certs loaded from domain bound cert database.</summary>
</histogram>

<histogram name="DomainBoundCerts.DBLoadTime" units="ms">
  <owner>mattm@chromium.org</owner>
  <summary>Time spent loading domain bound cert database.</summary>
</histogram>

<histogram name="DomainBoundCerts.DBSizeInKB" units="KB">
  <owner>mattm@chromium.org</owner>
  <summary>
    The size, on disk, of the domain bound cert database as it is being loaded.
  </summary>
</histogram>

<histogram name="DomainBoundCerts.GenerateCertTime" units="ms">
  <owner>mattm@chromium.org</owner>
  <summary>Time spent generating a domain bound cert.</summary>
</histogram>

<histogram name="DomainBoundCerts.GetCertTime" units="ms">
  <owner>mattm@chromium.org</owner>
  <summary>
    Combined time for GetDomainBoundCert retrieval (both synchronous and
    asynchronous).
  </summary>
</histogram>

<histogram name="DomainBoundCerts.GetCertTimeAsync" units="ms">
  <owner>mattm@chromium.org</owner>
  <summary>
    Time for asynchronous retrieval (from the GetDomainBoundCert call until
    completion callback is called).
  </summary>
</histogram>

<histogram name="DomainBoundCerts.GetCertTimeSync" units="ms">
  <owner>mattm@chromium.org</owner>
  <summary>Time for synchronous GetDomainBoundCert cert retrieval.</summary>
</histogram>

<histogram name="DomainBoundCerts.GetDomainBoundCertResult"
    enum="DomainBoundCerts.GetCertResult">
  <owner>mattm@chromium.org</owner>
  <summary>Result of GetDomainBoundCert function.</summary>
</histogram>

<histogram name="DomainBoundCerts.KillDatabaseResult" enum="BooleanSuccess">
  <owner>mattm@chromium.org</owner>
  <summary>
    Whether the domain-bound certs sqlite database was killed succesfully when
    an unrecoverable error was detected.
  </summary>
</histogram>

<histogram name="DomainBoundCerts.Support" enum="DomainBoundCerts.Support">
  <owner>mattm@chromium.org</owner>
  <summary>
    Counts of SSL client sockets broken down by support for Domain Bound
    Certificates TLS extension.  Counts only connections with full handshakes,
    resumed sessions are not counted.
  </summary>
</histogram>

<histogram name="DomainBoundCerts.TaskMaxWaitTime" units="ms">
  <owner>mattm@chromium.org</owner>
  <summary>
    Longest time spent by requests waiting for load of domain bound cert
    database.
  </summary>
</histogram>

<histogram name="DomainBoundCerts.TaskWaitCount">
  <owner>mattm@chromium.org</owner>
  <summary>
    Number of requests that waited for load of domain bound cert database.
  </summary>
</histogram>

<histogram name="DomainReliability.BeaconReported" enum="BooleanReported">
  <owner>juliatuttle@chromium.org</owner>
  <summary>
    Whether a beacon added to a Domain Reliability context was saved to be
    uploaded to the collector.
  </summary>
</histogram>

<histogram name="DomainReliability.OnBeaconDidEvict" enum="BooleanDidEvict">
  <owner>juliatuttle@chromium.org</owner>
  <summary>
    Whether adding a beacon to a Domain Reliability context caused it to evict
    an older beacon to stay within memory limits.
  </summary>
</histogram>

<histogram name="DomainReliability.ReportedBeaconError" enum="NetErrorCodes">
  <owner>juliatuttle@chromium.org</owner>
  <summary>
    The Chrome error code included in a beacon saved to be uploaded to the
    collector.
  </summary>
</histogram>

<histogram name="DomainReliability.ReportedBeaconError_HasServerIP"
    enum="NetErrorCodes">
  <owner>juliatuttle@chromium.org</owner>
  <summary>
    The Chrome error code included in a beacon with a non-empty server_ip field
    saved to be uploaded to the collector.
  </summary>
</histogram>

<histogram name="DomainReliability.UploadCollectorIndex">
  <owner>juliatuttle@chromium.org</owner>
  <summary>
    The index of the collector that a Domain Reliability upload was sent to.
    (Later collectors are only used when earlier collectors have failed.)
  </summary>
</histogram>

<histogram name="DomainReliability.UploadCollectorRetryDelay" units="ms">
  <owner>juliatuttle@chromium.org</owner>
  <summary>
    After an upload to a collector finishes (successfully or not), the delay
    before the scheduler can send another upload to that collector. (If recent
    uploads were successful, this will be 0; if not, it will be based on the
    BackoffEntry and any Retry-After header received.)
  </summary>
</histogram>

<histogram name="DomainReliability.UploadDuration" units="ms">
  <owner>juliatuttle@chromium.org</owner>
  <summary>
    The elapsed time between starting and finishing a Domain Reliability upload.
  </summary>
</histogram>

<histogram name="DomainReliability.UploadFailover"
    enum="DomainReliability.BooleanFailover">
  <owner>juliatuttle@chromium.org</owner>
  <obsolete>
    Deprecated 11/2014; see UploadCollectorIndex
  </obsolete>
  <summary>
    Whether a Domain Reliability upload was sent to a collector other than the
    first one listed in the config. (This only happens when an upload to the
    first collector fails.)
  </summary>
</histogram>

<histogram name="DomainReliability.UploadInterval" units="ms">
  <owner>juliatuttle@chromium.org</owner>
  <summary>
    The time between successive Domain Reliability uploads being started in the
    same context. (Can be arbitrarily long if no beacons are reported in a
    while.)
  </summary>
</histogram>

<histogram name="DomainReliability.UploadLatency" units="ms">
  <owner>juliatuttle@chromium.org</owner>
  <summary>
    The time from the first beacon in a Domain Reliability upload being recorded
    and that upload completing successfully. (Note that if some beacons are
    never uploaded successfully, they will not feature in this histogram at
    all.)
  </summary>
</histogram>

<histogram name="DomainReliability.UploadNetError" enum="NetErrorCodes">
  <owner>juliatuttle@chromium.org</owner>
  <summary>
    The network error code (or OK if none) returned by the URLFetcher when a
    Domain Reliability report is uploaded.
  </summary>
</histogram>

<histogram name="DomainReliability.UploadResponseCode" enum="HttpResponseCode">
  <owner>juliatuttle@chromium.org</owner>
  <summary>
    The HTTP response code returned by the Domain Reliability collector when a
    report is uploaded.
  </summary>
</histogram>

<histogram name="DomainReliability.UploadSuccess" enum="BooleanSuccess">
  <owner>juliatuttle@chromium.org</owner>
  <summary>Whether a Domain Reliability upload succeeded.</summary>
</histogram>

<histogram name="DomDistiller.BarCloseButtonUsage" enum="BooleanPanelWasOpen">
  <owner>mdjones@chromium.org</owner>
  <summary>
    Records if the close button was used before or after opening and viewing
    Reader Mode content.
  </summary>
</histogram>

<histogram name="DomDistiller.DistillabilityRejection" enum="DistillRejection">
  <owner>wychen@chromium.org</owner>
  <summary>
    The reason to reject distillability at PageDistillableAfterParsing time.
  </summary>
</histogram>

<histogram name="DomDistiller.DistillationQuality" enum="BooleanSuccess">
  <owner>nyquist@chromium.org</owner>
  <summary>
    Whether the perceived quality of the distillation of a web page was good.
  </summary>
</histogram>

<histogram name="DomDistiller.PageDistillable" enum="DistillableType">
  <obsolete>
    PageDistillableAfterLoading and PageDistillableAfterParsing provide more
    details since 02/2016.
  </obsolete>
  <owner>cjhopman@chromium.org</owner>
  <summary>
    Records the &quot;Distillable Type&quot; (not distillable, mobile-friendly
    distillable, non-mobile-friendly distillable, etc) for each analyzed page.
  </summary>
</histogram>

<histogram name="DomDistiller.PageDistillableAfterLoading"
    enum="DistillableType2">
  <owner>wychen@chromium.org</owner>
  <summary>
    Records the &quot;Distillable Type&quot; (mobile-friendly not distillable,
    mobile-friendly distillable, non-mobile-friendly not distillable,
    non-mobile-friendly distillable) for each analyzed page after loading.
  </summary>
</histogram>

<histogram name="DomDistiller.PageDistillableAfterParsing"
    enum="DistillableType2">
  <owner>wychen@chromium.org</owner>
  <summary>
    Records the &quot;Distillable Type&quot; (mobile-friendly not distillable,
    mobile-friendly distillable, non-mobile-friendly not distillable,
    non-mobile-friendly distillable) for each analyzed page after parsing.
  </summary>
</histogram>

<histogram name="DomDistiller.PageDistilledType" enum="DistillableType">
  <obsolete>
    Not collected anymore.
  </obsolete>
  <owner>cjhopman@chromium.org</owner>
  <summary>
    Records the &quot;Distillable Type&quot; (not distillable, mobile-friendly
    distillable, non-mobile-friendly distillable, etc) for each distilled page.
  </summary>
</histogram>

<histogram name="DomDistiller.PageHasDistilledData"
    enum="BooleanHasDistilledData">
  <owner>kuan@chromium.org</owner>
  <summary>Records whether a page has distilled data.</summary>
</histogram>

<histogram name="DomDistiller.ReaderShownForPageLoad" enum="Boolean">
  <owner>mdjones@chromium.org</owner>
  <summary>
    Records if the panel became visible at any point after a page was navigated.
  </summary>
</histogram>

<histogram name="DomDistiller.Statistics.FirstPageWordCount" units="words">
  <owner>mdjones@chromium.org</owner>
  <summary>
    Records the number of words in a distilled page. This only records the first
    page of a multi-page article.
  </summary>
</histogram>

<histogram name="DomDistiller.Statistics.WordCount" units="words">
  <owner>nyquist@chromium.org</owner>
  <summary>
    Records the number of words in a distilled page. For articles with multiple
    pages, each page is counted separately.
  </summary>
</histogram>

<histogram name="DomDistiller.Time.ArticleProcessing" units="ms">
  <owner>yfriedman@chromium.org</owner>
  <summary>
    Time spent in DomDistiller's identification of text content.
  </summary>
</histogram>

<histogram name="DomDistiller.Time.DistillationTotal" units="ms">
  <owner>yfriedman@chromium.org</owner>
  <summary>Complete time spent in DomDistiller's processing of a page.</summary>
</histogram>

<histogram name="DomDistiller.Time.DistillPage" units="ms">
  <owner>wychen@chromium.org</owner>
  <summary>
    Time spent in DistillPageImpl(), mostly ExecuteJavaScript(), including
    compilation and execution.
  </summary>
</histogram>

<histogram name="DomDistiller.Time.DocumentConstruction" units="ms">
  <owner>yfriedman@chromium.org</owner>
  <summary>
    Time spent in creating DomDistiller's internal representation of the HTML
    document.
  </summary>
</histogram>

<histogram name="DomDistiller.Time.Formatting" units="ms">
  <owner>yfriedman@chromium.org</owner>
  <summary>
    Time spent in DomDistiller's final processing of article content/formatting.
  </summary>
</histogram>

<histogram name="DomDistiller.Time.MarkupParsing" units="ms">
  <owner>yfriedman@chromium.org</owner>
  <summary>
    Time spent in DomDistiller's processing of article metadata.
  </summary>
</histogram>

<histogram name="DomDistiller.Time.RunJavaScript" units="ms">
  <owner>wychen@chromium.org</owner>
  <summary>
    Time spent in ExecuteJavaScript() in DomDistiller. It includes JavaScript
    code transmission through IPC, parsing, compilation, execution, and
    returning the JSON back through IPC.
  </summary>
</histogram>

<histogram name="DomDistiller.Time.SwipeToPaint" units="ms">
  <owner>wychen@chromium.org</owner>
  <summary>
    Records the time from a swipe-up gesture on ReaderModePanel to the first
    paint of the empty template.
  </summary>
</histogram>

<histogram name="DomDistiller.Time.ViewingReaderModePanel" units="ms">
  <owner>mdjones@chromium.org</owner>
  <summary>
    Records the amount of time between the Reader Mode panel opening and it
    closing or returning to the peeking state.
  </summary>
</histogram>

<histogram name="DOMStorage.clear" units="ms">
  <obsolete>
    Deprecated 2012.
  </obsolete>
  <owner>michaeln@chromium.org</owner>
  <summary>
    Duration to execute localStorage.clear() or sessionStorage.clear().
  </summary>
</histogram>

<histogram name="DOMStorage.getItem" units="ms">
  <obsolete>
    Deprecated 2012.
  </obsolete>
  <owner>michaeln@chromium.org</owner>
  <summary>
    Duration to execute localStorage.getItem() or sessionStorage.getItem().
  </summary>
</histogram>

<histogram name="DOMStorage.key" units="ms">
  <obsolete>
    Deprecated 2012.
  </obsolete>
  <owner>michaeln@chromium.org</owner>
  <summary>
    Duration to execute localStorage.key() or sessionStorage.key().
  </summary>
</histogram>

<histogram name="DOMStorage.length" units="ms">
  <obsolete>
    Deprecated 2012.
  </obsolete>
  <owner>michaeln@chromium.org</owner>
  <summary>
    Duration to execute localStorage.length() or sessionStorage.length().
  </summary>
</histogram>

<histogram name="DOMStorage.removeItem" units="ms">
  <obsolete>
    Deprecated 2012.
  </obsolete>
  <owner>michaeln@chromium.org</owner>
  <summary>
    Duration to execute localStorage.removeItem() or
    sessionStorage.removeItem().
  </summary>
</histogram>

<histogram name="DOMStorage.setItem" units="ms">
  <obsolete>
    Deprecated 2012.
  </obsolete>
  <owner>michaeln@chromium.org</owner>
  <summary>
    Duration to execute localStorage.setItem() or sessionStorage.setItem().
  </summary>
</histogram>

<histogram name="Download.AcceptRangesBytes.KBytes" units="KB">
  <owner>asanka@chromium.org</owner>
  <summary>The length of downloads for serves that accept byte ranges.</summary>
</histogram>

<histogram name="Download.AcceptRangesMissingOrInvalid.KBytes" units="KB">
  <owner>asanka@chromium.org</owner>
  <summary>
    The length of downloads for serves that do not specify whether the accept
    ranges, or have invalid ranges specified.
  </summary>
</histogram>

<histogram name="Download.AcceptRangesNone.KBytes" units="KB">
  <owner>asanka@chromium.org</owner>
  <summary>
    The length of downloads for serves that do not accept ranges.
  </summary>
</histogram>

<histogram name="Download.ActualBandwidth" units="Bytes/second">
  <owner>asanka@chromium.org</owner>
  <summary>The actual bandwidth (per read) of a download.</summary>
</histogram>

<histogram name="Download.ApiFunctions" enum="DownloadFunctions">
  <owner>asanka@chromium.org</owner>
  <summary>Downloads extension API function calls.</summary>
</histogram>

<histogram name="Download.BandwidthDiskBytesPerSecond">
  <owner>asanka@chromium.org</owner>
  <summary>
    Disk bandwidth (defined as total bytes divided by the amount of time blocked
    on write or close on the file descriptor) seen for a single download.
  </summary>
</histogram>

<histogram name="Download.BandwidthOverallBytesPerSecond">
  <owner>asanka@chromium.org</owner>
  <summary>
    Overall bandwidth seen for the download.  Note that this is measured at the
    point at which the file is written, and so will not take into account the
    time costs of activities that occur after file write is completed (e.g. safe
    browsing scanning).
  </summary>
</histogram>

<histogram name="Download.BandwidthUsed" units="%">
  <owner>asanka@chromium.org</owner>
  <summary>
    The percentage of the potential bandwidth actually used (per read) of a
    download.  An entry of 100% implies that Chrome was the limiting factor in
    download speed.
  </summary>
</histogram>

<histogram name="Download.ClearAllSize">
  <owner>asanka@chromium.org</owner>
  <summary>
    The number of downloads in history at the time it is cleared.
  </summary>
</histogram>

<histogram name="Download.ContentDisposition" enum="DownloadContentDisposition">
  <owner>asanka@chromium.org</owner>
  <summary>
    Content-Disposition header features. The presence of a Content-Disposition
    header, use of 'filename' and 'filename*' parameters, and string encoding
    schemes are counted for each unthrottled download. The total number
    downloads is Download.Counts[5] (Initiated and Unthrottled).
  </summary>
</histogram>

<histogram name="Download.ContentImageType" enum="DownloadImageType">
  <owner>asanka@chromium.org</owner>
  <summary>Types of images that are downloaded.</summary>
</histogram>

<histogram name="Download.ContentType" enum="DownloadContentType">
  <owner>asanka@chromium.org</owner>
  <summary>Content types that are downloaded.</summary>
</histogram>

<histogram name="Download.Counts" enum="DownloadCountType">
  <owner>asanka@chromium.org</owner>
  <summary>
    Various individual counts in the download system; see DownloadCountType for
    details.
  </summary>
</histogram>

<histogram name="Download.CountsChrome" enum="ChromeDownloadCountType">
  <owner>asanka@chromium.org</owner>
  <summary>
    Various individual counts in the download system, for example the number of
    downloads blocked by throttling from the DownloadRequestLimiter.
  </summary>
</histogram>

<histogram name="Download.DangerousDownloadValidated"
    enum="DownloadItem.DangerType">
  <owner>asanka@chromium.org</owner>
  <owner>felt@chromium.org</owner>
  <summary>
    User chose to save a download which was marked dangerous. Grouped by the
    type of danger.
  </summary>
</histogram>

<histogram name="Download.DangerousFile.DangerousDownloadValidated"
    enum="DownloadItem.DangerousFileType">
  <owner>asanka@chromium.org</owner>
  <owner>felt@chromium.org</owner>
  <summary>
    User chose to save a download which was marked DANGEROUS_FILE. Grouped by
    the type of file.
  </summary>
</histogram>

<histogram name="Download.DangerousFile.Discard"
    enum="DownloadItem.DangerousFileType">
  <owner>asanka@chromium.org</owner>
  <owner>felt@chromium.org</owner>
  <summary>
    A download which was marked DANGEROUS_FILE was discarded without the user
    directly choosing, because the browser was closed.  Grouped by the file
    extension.
  </summary>
</histogram>

<histogram name="Download.DangerousFile.UserDiscard"
    enum="DownloadItem.DangerousFileType">
  <owner>asanka@chromium.org</owner>
  <owner>felt@chromium.org</owner>
  <summary>
    User chose to discard a download which was marked DANGEROUS_FILE. Grouped by
    the file extension.
  </summary>
</histogram>

<histogram name="Download.Database.CreateDownloadDuration" units="ms">
  <owner>asanka@chromium.org</owner>
  <summary>Time taken to create a single download in the history DB.</summary>
</histogram>

<histogram name="Download.Database.QueryDownloadDuration" units="ms">
  <owner>asanka@chromium.org</owner>
  <summary>Time taken to query all downloads from history DB.</summary>
</histogram>

<histogram name="Download.Database.UpdateDownloadDuration" units="ms">
  <owner>asanka@chromium.org</owner>
  <summary>Time taken to update a single download in the history DB.</summary>
</histogram>

<histogram name="Download.DatabaseRecordDropped"
    enum="DownloadDatabaseRecordDroppedType">
  <owner>asanka@chromium.org</owner>
  <summary>Reason for dropping a record read in from the DB.</summary>
</histogram>

<histogram name="Download.DatabaseRemoveDownloadsCount">
  <owner>asanka@chromium.org</owner>
  <summary>Number of downloads removed from the history at once.</summary>
</histogram>

<histogram name="Download.DatabaseRemoveDownloadsTime" units="microseconds">
  <owner>asanka@chromium.org</owner>
  <summary>How long it took to delete some downloads from history.</summary>
</histogram>

<histogram name="Download.DatabaseRemoveDownloadsTimePerRecord"
    units="nanoseconds/record">
  <owner>asanka@chromium.org</owner>
  <summary>
    How long it took to delete some downloads from history, per download.
  </summary>
</histogram>

<histogram name="Download.Discard" enum="DownloadItem.DangerType">
  <owner>asanka@chromium.org</owner>
  <owner>felt@chromium.org</owner>
  <summary>
    A download which was marked dangerous was discarded without the user
    directly choosing, because the browser was closed.  Grouped by the type of
    danger.
  </summary>
</histogram>

<histogram name="Download.DiskBandwidthUsedPercentage" units="%">
  <owner>asanka@chromium.org</owner>
  <summary>
    The percentage of the available disk bandwidth that was used by the
    download.  100% indicates that the disk bandwidth was the limiting factor
    for the download.
  </summary>
</histogram>

<histogram name="Download.DOMEvent" enum="DownloadDOMEvent">
  <owner>asanka@chromium.org</owner>
  <summary>User actions in chrome://downloads</summary>
</histogram>

<histogram name="Download.DownloadDangerPrompt"
    enum="SBClientDownloadExtensions">
  <owner>jialiul@chromium.org</owner>
  <summary>
    Records when user is shown the download danger prompt while attempting to
    recover a blocked download from chrome://downloads, grouped by the type of
    file.
  </summary>
</histogram>

<histogram name="Download.DownloadSize" units="KB">
  <owner>asanka@chromium.org</owner>
  <summary>The size of successfully completed downloads.</summary>
</histogram>

<histogram name="Download.DownloadWarningShown" enum="DownloadItem.DangerType">
  <owner>asanka@chromium.org</owner>
  <summary>
    A download warning was shown in the shelf. Note that some downloads may not
    be shown on the shelf, e.g., if chrome://downloads is already open when the
    download completes, or if an extension is using the downloads API. Grouped
    by the type of danger.
  </summary>
</histogram>

<histogram name="Download.FeedbackDialogEnabled" enum="BooleanEnabled">
  <owner>asanka@chromium.org</owner>
  <summary>
    Whether the user enables dangerous download feedback reporting after viewing
    the opt-in dialog.
  </summary>
</histogram>

<histogram name="Download.FilePickerResult" enum="DownloadFilePickerResult">
  <owner>asanka@chromium.org</owner>
  <summary>
    How the user interacts with the file chooser when doing a &quot;Save
    As&quot; for non-full-page saves.
  </summary>
</histogram>

<histogram name="Download.FileThreadBlockedTime">
  <owner>asanka@chromium.org</owner>
  <summary>
    The amount of time in milliseconds the file thread blocks for each set of
    buffers drained from the incoming pipe (ms).
  </summary>
</histogram>

<histogram name="Download.FileThreadReceiveBuffers">
  <owner>asanka@chromium.org</owner>
  <summary>
    The number of buffers in a call to DownloadManager::UpdateDownload.
  </summary>
</histogram>

<histogram name="Download.FirstOpenTime" units="ms">
  <owner>asanka@chromium.org</owner>
  <summary>
    The time between a download completing and the file being opened for the
    first time.
  </summary>
</histogram>

<histogram name="Download.HistorySize">
  <owner>asanka@chromium.org</owner>
  <summary>
    The number of items in the History database, at the time a new download is
    recorded.
  </summary>
</histogram>

<histogram name="Download.HistorySize2">
  <owner>asanka@chromium.org</owner>
  <summary>
    The number of items in the History database, at the time a new download is
    recorded. Higher maximum, more buckets than Download.HistorySize.
  </summary>
</histogram>

<histogram name="Download.InterruptedAtEndError" enum="NetErrorCodes">
  <owner>asanka@chromium.org</owner>
  <summary>
    Positive net error code that caused a download to be interrupted at the
    *end* of a download (when the number of bytes is known). This is only
    triggered when the total content size is known before any bytes are
    transferred, such as when a Content-Length header is supplied.
  </summary>
</histogram>

<histogram name="Download.InterruptedAtEndReason" enum="InterruptReason">
  <owner>asanka@chromium.org</owner>
  <summary>
    The reason that a download was interrupted at the *end* of a download (when
    the number of bytes is known). This is only triggered when the total content
    size is known before any bytes are transferred, such as when a
    Content-Length header is supplied.
  </summary>
</histogram>

<histogram name="Download.InterruptedError" enum="NetErrorCodes">
  <owner>asanka@chromium.org</owner>
  <summary>
    Positive net error code that caused a download to be interrupted.
  </summary>
</histogram>

<histogram name="Download.InterruptedOverrunBytes">
  <owner>asanka@chromium.org</owner>
  <summary>
    The excessive number of bytes which have been received at the time that a
    download is interrupted. This is only triggered when the total content size
    is known before any bytes are transferred, such as when a Content-Length
    header is supplied.
  </summary>
</histogram>

<histogram name="Download.InterruptedReason" enum="InterruptReason">
  <owner>asanka@chromium.org</owner>
  <summary>The reason that a download was interrupted.</summary>
</histogram>

<histogram name="Download.InterruptedReceivedSizeK" units="KB">
  <owner>asanka@chromium.org</owner>
  <summary>
    The number of kilobytes received for a download at the time it is
    interrupted.
  </summary>
</histogram>

<histogram name="Download.InterruptedTotalSizeK" units="KB">
  <owner>asanka@chromium.org</owner>
  <summary>
    The reported total size in kilobytes for a download at the time it is
    interrupted. This is essentially the size reported by the Content-Length
    header. If no size is specified up-front, it is not recorded in the
    histogram. For example, a download transferred with chunked encoding will
    not be recorded.
  </summary>
</histogram>

<histogram name="Download.InterruptedUnderrunBytes">
  <owner>asanka@chromium.org</owner>
  <summary>
    The total number of bytes minus the received number of bytes at the time
    that a download is interrupted. This is only triggered when the total
    content size is known before any bytes are transferred, such as when a
    Content-Length header is supplied.
  </summary>
</histogram>

<histogram name="Download.InterruptedUnknownSize"
    enum="DownloadInterruptedUnknownSizeType">
  <owner>asanka@chromium.org</owner>
  <summary>
    True if the size of an interrupted download is unknown, false if it is
    known.
  </summary>
</histogram>

<histogram name="Download.IOSDownloadPassKitResult"
    enum="DownloadPassKitResult">
  <owner>gchatz@chromium.org</owner>
  <summary>
    Result when a user attempts to download a PassKit file on iOS with
    WKWebView.
  </summary>
</histogram>

<histogram name="Download.MaliciousDownloadClassified"
    enum="DownloadItem.DangerType">
  <owner>asanka@chromium.org</owner>
  <owner>felt@chromium.org</owner>
  <summary>
    A download has been marked as malicious. Grouped by the type of danger. Each
    download can only be recorded once; it will be labeled with the first type
    of danger spotted.
  </summary>
</histogram>

<histogram name="Download.MapErrorNetworkFailed" enum="NetErrorCodes">
  <owner>asanka@chromium.org</owner>
  <summary>
    Network error that produced a DOWNLOAD_INTERRUPT_REASON_NETWORK_FAILED
    result in DownloadResourceHandler::OnResponseCompleted().
  </summary>
</histogram>

<histogram name="Download.MapWinShErrorAccessDenied"
    enum="SpecialShFileOperationCodes">
  <owner>asanka@chromium.org</owner>
  <summary>
    Windows error that produced a DOWNLOAD_INTERRUPT_REASON_ACCESS_DENIED result
    in MapShFileOperationCodes().
  </summary>
</histogram>

<histogram name="Download.MapWinShErrorFileFailed"
    enum="SpecialShFileOperationCodes">
  <owner>asanka@chromium.org</owner>
  <summary>
    Windows error that produced a DOWNLOAD_INTERRUPT_REASON_FILE_FAILED result
    in MapShFileOperationCodes().
  </summary>
</histogram>

<histogram name="Download.MapWinShErrorTransientError"
    enum="SpecialShFileOperationCodes">
  <owner>asanka@chromium.org</owner>
  <summary>
    Windows error that produced a DOWNLOAD_INTERRUPT_REASON_FILE_TRANSIENT_ERROR
    result in MapShFileOperationCodes().
  </summary>
</histogram>

<histogram name="Download.OnChanged">
  <owner>asanka@chromium.org</owner>
  <summary>
    Percentage of DownloadItem::Observer::OnDownloadUpdated events that
    signified a change in the extension API representation of the download.
  </summary>
</histogram>

<histogram name="Download.OpenMethod" enum="DownloadOpenMethod">
  <owner>asanka@chromium.org</owner>
  <summary>
    Invocation count for methods of opening a download. For some file types,
    Chrome defaults to opening the file in the browser instead of invoking the
    system handler. The user has the option of overriding this behavior.
  </summary>
</histogram>

<histogram name="Download.OpensOutstanding">
  <owner>asanka@chromium.org</owner>
  <summary>The number of unopened downloads, when one is opened.</summary>
</histogram>

<histogram name="Download.OpenTime" units="ms">
  <owner>asanka@chromium.org</owner>
  <summary>
    The time between a download completing and the file being opened.
  </summary>
</histogram>

<histogram name="Download.OriginStateOnFullResumption"
    enum="DownloadOriginStateOnResumption">
  <owner>asanka@chromium.org</owner>
  <summary>
    Changes observed when a response is received for a full download resumption
    request.
  </summary>
</histogram>

<histogram name="Download.OriginStateOnPartialResumption"
    enum="DownloadOriginStateOnResumption">
  <owner>asanka@chromium.org</owner>
  <summary>
    Changes observed when a response is received for a partial (byte-range)
    download resumption request.
  </summary>
</histogram>

<histogram name="Download.PotentialBandwidth" units="Bytes/second">
  <owner>asanka@chromium.org</owner>
  <summary>
    The maximum bandwidth (per read) that Chrome could have provided for the
    download.  If the actual bandwidth equals the potential bandwidth, that
    means that Chrome was the limiting factor for download bandwidth.
  </summary>
</histogram>

<histogram name="Download.ResourceHandlerBlockedPercentage" units="%">
  <owner>asanka@chromium.org</owner>
  <summary>
    The percentage of the lifetime of the DownloadResourceHandler for which it
    was blocked by downstream flow control.  0% indicates that the network
    bandwidth was the limiting factor for the download.
  </summary>
</histogram>

<histogram name="Download.SavePackage" enum="DownloadSavePackageEvent">
  <owner>asanka@chromium.org</owner>
  <summary>
    Events (e.g. Started, Cancelled, Finished, Write to Completed file, Write to
    Failed file) occuring within the state machine of a SavePackage operation.
  </summary>
</histogram>

<histogram name="Download.ShelfInProgressSizeOnAutoClose">
  <owner>asanka@chromium.org</owner>
  <summary>
    The number of download items in progress on the shelf when it closes
    automatically.
  </summary>
</histogram>

<histogram name="Download.ShelfInProgressSizeOnUserClose">
  <owner>asanka@chromium.org</owner>
  <summary>
    The number of download items in progress on the shelf when the user closes
    it.
  </summary>
</histogram>

<histogram name="Download.ShelfSizeOnAutoClose">
  <owner>asanka@chromium.org</owner>
  <summary>
    The number of download items on the shelf when it closes automatically.
  </summary>
</histogram>

<histogram name="Download.ShelfSizeOnUserClose">
  <owner>asanka@chromium.org</owner>
  <summary>
    The number of download items on the shelf when the user closes it.
  </summary>
</histogram>

<histogram name="Download.ShowDangerousDownloadConfirmationPrompt"
    enum="DownloadItem.DangerType">
  <owner>asanka@chromium.org</owner>
  <summary>
    User saw the confirm prompt to save a download which was marked dangerous.
    Grouped by the type of danger.
  </summary>
</histogram>

<histogram name="Download.Sources" enum="DownloadSource">
  <owner>asanka@chromium.org</owner>
  <summary>
    The initiation source (if initiated within the content layer of chrome) for
    a download.
  </summary>
</histogram>

<histogram name="Download.SourcesChrome" enum="ChromeDownloadSource">
  <owner>asanka@chromium.org</owner>
  <summary>
    The initiation source (if initiated within the above-content layer of
    chrome) for a download.
  </summary>
</histogram>

<histogram name="Download.Time" units="ms">
  <owner>asanka@chromium.org</owner>
  <summary>Time between the start of a download and its completion.</summary>
</histogram>

<histogram name="Download.TimeToRenameFailureAfterInitialFailure" units="ms">
  <owner>asanka@chromium.org</owner>
  <summary>
    Time elapsed until a retried download file rename operation failed for the
    last time after the initial rename failed.
  </summary>
</histogram>

<histogram name="Download.TimeToRenameSuccessAfterInitialFailure" units="ms">
  <owner>asanka@chromium.org</owner>
  <summary>
    Time elapsed until a retried download file rename operation succeeded after
    the initial rename failed.
  </summary>
</histogram>

<histogram name="Download.UserDiscard" enum="DownloadItem.DangerType">
  <owner>asanka@chromium.org</owner>
  <owner>felt@chromium.org</owner>
  <summary>
    User chose to discard a download which was marked dangerous.  Grouped by the
    type of danger.
  </summary>
</histogram>

<histogram name="Download.WriteLoopCount">
  <owner>asanka@chromium.org</owner>
  <summary>
    The number of iterations for the write loop in BaseFile::AppendDataTofile().
  </summary>
</histogram>

<histogram name="Download.WriteSize" units="Bytes">
  <owner>asanka@chromium.org</owner>
  <summary>The write size for calls to BaseFile::AppendDataTofile().</summary>
</histogram>

<histogram name="Drive.BatchUploadResponseCode" enum="HttpResponseCode">
  <owner>hirono@chromium.org</owner>
  <summary>Respose code of batch upload request.</summary>
</histogram>

<histogram name="Drive.CacheDBOpenStatus" enum="DriveCacheDBOpenStatus">
  <obsolete>
    Deprecated 8/2013.
  </obsolete>
  <owner>joshwoodward@google.com</owner>
  <summary>Status of drive cache metadata database open.</summary>
</histogram>

<histogram name="Drive.DirectoryFeedLoadTime" units="ms">
  <owner>joshwoodward@google.com</owner>
  <summary>
    Time spent to load the list of files in a single directory from Google Drive
    server.
  </summary>
</histogram>

<histogram name="Drive.DownloadFromDriveFileSize" units="KB">
  <owner>mtomasz@chromium.org</owner>
  <summary>
    Sizes of files being downloaded from Drive. Temporary histogram for
    gathering data for http://crbug.com/229650.
  </summary>
</histogram>

<histogram name="Drive.EntireFeedLoadTime" units="microseconds">
  <obsolete>
    Deprecated 12/2013 due to the UMA stat bucket layout change. We'll use
    Drive.FullFeedLoadTime instead.
  </obsolete>
  <owner>joshwoodward@google.com</owner>
  <summary>
    Time spent to load the entire file system information from the server
  </summary>
</histogram>

<histogram name="Drive.EntryKind" enum="DriveEntryKind">
  <obsolete>
    Deprecated 10/2012.
  </obsolete>
  <owner>joshwoodward@google.com</owner>
  <summary>
    Provides breakdown of specific formats for hosted documents. Recorded when
    feed is loaded from the server.
  </summary>
</histogram>

<histogram name="Drive.FileFormat" enum="DriveFileFormat">
  <obsolete>
    Deprecated 10/2012.
  </obsolete>
  <owner>joshwoodward@google.com</owner>
  <summary>
    Provides breakdown of specific file formats for regular files. Recorded when
    feed is loaded from the server.
  </summary>
</histogram>

<histogram name="Drive.FilesListRequestRunner.ApiErrorCode"
    enum="DriveApiErrorCode">
  <owner>mtomasz@chromium.org</owner>
  <summary>
    Error codes returned by the Drive API for files list requests executed via
    the FilesListRequestRunner class.
  </summary>
</histogram>

<histogram name="Drive.FilesListRequestRunner.MaxResults">
  <owner>mtomasz@chromium.org</owner>
  <summary>
    Maximum number of results for each files list request using the Drive API.
  </summary>
</histogram>

<histogram name="Drive.FullFeedLoadTime" units="ms">
  <owner>joshwoodward@google.com</owner>
  <summary>
    Time spent to load the entire file system information from the server
  </summary>
</histogram>

<histogram name="Drive.InitialFeedLoadTime" units="microseconds">
  <obsolete>
    Deperecated 12/2013 since it did not record meaningful information.
    Drive.DirectoryFeedLoadTime should be checked for measuring the time until
    the user sees the first response of file lists.
  </obsolete>
  <owner>joshwoodward@google.com</owner>
  <summary>
    Time spent to load the initial part of the file system information from the
    server
  </summary>
</histogram>

<histogram name="Drive.MetadataDBInitResult" enum="DriveMetadataDBInitStatus">
  <owner>joshwoodward@google.com</owner>
  <summary>Result of drive resource metadata database initialization.</summary>
</histogram>

<histogram name="Drive.MetadataDBOpenExistingResult"
    enum="DriveMetadataDBInitStatus">
  <owner>joshwoodward@google.com</owner>
  <summary>
    Result of attempt to open existing drive resource metadata database.
  </summary>
</histogram>

<histogram name="Drive.MetadataDBValidityCheckFailureReason"
    enum="DriveMetadataDBValidityCheckFailureReason">
  <owner>bengold@chromium.org</owner>
  <owner>hashimoto@chromium.org</owner>
  <summary>
    Reason of drive resource metadata database validity check failure. Recorded
    when the validity check fails during Drive metadata initialization triggered
    by profile initialization.
  </summary>
</histogram>

<histogram name="Drive.MetadataDBVersionBeforeUpgradeCheck">
  <owner>joshwoodward@google.com</owner>
  <summary>
    Version number of drive resource metadata DB found on the disk before
    checking whether it should be upgraded. Recorded during Drive metadata
    initialization triggered by profile initialization.
  </summary>
</histogram>

<histogram name="Drive.NumberOfCacheFilesRecoveredAfterDBCorruption">
  <owner>joshwoodward@google.com</owner>
  <summary>
    Number of files recovered from Drive cache directory. Recorded when file
    recovery takes place after metadata DB corruption is found during metadata
    DB initialization.
  </summary>
</histogram>

<histogram name="Drive.NumberOfHostedDocuments">
  <owner>joshwoodward@google.com</owner>
  <summary>
    Number of hosted documents (spreadsheets etc.) on Drive. Logged when Drive
    is first accessed.
  </summary>
</histogram>

<histogram name="Drive.NumberOfRegularFiles">
  <owner>joshwoodward@google.com</owner>
  <summary>
    Number of regualr files on Drive.  Logged when Drive is first accessed.
  </summary>
</histogram>

<histogram name="Drive.NumberOfTotalFiles">
  <owner>joshwoodward@google.com</owner>
  <summary>
    Number of total files (regualr files + hosted documents) on Drive.  Logged
    when Drive is first accessed.
  </summary>
</histogram>

<histogram name="Drive.PushNotificationInitiallyEnabled" enum="BooleanEnabled">
  <owner>joshwoodward@google.com</owner>
  <summary>
    Tracks whether the push notification is initially enabled for Drive.
    Recorded when the first notification is processed. Notification is emulated
    by polling if the push notication is disabled.
  </summary>
</histogram>

<histogram name="Drive.PushNotificationRegistered" enum="BooleanRegistered">
  <owner>joshwoodward@google.com</owner>
  <summary>
    Tracks whether the push notification request is registered correctly for
    Drive. Recorded when the push notification manager is initialized.
  </summary>
</histogram>

<histogram name="Drive.SearchMetadataTime" units="microseconds">
  <owner>joshwoodward@google.com</owner>
  <summary>
    Time spent to perform an incremental search for auto completion of files on
    Drive. This time is collected for every partial query the user types for
    auto completion.  For instance, if the user types &quot;faq&quot;,
    incremental searches are performed for &quot;f&quot;, &quot;fa&quot;, and
    &quot;faq&quot; respectively.
  </summary>
</histogram>

<histogram name="Drive.TotalFileCountInBatchUpload">
  <owner>hirono@chromium.org</owner>
  <summary>Total file count contained in a drive batch upload request.</summary>
</histogram>

<histogram name="Drive.TotalFileSizeInBatchUpload" units="KB">
  <owner>hirono@chromium.org</owner>
  <summary>Total file size contained in a drive batch upload request.</summary>
</histogram>

<histogram name="Drive.TransferBlockedOnJobs" units="jobs">
  <owner>mtomasz@chromium.org</owner>
  <summary>
    Number of jobs which have to be completed before a newly added download or
    download from or to Drive is requested. Temporary histogram for gathering
    data for http://crbug.com/229650.
  </summary>
</histogram>

<histogram name="Drive.UploadProtocol" enum="DriveUploadProtocol">
  <owner>hirono@chromium.org</owner>
  <summary>
    Upload protocol for each file. e.g. Batch upload including 5 files triggers
    the metric 5 times.
  </summary>
</histogram>

<histogram name="Drive.UploadToDriveFileSize" units="KB">
  <owner>mtomasz@chromium.org</owner>
  <summary>
    Sizes of files being uploaded to Drive. Temporary histogram for gathering
    data for http://crbug.com/229650.
  </summary>
</histogram>

<histogram name="DriveOffline.CrosAutoEnableOutcome"
    enum="CrosEnableDriveOfflineOutcome">
  <owner>joshwoodward@google.com</owner>
  <summary>
    Outcome of enabling Google Drive offline mode automatically when a user
    first logs into a Chrome OS device. This process involves opening a hidden
    web page in the context of the Google Drive hosted app to perform the
    initialization of offline mode.
  </summary>
</histogram>

<histogram name="EasyUnlock.AuthenticationSuccess" enum="BooleanSuccess">
  <owner>joshwoodward@google.com</owner>
  <owner>isherman@chromium.org</owner>
  <summary>
    When Easy Unlock attempts to authenticate the secure connection between a
    Chromebook (or other Chrome device) and an Android phone, whether the
    authentication succeeded.
  </summary>
</histogram>

<histogram name="EasyUnlock.AuthEvent.DidUserManuallyUnlockPhone"
    enum="EasyUnlockDidUserManuallyUnlockPhone">
  <owner>isherman@google.com</owner>
  <owner>xiaowenx@google.com</owner>
  <owner>xiyuan@google.com</owner>
  <summary>
    Upon a successful Smart Lock unlock or signin, records whether the user's
    phone was locked during any point while the lock screen was up. This can be
    used to get a sense for whether users are using Smart Lock for Chromebook
    without something like Smart Lock for Android to keep their phones unlocked.
  </summary>
</histogram>

<histogram name="EasyUnlock.AuthEvent.SignIn" enum="EasyUnlockAuthEvent">
  <owner>isherman@google.com</owner>
  <owner>xiaowenx@google.com</owner>
  <owner>xiyuan@google.com</owner>
  <summary>
    Measures the use of Smart Lock on the sign-in screen: records whether a
    Smart Lock login succeeded or failed; or if a password fallback was used,
    the reason why. Recorded upon a login attempt for users who have the Smart
    Lock feature enabled.
  </summary>
</histogram>

<histogram name="EasyUnlock.AuthEvent.SignIn.Duration" units="ms">
  <owner>isherman@google.com</owner>
  <owner>tengs@google.com</owner>
  <owner>xiaowenx@google.com</owner>
  <summary>
    Measures the time elapsed between the user focusing her user pod and signing
    in using Smart Lock.
  </summary>
</histogram>

<histogram name="EasyUnlock.AuthEvent.Unlock" enum="EasyUnlockAuthEvent">
  <owner>isherman@google.com</owner>
  <owner>xiaowenx@google.com</owner>
  <owner>xiyuan@google.com</owner>
  <summary>
    Measures the use of Smart Lock on the lock screen: records whether a Smart
    Lock unlock attempt succeeded or failed; or if a password fallback was used,
    the reason why. Recorded upon an unlock attempt for users who have the Smart
    Lock feature enabled.
  </summary>
</histogram>

<histogram name="EasyUnlock.AuthEvent.Unlock.Duration" units="ms">
  <owner>isherman@google.com</owner>
  <owner>tengs@google.com</owner>
  <owner>xiaowenx@google.com</owner>
  <summary>
    Measures the time elapsed between the lock screen being shown and the user
    unlocking the device using Smart Lock. The lock screen is typically shown
    when the user opens her Chromebook's lid (or otherwise wakes the computer),
    but can also be shown when the user manually locks the device.
  </summary>
</histogram>

<histogram name="EasyUnlock.AuthProximity.RemoteDeviceModelHash"
    enum="EasyUnlockDeviceModelHash">
  <owner>tengs@chromium.org</owner>
  <owner>xiaowenx@chromium.org</owner>
  <summary>
    The hash of the phone model used to successfully sign in or unlock using
    Smart Lock.
  </summary>
  <details>
    This hash is calculated by taking the first 4 bytes of the MD5 hash of the
    device model.
  </details>
</histogram>

<histogram name="EasyUnlock.AuthProximity.RollingRssi" units="dBm">
  <owner>tengs@chromium.org</owner>
  <owner>xiaowenx@chromium.org</owner>
  <summary>
    Measures the exponentially weighted rolling average of the received signal
    strength indicator (RSSI) of the phone when the user successfully unlocks or
    signs in using Smart Lock.
  </summary>
  <details>
    The exponentially weighted averaging formula is:

      rollingRssi = (1 - weight) * rollingRssi + weight * currentRssi;

    RSSI readings are inherently noisy, so this averaging gives a smoothed RSSI
    value to work with as a heuristic for proximity.

    If no RSSI was read, then a sentinel value of 127 will be recorded.
  </details>
</histogram>

<histogram name="EasyUnlock.AuthProximity.TimeSinceLastZeroRssi" units="ms">
  <owner>tengs@chromium.org</owner>
  <owner>xiaowenx@chromium.org</owner>
  <summary>
    Measures the time delta in milliseconds since the last zero RSSI value was
    read to when the user successfully unlocks or signs in using Smart Lock.
  </summary>
  <details>
    A zero RSSI value is special because both Bluetooth devices in a connection
    attempt to maintain by adjusting their transmit power levels. This time
    delta can be used as a possible heuristic to determine that the phone is
    close to the local device.

    If no RSSI was read, then an overflow value will be recorded.
  </details>
</histogram>

<histogram name="EasyUnlock.AuthProximity.TransmitPowerDelta" units="dBm">
  <owner>tengs@chromium.org</owner>
  <owner>xiaowenx@chromium.org</owner>
  <summary>
    Measures the difference between the current transmit power and the maximum
    transmit power of the local device when the user successfully unlocks or
    signs in using Smart Lock.
  </summary>
  <details>
    Devices connected using classic Bluetooth adjust their transmit power
    dynamically to optimize power and signal strength. The difference between
    the current transmit power and maximum transmit power can be used as a
    heurstic to determine if the phone is close to the local device.

    According to the Bluetooth specs, there are three classes of devices, with a
    maximum transmit power of 20, 4, and 0 dBm respectively.

    If no transmit power was read, then a sentinel value of 127 will be
    recorded.
  </details>
</histogram>

<histogram name="EasyUnlock.BluetoothAvailability"
    enum="EasyUnlockBluetoothType">
  <owner>bcwhite@chromium.org</owner>
  <summary>
    Reports the type of Bluetooth adapter present in the device.
  </summary>
  <details>
    Statistics about what Bluetooth capabilities are available will determine
    how the EasyUnlock feature gets developed and deployed across platforms.

    This value is logged only once during the lifetime of the Chrome process,
    shortly after it starts up.  If a Bluetooth USB adapter is inserted after
    that point, the change will not be registered until Chrome restarts.
  </details>
</histogram>

<histogram name="EasyUnlock.ClickedButton" enum="EasyUnlockButton">
  <owner>joshwoodward@google.com</owner>
  <owner>tbarzic@chromium.org</owner>
  <summary>Button clicked in EasyUnlock app during setup process.</summary>
</histogram>

<histogram name="EasyUnlock.NotificationEvent"
    enum="EasyUnlockNotificationEvent">
  <owner>joshwoodward@google.com</owner>
  <owner>tbarzic@chromium.org</owner>
  <obsolete>
    Deprecated 02/2015. Replaced by EasyUnlock.Setup.PromoNotificationEvent.
  </obsolete>
  <summary>
    Tracks events related to notifications used by EasyUnlock feature. For
    example a specific EasyUnlock notification being shown or clicked.
  </summary>
</histogram>

<histogram name="EasyUnlock.RemoteLockScreenState"
    enum="EasyUnlockRemoteLockScreenState">
  <owner>joshwoodward@google.com</owner>
  <owner>tengs@chromium.org</owner>
  <owner>isherman@chromium.org</owner>
  <summary>
    Whether a lock screen and a trust agent are enabled on the remote device
    (Android phone) for Easy Unlock. Recorded once per status update message
    from the remote device. A status update message is expected to be sent once
    when the secure channel between the local and the remote device is
    established, and also each time the user-presence status changes on the
    remote side.
  </summary>
</histogram>

<histogram name="EasyUnlock.Setup.Devices.Count.Eligible">
  <owner>isherman@chromium.org</owner>
  <owner>xiaowenx@chromium.org</owner>
  <summary>
    The number of eligible devices that the CryptAuth server returns during the
    Smart Lock setup flow.
  </summary>
  <details>
    Note that a single user might report multiple values, for example if she
    tries to complete the setup flow with a device in airplane mode, and then
    tries again taking the device out of airplane mode.
  </details>
</histogram>

<histogram name="EasyUnlock.Setup.Devices.Count.Ineligible">
  <owner>isherman@chromium.org</owner>
  <owner>xiaowenx@chromium.org</owner>
  <summary>
    The number of ineligible devices that the CryptAuth server returns during
    the Smart Lock setup flow.
  </summary>
  <details>
    Note that a single user might report multiple values, for example if she
    tries to complete the setup flow with a device in airplane mode, and then
    tries again taking the device out of airplane mode.
  </details>
</histogram>

<histogram name="EasyUnlock.Setup.Devices.HasSecureScreenLock"
    enum="EasyUnlockHasSecureScreenLock">
  <owner>isherman@chromium.org</owner>
  <owner>xiaowenx@chromium.org</owner>
  <summary>
    Whether the user's phone has a secure screen lock installed. Recorded during
    Smart Lock setup, when the user's phone first connects to the Chromebook.
  </summary>
</histogram>

<histogram name="EasyUnlock.Setup.Devices.HasTrustAgentEnabled"
    enum="EasyUnlockHasTrustAgentEnabled">
  <owner>isherman@chromium.org</owner>
  <owner>xiaowenx@chromium.org</owner>
  <summary>
    Whether the user's phone has a trust agent -- e.g. Smart Lock for Android --
    enabled. Recorded during Smart Lock (for Chrome) setup, when the user's
    phone first connects to the Chromebook.
  </summary>
  <details>
    Note that this histogram tracks whether the setting under Settings ~&gt;
    Security ~&gt; Trust agents ~&gt; Smart Lock (Google) (or any other trust
    agent) is enabled. The Smart Lock trust agent is enabled by default for
    users who have ascure lock screen. This metric does _not_ measure whether
    users have any Smart Lock trustlets enabled.
  </details>
</histogram>

<histogram name="EasyUnlock.Setup.Devices.IneligibilityReason"
    enum="EasyUnlockDeviceIneligibilityReason">
  <owner>isherman@chromium.org</owner>
  <owner>xiaowenx@chromium.org</owner>
  <summary>
    Records the most actionable reason why none of a user's devices were
    eligible as unlock keys for Smart Lock. This is recorded during the Smart
    Lock setup flow, only if the CryptAuth server returns no eligible devices
    for the user.
  </summary>
  <details>
    To be precise, this metric tracks the _least_ actionable _reason_ why the
    _most_ actionable _device_ is not eligible as an unlock key. For example,
    suppose that the user has 10 ineligible devices returned. This metric tries
    to identify the most likely candidate device for use as a Smart Lock key,
    and then records the most confounding reason why that device is still not
    eligible to be used as an unlock key.
  </details>
</histogram>

<histogram name="EasyUnlock.Setup.PromoNotificationEvent"
    enum="EasyUnlockPromoNotificationEvent">
  <owner>isherman@chromium.org</owner>
  <owner>xiaowenx@chromium.org</owner>
  <summary>
    Measures user interactions with the Smart Lock promo notification.
  </summary>
  <details>
    Due to technical limitations of the implementation, it is hard to track
    precisely which users opened the setup app as a result of interacting with
    the promo notification. This metric measures setup app interactions from all
    users who click on the promo notification, and subsequently launch the setup
    app.
  </details>
</histogram>

<histogram name="EasyUnlock.SetupStateOnClose" enum="EasyUnlockSetupState">
  <owner>joshwoodward@google.com</owner>
  <owner>tbarzic@chromium.org</owner>
  <summary>
    The state of EasyUnlock setup when the app window was closed by user.
  </summary>
</histogram>

<histogram name="EasyUnlock.SignIn.LoginEvent" enum="EasyUnlockAuthEvent">
  <obsolete>
    Deprecated 02/2015; replaced by EasyUnlock.AuthEvent.SignIn.
  </obsolete>
  <owner>xiaowenx@google.com</owner>
  <owner>xiyuan@google.com</owner>
  <summary>
    Measures the use of Easy sign-in: records whether an Easy sign-in login
    succeeded or failed; or if a password fallback was used, the reason why.
    Recorded upon a login attempt for users who have the Easy sign-in feature
    enabled.
  </summary>
</histogram>

<histogram name="EasyUnlock.StartupTimeFromSuspend" units="ms">
  <owner>joshwoodward@google.com</owner>
  <owner>tengs@chromium.org</owner>
  <summary>
    The time it takes after resuming from a suspended state (ie. opening the
    Chromebook lid) to when a remote device is connected and a request is made.
    Note that it is possible for the remote device not to be present when
    resuming from suspend, and the device may be connected at a later time.
    Therefore, large values for this metric may not be too meaningful due to
    meddling users.
  </summary>
</histogram>

<histogram name="EasyUnlock.TrialRun.Events" enum="EasyUnlockTrialRunEvents">
  <owner>isherman@chromium.org</owner>
  <owner>xiaowenx@chromium.org</owner>
  <summary>
    Records when the Easy Unlock trial run is launched, and when the user
    attempts to click on the lock icon during the trial run.
  </summary>
  <details>
    If a user clicks on the lock icon more than once, then the &quot;clicked
    lock icon&quot; event counter will be incremented more than once as well.
    Hence, the &quot;user count&quot; data shows how many users ever clicked on
    the lock icon during the trial run. From the raw (non-&quot;user
    count&quot;) data, we can also see whether users click on the icon multiple
    times.
  </details>
</histogram>

<histogram name="EasyUnlock.UnlockEvent" enum="EasyUnlockUnlockEvent">
  <obsolete>
    Deprecated 02/2015; replaced by EasyUnlock.AuthEvent.Unlock.
  </obsolete>
  <owner>joshwoodward@google.com</owner>
  <owner>tbarzic@chromium.org</owner>
  <summary>Screen unlock events detected while EasyUnlock was enabled.</summary>
</histogram>

<histogram name="EmbeddedWorkerInstance.ExistingProcessAllocation" units="ms">
  <obsolete>
    Deprecated 03/2016; replaced by
    EmbeddedWorkerInstance.Start.SendStartWorker_ExistingProcess and
    EmbeddedWorkerInstance.Start.TimeToURLJob_ExistingProcess.
  </obsolete>
  <owner>ksakamoto@chromium.org</owner>
  <summary>
    The time taken to allocate a process to start the EmbeddedWorkerInstance.
    Recorded when an existing process was used.
  </summary>
</histogram>

<histogram name="EmbeddedWorkerInstance.NewProcessAllocation" units="ms">
  <obsolete>
    Deprecated 03/2016; replaced by
    EmbeddedWorkerInstance.Start.SendStartWorker_NewProcess and
    EmbeddedWorkerInstance.Start.TimeToURLJob_NewProcess.
  </obsolete>
  <owner>ksakamoto@chromium.org</owner>
  <summary>
    The time taken to allocate a process to start the EmbeddedWorkerInstance.
    Recorded when a new process was created.
  </summary>
</histogram>

<histogram name="EmbeddedWorkerInstance.ProcessAllocation" units="ms">
  <obsolete>
    Deprecated as of 05/2015. Replaced by
    EmbeddedWorkerInstance.NewProcessAllocation and
    EmbeddedWorkerInstance.ExistingProcessAllocation.
  </obsolete>
  <owner>horo@chromium.org</owner>
  <summary>
    The time taken to allocate a process to start the EmbeddedWorkerInstance.
  </summary>
</histogram>

<histogram name="EmbeddedWorkerInstance.ProcessCreated" enum="BooleanCreated">
  <owner>ksakamoto@chromium.org</owner>
  <summary>
    Whether a new renderer process was created for the EmbeddedWorkerInstance or
    existing one was used. Only recorded for installed workers.
  </summary>
</histogram>

<histogram name="EmbeddedWorkerInstance.ScriptEvaluate" units="ms">
  <obsolete>
    Deprecated as of 03/2016. Replaced by
    EmbeddedWorkerInstance.Start.TimeToEvaluateScript.
  </obsolete>
  <owner>horo@chromium.org</owner>
  <summary>
    The time taken to evaluate the script to start the EmbeddedWorkerInstance.
  </summary>
</histogram>

<histogram name="EmbeddedWorkerInstance.ScriptLoadWithNetworkAccess" units="ms">
  <obsolete>
    Deprecated as of 03/2016. Replaced by
    EmbeddedWorkerInstance.Start.TimeToLoad_Network.
  </obsolete>
  <owner>horo@chromium.org</owner>
  <summary>
    The time taken to load the script file for the EmbeddedWorkerInstance with
    network access.
  </summary>
</histogram>

<histogram name="EmbeddedWorkerInstance.ScriptLoadWithoutNetworkAccess"
    units="ms">
  <obsolete>
    Deprecated as of 03/2016. Replaced by
    EmbeddedWorkerInstance.Start.TimeToLoad_HttpCache and
    EmbeddedWorkerInstance.Start.TimeToLoad_InstalledScript.
  </obsolete>
  <owner>horo@chromium.org</owner>
  <summary>
    The time taken to load the script file for the EmbeddedWorkerInstance
    without network access.
  </summary>
</histogram>

<histogram name="EmbeddedWorkerInstance.Start.TimeToEvaluateScript" units="ms">
  <owner>falken@chromium.org</owner>
  <summary>
    The time taken for initial evaluation of the service worker script.
    Specifically, the time between ACK from the renderer that the thread started
    and ACK that the script evaluation finished. Only recorded for installed
    workers.
  </summary>
</histogram>

<histogram name="EmbeddedWorkerInstance.Start.TimeToLoad.HttpCache" units="ms">
  <owner>falken@chromium.org</owner>
  <summary>
    The time taken to load a new (not installed) service worker, when it came
    from the HTTP cache.
  </summary>
</histogram>

<histogram name="EmbeddedWorkerInstance.Start.TimeToLoad.InstalledScript"
    units="ms">
  <owner>falken@chromium.org</owner>
  <summary>The time taken to load an installed service worker.</summary>
</histogram>

<histogram name="EmbeddedWorkerInstance.Start.TimeToLoad.Network" units="ms">
  <owner>falken@chromium.org</owner>
  <summary>
    The time taken to load a new (not installed) service worker, when it came
    from the network.
  </summary>
</histogram>

<histogram name="EmbeddedWorkerInstance.Start.TimeToSendStartWorker" units="ms">
  <owner>falken@chromium.org</owner>
  <summary>
    The time taken between deciding to start a worker and sending the start
    worker IPC. Only recorded for installed workers.
  </summary>
</histogram>

<histogram name="EmbeddedWorkerInstance.Start.TimeToStartThread" units="ms">
  <owner>falken@chromium.org</owner>
  <summary>
    The time taken to start the service worker thread. Specifically, the time
    between ACK from the renderer that load finished and ACK that the thread
    started. Does not include script evaluation time. Only recorded for
    installed workers.
  </summary>
</histogram>

<histogram name="EmbeddedWorkerInstance.Start.TimeToURLJob" units="ms">
  <owner>falken@chromium.org</owner>
  <summary>
    The round-trip time between asking the renderer process to start a worker
    and receiving the corresponding resource request. Only recorded for
    installed workers.
  </summary>
</histogram>

<histogram name="EnhancedBookmarks.AllBookmarksCount">
  <owner>ianwen@chromium.org</owner>
  <obsolete>
    Removed 4/2016 after we no longer show &quot;all bookamrks&quot; in bookmark
    manager.
  </obsolete>
  <summary>Number of bookmarks the user has. Android only.</summary>
</histogram>

<histogram name="EnhancedBookmarks.SyncExperimentState"
    enum="BookmarksExperimentState">
  <obsolete>
    Removed 3/2015 along with the enhanced bookmarks sync experiment.
  </obsolete>
  <owner>noyau@chromium.org</owner>
  <owner>yefim@chromium.org</owner>
  <summary>
    Captures the state the enhanced bookmark experiment is in. Recorded on
    startup. To be removed once the enhanced bookmark experiment is finished.
    see crbug/323423.
  </summary>
</histogram>

<histogram name="EnhancedBookmarks.ViewMode" enum="EnhancedBookmarkViewMode">
  <owner>ianwen@chromium.org</owner>
  <obsolete>
    Removed 9/2015 after list view became the only view mode.
  </obsolete>
  <summary>
    Record which Enhanced Bookmark UI mode users are in. This will be recorded
    everytime the user opens the bookmark manager UI.
  </summary>
</histogram>

<histogram name="Enterprise.AppRestrictionLoadTime" units="ms">
  <owner>aberent@chromium.org</owner>
  <summary>
    Android Only - Time to load the App Restrictions from the O.S..
  </summary>
</histogram>

<histogram name="Enterprise.AppRestrictionsCacheLoad" enum="BooleanSuccess">
  <owner>aberent@chromium.org</owner>
  <summary>
    Android Only - Whether Chrome was able to read and decode the
    AppRestrictions policy cache on startup.
  </summary>
</histogram>

<histogram name="Enterprise.AttributesTPMConsistency"
    enum="EnterpriseAttributesTPMConsistencyType">
  <owner>tnagel@chromium.org</owner>
  <summary>
    Consistency between TPM lock state and absence/presence of install
    attributes at boot.
  </summary>
</histogram>

<histogram name="Enterprise.AutoEnrollmentExtraTime" units="ms">
  <owner>mnissler@chromium.org</owner>
  <summary>
    Time since the user logged in until the auto-enrollment protocol completed.
    0 is sampled when the protocol is done by the time the user logs in.
  </summary>
</histogram>

<histogram name="Enterprise.AutoEnrollmentProtocolTime" units="ms">
  <owner>mnissler@chromium.org</owner>
  <summary>Total duration time of the auto-enrollment protocol.</summary>
</histogram>

<histogram name="Enterprise.AutoEnrollmentRequestNetworkErrorCode"
    enum="NetErrorCodes">
  <owner>mnissler@chromium.org</owner>
  <summary>
    Network error code (if applicable) for auto-enrollment requests.
  </summary>
</histogram>

<histogram name="Enterprise.AutoEnrollmentRequestStatus"
    enum="EnterpriseDeviceManagementStatus">
  <owner>mnissler@chromium.org</owner>
  <summary>URL fetcher status for auto-enrollment requests.</summary>
</histogram>

<histogram name="Enterprise.DevicePolicyInvalidations"
    enum="EnterprisePolicyInvalidations">
  <owner>bartfab@chromium.org</owner>
  <summary>
    Events for counting device policy invalidations received with and without
    payloads. Invalidations indicate that a policy has been updated and should
    be refreshed. Payloads provide context about the policy update, but may be
    absent if dropped by the invalidation service.
  </summary>
</histogram>

<histogram name="Enterprise.DevicePolicyRefresh" enum="EnterprisePolicyRefresh">
  <owner>bartfab@chromium.org</owner>
  <summary>
    Events measuring effectiveness of refreshing device policy when
    invalidations are received from a service. For each refresh, indicates
    whether the policy changed, and whether the policy was invalidated at the
    time of the refresh.
  </summary>
</histogram>

<histogram name="Enterprise.DMToken" enum="EnterpriseDMTokenType">
  <owner>mnissler@chromium.org</owner>
  <summary>
    Events related to fetching, saving and loading DM server tokens. These are
    used to retrieve cloud policies.
  </summary>
</histogram>

<histogram name="Enterprise.DomainWhitelistRegexFailure"
    enum="EnterpriseDomainRegex">
  <owner>atwilson@chromium.org</owner>
  <summary>
    Temporary metric tracking which regex caused an icu::RegexMatcher
    initialization failure, to help figure out the cause of
    http://crbug.com/365351 which we can't repro locally.
  </summary>
</histogram>

<histogram name="Enterprise.DomainWhitelistRegexFailureStatus"
    units="icu error">
  <owner>atwilson@chromium.org</owner>
  <summary>
    Temporary metric tracking the type of an icu::RegexMatcher initialization
    failure, to help figure out the cause of http://crbug.com/365351 which we
    can't repro locally.
  </summary>
</histogram>

<histogram name="Enterprise.DomainWhitelistRegexSuccess" enum="BooleanSuccess">
  <owner>atwilson@chromium.org</owner>
  <summary>
    Temporary metric tracking the success of icu::RegexMatcher IcuMatcher
    initialization, to help figure out the cause of http://crbug.com/365351.
  </summary>
</histogram>

<histogram name="Enterprise.EnrolledPolicyHasDMToken" enum="Boolean">
  <owner>tnagel@chromium.org</owner>
  <summary>
    Whether loading of device policy from file on an enterprise-enrolled
    (checked against install_attributes.pb) Chrome OS device yields an
    enterprise policy with a DM token.  Filled once during session startup,
    after first successful device policy read.
  </summary>
</histogram>

<histogram name="Enterprise.Enrollment" enum="EnterpriseEnrollmentType">
  <owner>mnissler@chromium.org</owner>
  <summary>
    Events related to device enrollment on new installs of Chrome OS devices.
  </summary>
</histogram>

<histogram name="Enterprise.EnrollmentForced" enum="EnterpriseEnrollmentType">
  <owner>tnagel@chromium.org</owner>
  <summary>
    Events related to forced re-enrollment (FRE) of Chrome OS devices.
  </summary>
</histogram>

<histogram name="Enterprise.EnrollmentRecovery" enum="EnterpriseEnrollmentType">
  <owner>tnagel@chromium.org</owner>
  <summary>
    Events related to Chrome OS enterprise enrollment recovery.  Note that this
    only covers cases in which prior to recovery, the &quot;private owner&quot;
    of the device had UMA stats enabled.
  </summary>
</histogram>

<histogram name="Enterprise.EnrollmentTime.Cancel" units="ms">
  <owner>tnagel@chromium.org</owner>
  <summary>
    Elapsed time from *after* GAIA login until enrollment was cancelled.
  </summary>
</histogram>

<histogram name="Enterprise.EnrollmentTime.Failure" units="ms">
  <owner>tnagel@chromium.org</owner>
  <summary>
    Elapsed time from *after* GAIA login until enrollment failed.
  </summary>
</histogram>

<histogram name="Enterprise.EnrollmentTime.Success" units="ms">
  <owner>tnagel@chromium.org</owner>
  <summary>
    Elapsed time from *after* GAIA login until enrollment succeeded.
  </summary>
</histogram>

<histogram name="Enterprise.IOSPolicies">
  <owner>mnissler@chromium.org</owner>
  <summary>
    Number of policies loaded at startup on iOS, and when a change is detected
    at runtime.
  </summary>
</histogram>

<histogram name="Enterprise.ONC.PolicyValidation" enum="BooleanSuccess">
  <owner>mnissler@chromium.org</owner>
  <summary>Result of the OpenNetworkConfiguration policy validation.</summary>
</histogram>

<histogram name="Enterprise.Policies" enum="EnterprisePolicies">
  <owner>mnissler@chromium.org</owner>
  <summary>
    A set of enterprise policy rules that are in use. This is recorded every 24
    hours and at startup, if the last recording was earlier than a day before.
  </summary>
</histogram>

<histogram name="Enterprise.Policy" enum="EnterprisePolicyType">
  <owner>mnissler@chromium.org</owner>
  <summary>
    Events related to fetching, saving and loading user policies, and also
    device policies on Chrome OS.
  </summary>
</histogram>

<histogram name="Enterprise.PolicyHasVerifiedCachedKey"
    enum="BooleanValidKeyExists">
  <owner>atwilson@chromium.org</owner>
  <summary>
    Boolean tracking whether there is a valid policy signing key on disk.
  </summary>
</histogram>

<histogram name="Enterprise.PolicyInvalidations"
    enum="EnterprisePolicyInvalidations">
  <owner>mnissler@chromium.org</owner>
  <summary>
    Events for counting user policy invalidations received with and without
    payloads. Invalidations indicate that a policy has been updated and should
    be refreshed. Payloads provide context about the policy update, but may be
    absent if dropped by the invalidation service.
  </summary>
</histogram>

<histogram name="Enterprise.PolicyInvalidationsStartupTime" units="ms">
  <owner>mnissler@chromium.org</owner>
  <summary>
    Time since startup of the cloud policy code until the policy invalidation
    service first reported its online status.
  </summary>
</histogram>

<histogram name="Enterprise.PolicyKeyVerification"
    enum="EnterprisePolicyKeyVerification">
  <owner>atwilson@chromium.org</owner>
  <summary>Tracking the results of policy key verification.</summary>
</histogram>

<histogram name="Enterprise.PolicyLoadStatus" enum="EnterprisePolicyLoadStatus">
  <owner>mnissler@chromium.org</owner>
  <summary>
    Load status from the policy loaders which pull policy settings from the
    underlying platform, such as Windows Group Policy.
  </summary>
</histogram>

<histogram name="Enterprise.PolicyRefresh" enum="EnterprisePolicyRefresh">
  <owner>mnissler@chromium.org</owner>
  <summary>
    Events measuring effectiveness of refreshing user policy when invalidations
    are received from a service. For each refresh, indicates whether the policy
    changed, and whether the policy was invalidated at the time of the refresh.
  </summary>
</histogram>

<histogram name="Enterprise.SystemLogPIILeak" enum="SystemLogPIIType">
  <obsolete>
    Deprecated and removed from code as of 01/2016.
  </obsolete>
  <owner>pbond@chromium.org</owner>
  <summary>
    Events for counting sensitive data occurrences in system logs to upload.
    (Email addresses, IP addresses, SSIDs, URLs). The lines with this data will
    be removed before upload.
  </summary>
</histogram>

<histogram name="Enterprise.UserCloudPolicyStore.LoadStatus"
    enum="PolicyLoadStatus">
  <owner>atwilson@chromium.org</owner>
  <summary>
    Result of the attempted policy load during profile initialization.
  </summary>
</histogram>

<histogram name="Enterprise.UserCloudPolicyStore.LoadValidationStatus"
    enum="PolicyValidationStatus">
  <owner>atwilson@chromium.org</owner>
  <summary>
    Result of validating the policy that has just been loaded from disk.
  </summary>
</histogram>

<histogram name="Enterprise.UserCloudPolicyStore.StoreValidationStatus"
    enum="PolicyValidationStatus">
  <owner>atwilson@chromium.org</owner>
  <summary>
    Result of validating the policy sent down from the server, before writing to
    disk.
  </summary>
</histogram>

<histogram name="Enterprise.UserPolicyChromeOS.DelayInitialization" units="ms">
  <owner>mnissler@chromium.org</owner>
  <summary>Initialization delay due to loading the user policy cache.</summary>
</histogram>

<histogram name="Enterprise.UserPolicyChromeOS.InitialFetch.ClientError"
    enum="EnterpriseDeviceManagementStatus">
  <owner>mnissler@chromium.org</owner>
  <summary>Policy client error during initial policy fetch.</summary>
</histogram>

<histogram
    name="Enterprise.UserPolicyChromeOS.InitialFetch.DelayClientRegister"
    units="ms">
  <owner>mnissler@chromium.org</owner>
  <summary>Delay for registering the client with the policy server.</summary>
</histogram>

<histogram name="Enterprise.UserPolicyChromeOS.InitialFetch.DelayOAuth2Token"
    units="ms">
  <owner>mnissler@chromium.org</owner>
  <summary>Delay for minting an OAuth2 acccess token.</summary>
</histogram>

<histogram name="Enterprise.UserPolicyChromeOS.InitialFetch.DelayPolicyFetch"
    units="ms">
  <owner>mnissler@chromium.org</owner>
  <summary>Delay for fetching policy from the policy server.</summary>
</histogram>

<histogram name="Enterprise.UserPolicyChromeOS.InitialFetch.DelayTotal"
    units="ms">
  <owner>mnissler@chromium.org</owner>
  <summary>Total delay for the initial policy fetch.</summary>
</histogram>

<histogram name="Enterprise.UserPolicyChromeOS.InitialFetch.OAuth2Error"
    enum="GoogleServiceAuthError">
  <owner>mnissler@chromium.org</owner>
  <summary>Service error during OAuth2 access token fetch.</summary>
</histogram>

<histogram name="Enterprise.UserPolicyChromeOS.InitialFetch.OAuth2NetworkError"
    enum="NetErrorCodes">
  <owner>mnissler@chromium.org</owner>
  <summary>Network error during OAuth2 access token fetch.</summary>
</histogram>

<histogram name="Enterprise.UserPolicyValidationFailure"
    enum="ValidationFailures">
  <owner>mnissler@chromium.org</owner>
  <summary>Source of policy validation errors on ChromeOS.</summary>
</histogram>

<histogram name="Enterprise.UserPolicyValidationLoadStatus"
    enum="PolicyValidationStatus">
  <owner>mnissler@chromium.org</owner>
  <summary>
    Validation result when loading user policy from the policy store.
  </summary>
</histogram>

<histogram name="Enterprise.UserPolicyValidationStoreStatus"
    enum="PolicyValidationStatus">
  <owner>mnissler@chromium.org</owner>
  <summary>
    Validation result when writing user policy to the policy store.
  </summary>
</histogram>

<histogram name="Enterprise.UserSigninChoice" enum="SigninChoice">
  <owner>atwilson@chromium.org</owner>
  <summary>
    Choice the user made when presented with enterprise signin dialog.
  </summary>
</histogram>

<histogram name="Enterprise.WildcardLoginCheck.DelayPolicyTokenFetch"
    units="ms">
  <owner>mnissler@chromium.org</owner>
  <summary>
    Delay incurred by the token fetching step of the wildcard login check.
  </summary>
</histogram>

<histogram name="Enterprise.WildcardLoginCheck.DelayTotal" units="ms">
  <owner>mnissler@chromium.org</owner>
  <summary>Total delay incurred by the wildcard login check.</summary>
</histogram>

<histogram name="Enterprise.WildcardLoginCheck.DelayUserInfoFetch" units="ms">
  <owner>mnissler@chromium.org</owner>
  <summary>
    Delay incurred by the user info fetching step of the wildcard login check.
  </summary>
</histogram>

<histogram name="EnterpriseCheck.DomainBindSucceeded" enum="BooleanSuccess">
  <owner>mnissler@chromium.org</owner>
  <owner>pastarmovj@chromium.org</owner>
  <summary>
    Whether we were able to contact the AD Domain Controller. This check is
    performed once at start-up on Windows.
  </summary>
</histogram>

<histogram name="EnterpriseCheck.DomainCheckFailed" enum="EnterpriseCheckError">
  <owner>mnissler@chromium.org</owner>
  <owner>pastarmovj@chromium.org</owner>
  <summary>
    Enum of possible things that can fail while checking for enterprise env.
    This check is performed once at start-up on Windows.
  </summary>
</histogram>

<histogram name="EnterpriseCheck.InDomain" enum="BooleanEnabled">
  <owner>mnissler@chromium.org</owner>
  <owner>pastarmovj@chromium.org</owner>
  <summary>
    Whether the machine is part of an AD domain. This check is performed once at
    start-up on Windows.
  </summary>
</histogram>

<histogram name="EnterpriseCheck.InvalidPolicies" enum="EnterprisePolicies">
  <owner>mnissler@chromium.org</owner>
  <summary>
    A set of policy rules that were ignored due to integrity violations while
    parsing the policy data which happens on start-up and when the policy has
    changed.
  </summary>
</histogram>

<histogram name="EnterpriseCheck.InvalidPoliciesDetected"
    units="disabled policies">
  <owner>mnissler@chromium.org</owner>
  <owner>pastarmovj@chromium.org</owner>
  <summary>
    The number of disabled policy entries on Windows due to integrity violations
    while parsing the policy data which happens on start-up and when the policy
    has changed.
  </summary>
</histogram>

<histogram name="EnterpriseCheck.OSType" enum="OsSuite">
  <owner>mnissler@chromium.org</owner>
  <owner>pastarmovj@chromium.org</owner>
  <summary>
    The rough Windows suite we are runnnig on. This check is performed once at
    start-up on Windows.
  </summary>
</histogram>

<histogram name="Event.ActionAfterDoubleTapNoDelay" enum="ActionAfterDoubleTap">
  <owner>rbyers@chromium.org</owner>
  <summary>
    On non-mobile sites, gesture taps are delayed to prevent double taps from
    sending a click event. This stat tracks the user's first action within 5
    seconds after a double tap gesture when the gesture tap delay is disabled.
  </summary>
</histogram>

<histogram name="Event.ActionAfterDoubleTapWithDelay"
    enum="ActionAfterDoubleTap">
  <owner>rbyers@chromium.org</owner>
  <summary>
    On non-mobile sites, gesture taps are delayed to prevent double taps from
    sending a click event. This stat tracks the user's first action within 5
    seconds after a double tap gesture when gesture tap events are delayed.
  </summary>
</histogram>

<histogram name="Event.AggregatedLatency.Renderer2" units="microseconds">
  <owner>rbyers@chromium.org</owner>
  <summary>
    Time between initiation of any input event and the renderer receiving and
    starting to process it.
  </summary>
</histogram>

<histogram name="Event.CoalescedCount.Mouse">
  <owner>rbyers@chromium.org</owner>
  <summary>Number of Mouse events coalesced.</summary>
</histogram>

<histogram name="Event.CoalescedCount.Touch">
  <owner>rbyers@chromium.org</owner>
  <summary>Number of Touch events coalesced.</summary>
</histogram>

<histogram name="Event.CoalescedLatency.Mouse" units="ms">
  <owner>rbyers@chromium.org</owner>
  <summary>
    Time between the first and last events in a coalesced mouse events group.
  </summary>
</histogram>

<histogram name="Event.CoalescedLatency.Touch" units="ms">
  <owner>rbyers@chromium.org</owner>
  <summary>
    Time between the first and last events in a coalesced touch events group.
  </summary>
</histogram>

<histogram name="Event.DragDrop.Cancel" enum="DragDropEventSource">
  <owner>mfomitchev@chromium.org</owner>
  <summary>
    Counts the number of times the user cancelled a drag and drop operation.
  </summary>
</histogram>

<histogram name="Event.DragDrop.Drop" enum="DragDropEventSource">
  <owner>mfomitchev@chromium.org</owner>
  <summary>
    Counts the number of times the user completed a drag and drop operation.
  </summary>
</histogram>

<histogram name="Event.DragDrop.ExternalOriginDrop">
  <owner>mfomitchev@chromium.org</owner>
  <summary>
    Counts the number of times a drag and drop operation originating outside of
    a Chrome window successfuly drops.
  </summary>
</histogram>

<histogram name="Event.DragDrop.Start" enum="DragDropEventSource">
  <owner>mfomitchev@chromium.org</owner>
  <summary>
    Counts the number of times the user started a drag and drop operation.
  </summary>
</histogram>

<histogram name="Event.Frequency.Renderer.FlingAnimate" units="hertz">
  <owner>rbyers@chromium.org</owner>
  <summary>
    Emitted after a renderer process main-thread fling curve animation
    terminates, for any reason, reporting the average animation frequency
    (animations/second) of the fling instance over its lifetime. This is
    computed as the number of fling animation ticks divided by the fling
    animation duration.
  </summary>
</histogram>

<histogram name="Event.Frequency.RendererImpl.FlingAnimate" units="hertz">
  <owner>rbyers@chromium.org</owner>
  <summary>
    Emitted after a renderer process impl-thread fling curve animation
    terminates, for any reason, reporting the average animation frequency
    (animations/second) of the fling instance over its lifetime. This is
    computed as the number of fling animation ticks divided by the fling
    animation duration.
  </summary>
</histogram>

<histogram name="Event.GestureCreated" enum="UIEventType">
  <owner>kuscher@google.com</owner>
  <owner>rbyers@chromium.org</owner>
  <summary>
    The gesture-events recognized and dispatched by the browser gesture
    recognizer. This replaces Ash.GestureCreated, which did not record events on
    Android and Windows.
  </summary>
</histogram>

<histogram name="Event.HitTest" enum="EventHitTest">
  <owner>dtapuska@chromium.org</owner>
  <summary>
    For each hit test, records whether it was a hit or miss, and why.
  </summary>
</histogram>

<histogram name="Event.HitTestValidity" enum="EventHitTestValidity">
  <owner>dtapuska@chromium.org</owner>
  <summary>
    For hit tests that are validated, records whether it was correct or not, and
    why.
  </summary>
</histogram>

<histogram name="Event.HitTestValidityScore" enum="EventHitTestValidityScore">
  <owner>dtapuska@chromium.org</owner>
  <summary>
    For hit tests that are invalid, records the score (a series of bits
    indicating what was matched and what wasn't).
  </summary>
</histogram>

<histogram name="Event.Latency.Browser" units="microseconds">
  <owner>rbyers@chromium.org</owner>
  <summary>
    Time between initiation of all input events and browser processing.
  </summary>
</histogram>

<histogram name="Event.Latency.Browser.ET_DROP_TARGET_EVENT"
    units="microseconds">
  <owner>rbyers@chromium.org</owner>
  <summary>
    Time between initiation of input event and browser processing.
  </summary>
</histogram>

<histogram name="Event.Latency.Browser.ET_GESTURE_BEGIN" units="microseconds">
  <owner>rbyers@chromium.org</owner>
  <summary>
    Time between initiation of input event and browser processing.
  </summary>
</histogram>

<histogram name="Event.Latency.Browser.ET_GESTURE_DOUBLE_TAP"
    units="microseconds">
  <owner>rbyers@chromium.org</owner>
  <summary>
    Time between initiation of input event and browser processing.
  </summary>
</histogram>

<histogram name="Event.Latency.Browser.ET_GESTURE_END" units="microseconds">
  <owner>rbyers@chromium.org</owner>
  <summary>
    Time between initiation of input event and browser processing.
  </summary>
</histogram>

<histogram name="Event.Latency.Browser.ET_GESTURE_LONG_PRESS"
    units="microseconds">
  <owner>rbyers@chromium.org</owner>
  <summary>
    Time between initiation of input event and browser processing.
  </summary>
</histogram>

<histogram name="Event.Latency.Browser.ET_GESTURE_LONG_TAP"
    units="microseconds">
  <owner>rbyers@chromium.org</owner>
  <summary>
    Time between initiation of input event and browser processing.
  </summary>
</histogram>

<histogram name="Event.Latency.Browser.ET_GESTURE_MULTIFINGER_SWIPE"
    units="microseconds">
  <owner>rbyers@chromium.org</owner>
  <summary>
    Time between initiation of input event and browser processing.
  </summary>
</histogram>

<histogram name="Event.Latency.Browser.ET_GESTURE_PINCH_BEGIN"
    units="microseconds">
  <owner>rbyers@chromium.org</owner>
  <summary>
    Time between initiation of input event and browser processing.
  </summary>
</histogram>

<histogram name="Event.Latency.Browser.ET_GESTURE_PINCH_END"
    units="microseconds">
  <owner>rbyers@chromium.org</owner>
  <summary>
    Time between initiation of input event and browser processing.
  </summary>
</histogram>

<histogram name="Event.Latency.Browser.ET_GESTURE_PINCH_UPDATE"
    units="microseconds">
  <owner>rbyers@chromium.org</owner>
  <summary>
    Time between initiation of input event and browser processing.
  </summary>
</histogram>

<histogram name="Event.Latency.Browser.ET_GESTURE_SCROLL_BEGIN"
    units="microseconds">
  <owner>rbyers@chromium.org</owner>
  <summary>
    Time between initiation of input event and browser processing.
  </summary>
</histogram>

<histogram name="Event.Latency.Browser.ET_GESTURE_SCROLL_END"
    units="microseconds">
  <owner>rbyers@chromium.org</owner>
  <summary>
    Time between initiation of input event and browser processing.
  </summary>
</histogram>

<histogram name="Event.Latency.Browser.ET_GESTURE_SCROLL_UPDATE"
    units="microseconds">
  <owner>rbyers@chromium.org</owner>
  <summary>
    Time between initiation of input event and browser processing.
  </summary>
</histogram>

<histogram name="Event.Latency.Browser.ET_GESTURE_TAP" units="microseconds">
  <owner>rbyers@chromium.org</owner>
  <summary>
    Time between initiation of input event and browser processing.
  </summary>
</histogram>

<histogram name="Event.Latency.Browser.ET_GESTURE_TAP_CANCEL"
    units="microseconds">
  <owner>rbyers@chromium.org</owner>
  <summary>
    Time between initiation of input event and browser processing.
  </summary>
</histogram>

<histogram name="Event.Latency.Browser.ET_GESTURE_TAP_DOWN"
    units="microseconds">
  <owner>rbyers@chromium.org</owner>
  <summary>
    Time between initiation of input event and browser processing.
  </summary>
</histogram>

<histogram name="Event.Latency.Browser.ET_GESTURE_TWO_FINGER_TAP"
    units="microseconds">
  <owner>rbyers@chromium.org</owner>
  <summary>
    Time between initiation of input event and browser processing.
  </summary>
</histogram>

<histogram name="Event.Latency.Browser.ET_KEY_PRESSED" units="microseconds">
  <owner>rbyers@chromium.org</owner>
  <summary>
    Time between initiation of input event and browser processing.
  </summary>
</histogram>

<histogram name="Event.Latency.Browser.ET_KEY_RELEASED" units="microseconds">
  <owner>rbyers@chromium.org</owner>
  <summary>
    Time between initiation of input event and browser processing.
  </summary>
</histogram>

<histogram name="Event.Latency.Browser.ET_MOUSE_CAPTURE_CHANGED"
    units="microseconds">
  <owner>rbyers@chromium.org</owner>
  <summary>
    Time between initiation of input event and browser processing.
  </summary>
</histogram>

<histogram name="Event.Latency.Browser.ET_MOUSE_DRAGGED" units="microseconds">
  <owner>rbyers@chromium.org</owner>
  <summary>
    Time between initiation of input event and browser processing.
  </summary>
</histogram>

<histogram name="Event.Latency.Browser.ET_MOUSE_ENTERED" units="microseconds">
  <owner>rbyers@chromium.org</owner>
  <summary>
    Time between initiation of input event and browser processing.
  </summary>
</histogram>

<histogram name="Event.Latency.Browser.ET_MOUSE_EXITED" units="microseconds">
  <owner>rbyers@chromium.org</owner>
  <summary>
    Time between initiation of input event and browser processing.
  </summary>
</histogram>

<histogram name="Event.Latency.Browser.ET_MOUSE_MOVED" units="microseconds">
  <owner>rbyers@chromium.org</owner>
  <summary>
    Time between initiation of input event and browser processing.
  </summary>
</histogram>

<histogram name="Event.Latency.Browser.ET_MOUSE_RELEASED" units="microseconds">
  <owner>rbyers@chromium.org</owner>
  <summary>
    Time between initiation of input event and browser processing.
  </summary>
</histogram>

<histogram name="Event.Latency.Browser.ET_MOUSEWHEEL" units="microseconds">
  <owner>rbyers@chromium.org</owner>
  <summary>
    Time between initiation of input event and browser processing.
  </summary>
</histogram>

<histogram name="Event.Latency.Browser.ET_SCROLL" units="microseconds">
  <owner>rbyers@chromium.org</owner>
  <summary>
    Time between initiation of input event and browser processing.
  </summary>
</histogram>

<histogram name="Event.Latency.Browser.ET_SCROLL_FLING_CANCEL"
    units="microseconds">
  <owner>rbyers@chromium.org</owner>
  <summary>
    Time between initiation of input event and browser processing.
  </summary>
</histogram>

<histogram name="Event.Latency.Browser.ET_SCROLL_FLING_START"
    units="microseconds">
  <owner>rbyers@chromium.org</owner>
  <summary>
    Time between initiation of input event and browser processing.
  </summary>
</histogram>

<histogram name="Event.Latency.Browser.ET_TOUCH_CANCELLED" units="microseconds">
  <owner>rbyers@chromium.org</owner>
  <summary>
    Time between initiation of input event and browser processing.
  </summary>
</histogram>

<histogram name="Event.Latency.Browser.ET_TOUCH_MOVED" units="microseconds">
  <owner>rbyers@chromium.org</owner>
  <summary>
    Time between initiation of input event and browser processing.
  </summary>
</histogram>

<histogram name="Event.Latency.Browser.ET_TOUCH_PRESSED" units="microseconds">
  <owner>rbyers@chromium.org</owner>
  <summary>
    Time between initiation of input event and browser processing.
  </summary>
</histogram>

<histogram name="Event.Latency.Browser.ET_TOUCH_RELEASED" units="microseconds">
  <owner>rbyers@chromium.org</owner>
  <summary>
    Time between initiation of input event and browser processing.
  </summary>
</histogram>

<histogram name="Event.Latency.Browser.ET_TOUCH_STATIONARY"
    units="microseconds">
  <owner>rbyers@chromium.org</owner>
  <summary>
    Time between initiation of input event and browser processing.
  </summary>
</histogram>

<histogram name="Event.Latency.Browser.ET_TRANSLATED_KEY_PRESS"
    units="microseconds">
  <owner>rbyers@chromium.org</owner>
  <summary>
    Time between initiation of input event and browser processing.
  </summary>
</histogram>

<histogram name="Event.Latency.Browser.ET_TRANSLATED_KEY_RELEASE"
    units="microseconds">
  <owner>rbyers@chromium.org</owner>
  <summary>
    Time between initiation of input event and browser processing.
  </summary>
</histogram>

<histogram name="Event.Latency.Browser.ET_UNKNOWN" units="microseconds">
  <owner>rbyers@chromium.org</owner>
  <summary>
    Time between initiation of input event and browser processing.
  </summary>
</histogram>

<histogram name="Event.Latency.Browser.TouchAcked" units="microseconds">
  <owner>rbyers@chromium.org</owner>
  <summary>
    Time between touch events sent from RWH to renderer and acked by renderer.
  </summary>
</histogram>

<histogram name="Event.Latency.Browser.TouchUI" units="microseconds">
  <owner>rbyers@chromium.org</owner>
  <summary>
    Time between touch events received by Chrome and sent from RWH to renderer.
  </summary>
</histogram>

<histogram name="Event.Latency.Browser.WheelAcked" units="microseconds">
  <owner>ccameron@chromium.org</owner>
  <summary>
    Time between wheel events sent from RWH to renderer and acked by renderer.
  </summary>
</histogram>

<histogram name="Event.Latency.Browser.WheelUI" units="microseconds">
  <owner>ccameron@chromium.org</owner>
  <summary>
    Time between wheel events received by Chrome and sent from RWH to renderer.
  </summary>
</histogram>

<histogram name="Event.Latency.HitTest" units="microseconds">
  <owner>dtapuska@chromium.org</owner>
  <summary>
    Duration of a non-resurive hitTest operation. The hit test is non-recursive
    when the AllowChildFrameContent flag is clear. See also
    Event.Latency.HitTestRecusrive.
  </summary>
</histogram>

<histogram name="Event.Latency.HitTestRecursive" units="microseconds">
  <owner>dtapuska@chromium.org</owner>
  <summary>
    Duration of a recursive hitTest operation. The hit test is recursive when
    the AllowChildFrameContent flag is set. See also Event.Latency.HitTest.
  </summary>
</histogram>

<histogram name="Event.Latency.Renderer" units="microseconds">
  <owner>rbyers@chromium.org</owner>
  <summary>
    Time between initiation of all input events and renderer processing. This is
    soon to be replaced by Event.Latency.Renderer2.*
  </summary>
</histogram>

<histogram name="Event.Latency.Renderer2" units="microseconds">
  <owner>rbyers@chromium.org</owner>
  <summary>
    Time between input event creation and the renderer receiving and starting to
    process the event. For touch events on Windows, we measure from when the
    event reaches Chrome, whereas on other platforms we use the timestamp from
    the kernel. On Windows, this metric is only reported when |IsHighResolution|
    is true, which will introduce some sampling bias.
  </summary>
</histogram>

<histogram name="Event.Latency.RendererImpl" units="microseconds">
  <owner>rbyers@chromium.org</owner>
  <summary>
    Time between input event creation and the renderer impl thread receiving and
    starting to process the event. For touch events on Windows, we measure from
    when the event reaches Chrome, whereas on other platforms we use the
    timestamp from the kernel. On Windows, this metric is only reported when
    |IsHighResolution| is true, which will introduce some sampling bias.
  </summary>
</histogram>

<histogram name="Event.Latency.RendererImpl.GestureScroll" units="microseconds">
  <obsolete>
    Deprecated 12/2013 and replaced by Event.Latency.RendererImpl.GestureScroll2
  </obsolete>
  <owner>rbyers@chromium.org</owner>
  <summary>
    Time between initial creation of touch event and when the resulting
    ScrollGesture reaches Impl thread. Maximum is 200ms.
  </summary>
</histogram>

<histogram name="Event.Latency.RendererImpl.GestureScroll2"
    units="microseconds">
  <owner>rbyers@chromium.org</owner>
  <summary>
    Time between touch event creation and when the resulting GestureScroll
    reaches the Impl thread. Maximum is 1000ms. On Windows, we measure from when
    the touch event reaches Chrome, whereas on other platforms we use the
    timestamp from the kernel. On Windows, this metric is only reported when
    |IsHighResolution| is true, which will introduce some sampling bias. This
    supersedes the Event.Latency.RendererImpl.GestureScroll metric.
  </summary>
</histogram>

<histogram name="Event.Latency.ScrollUpdate.BrowserNotifiedToBeforeGpuSwap"
    units="microseconds">
  <owner>rbyers@chromium.org</owner>
  <summary>
    Time between the browser receives the notification of a ScrollUpdate gesture
    event induced renderer swap and GPU starts to swap.
  </summary>
</histogram>

<histogram name="Event.Latency.ScrollUpdate.GpuSwap" units="microseconds">
  <owner>rbyers@chromium.org</owner>
  <summary>
    Time between gpu starts to swap a ScrollUpdate gesture event induced frame
    and the swap finishes.
  </summary>
</histogram>

<histogram name="Event.Latency.ScrollUpdate.HandledToRendererSwap"
    units="microseconds">
  <owner>rbyers@chromium.org</owner>
  <summary>
    Time between the ScrollUpdate gesture event is handled on main/impl thread
    (specified by suffix) and before renderer starts to swap.
  </summary>
</histogram>

<histogram name="Event.Latency.ScrollUpdate.RendererSwapToBrowserNotified"
    units="microseconds">
  <owner>rbyers@chromium.org</owner>
  <summary>
    Time between the renderer starts to swap a frame induced by ScrollUpdate
    gesture event and browser receives the swap notification.
  </summary>
</histogram>

<histogram name="Event.Latency.ScrollUpdate.TouchToHandled"
    units="microseconds">
  <owner>rbyers@chromium.org</owner>
  <summary>
    Time between initial creation of a touch event and the generated
    ScrollUpdate gesture event is handled on main/impl thread (specified by
    suffix). If no swap was induced by the ScrollUpdate gesture event, no
    recording is made.
  </summary>
</histogram>

<histogram name="Event.Latency.TouchToFirstScrollUpdateSwap"
    units="microseconds">
  <owner>rbyers@chromium.org</owner>
  <obsolete>
    Replaced by Event.Latency.TouchToFirstScrollUpdateSwapBegin.
    crbug.com/478845
  </obsolete>
  <summary>
    Time between initial creation of a touch event and the frame swap caused by
    by the generated ScrollUpdate gesture event if that ScrollUpdate is the
    first such in a given scroll gesture event sequence. If no swap was induced
    by the event, no recording is made.
  </summary>
</histogram>

<histogram name="Event.Latency.TouchToFirstScrollUpdateSwapBegin"
    units="microseconds">
  <owner>rbyers@chromium.org</owner>
  <summary>
    Time between initial creation of a touch event and the start of the frame
    swap on the GPU service caused by the generated ScrollUpdate gesture event
    if that ScrollUpdate is the first such event in a given scroll gesture event
    sequence. If no swap was induced by the event, no recording is made.
  </summary>
</histogram>

<histogram name="Event.Latency.TouchToScrollUpdateSwap" units="microseconds">
  <owner>rbyers@chromium.org</owner>
  <obsolete>
    Replaced by Event.Latency.TouchToScrollUpdateSwapBegin. crbug.com/478845
  </obsolete>
  <summary>
    Time between initial creation of a touch event and the frame swap caused by
    by the generated ScrollUpdate gesture event. If no swap was induced by the
    event, no recording is made.
  </summary>
</histogram>

<histogram name="Event.Latency.TouchToScrollUpdateSwapBegin"
    units="microseconds">
  <owner>rbyers@chromium.org</owner>
  <summary>
    Time between initial creation of a touch event and start of the frame swap
    on the GPU service caused by the generated ScrollUpdate gesture event. If no
    swap was induced by the event, no recording is made.
  </summary>
</histogram>

<histogram name="Event.Latency.X11EventSource.UpdateServerTime"
    units="microseconds">
  <owner>thomasanderson@chromium.org</owner>
  <summary>Time to request a timestamp from the X server.</summary>
</histogram>

<histogram name="Event.PassiveListeners" enum="EventResultType">
  <owner>dtapuska@chromium.org</owner>
  <summary>
    The result of handling of MouseWheel, TouchStart, TouchMove, TouchEnd events
    in the renderer.
  </summary>
</histogram>

<histogram name="Event.PassiveListeners.ForcedNonBlockingLatency"
    units="microseconds">
  <owner>dtapuska@chromium.org</owner>
  <summary>
    Time between when a forced non-blocking event was generated and the event
    processed. This histogram tracks the benefit of forcing non-blocking events
    listeners.
  </summary>
</histogram>

<histogram name="Event.PassiveListeners.Latency" units="microseconds">
  <owner>dtapuska@chromium.org</owner>
  <summary>
    Time between when a cancelable event was generated and the event processed
    yet no action was executed for the event. This histogram tracks the
    potential benefit of using passive events listeners.
  </summary>
</histogram>

<histogram name="Event.SingleTapType" enum="TapDelayType">
  <owner>rbyers@chromium.org</owner>
  <summary>
    On non-mobile sites, gesture taps are delayed to prevent double taps from
    sending a click event. This stat counts the number of taps that are delayed
    by the double-tap delay versus those that are sent immediately on mobile
    sites.
  </summary>
</histogram>

<histogram name="Event.Touch.TargetAndDispatchResult"
    enum="TouchTargetAndDispatchResultType">
  <owner>dtapuska@chromium.org</owner>
  <summary>
    An enumeration identifying 3 properties: 1) a classification of the event
    target whether it is a root scroll listener (window, document, body) or not;
    2) the result of the dispatch; 3) whether the document was scrollable or
    not.
  </summary>
</histogram>

<histogram name="Event.Touch.TimedOutOnDesktopSite" enum="BooleanTimedOut">
  <owner>rbyers@chromium.org</owner>
  <summary>
    On non-mobile-optimized (desktop) sites, whether the ack response from the
    renderer for any event in a contiguous touch sequence exceeds the
    desktop-specific timeout threshold.
  </summary>
</histogram>

<histogram name="Event.Touch.TimedOutOnMobileSite" enum="BooleanTimedOut">
  <owner>rbyers@chromium.org</owner>
  <summary>
    On mobile-optimized sites, whether the ack response from the renderer for
    any event in a contiguous touch sequence exceeds the mobile-specific timeout
    threshold.
  </summary>
</histogram>

<histogram name="Event.Touch.TouchDispositionsAfterPageLoad"
    enum="TouchEventDispatchResultType">
  <owner>tdresser@chromium.org</owner>
  <summary>
    Records the disposition (handled or not handled) of touch start events and
    the first touchmove events per scroll. Only recorded after the page is fully
    loaded.
  </summary>
</histogram>

<histogram name="Event.Touch.TouchDispositionsBeforePageLoad"
    enum="TouchEventDispatchResultType">
  <owner>tdresser@chromium.org</owner>
  <summary>
    Records the disposition (handled or not handled) of touch start events and
    the first touchmove events per scroll. Only recorded before the page is
    fully loaded.
  </summary>
</histogram>

<histogram name="Event.Touch.TouchDispositionsDuringFling"
    enum="TouchEventDispatchResultType">
  <owner>tdresser@chromium.org</owner>
  <summary>
    Records the disposition (handled or not handled) of touch start events. Only
    recorded while there is an active fling animation.
  </summary>
</histogram>

<histogram name="Event.Touch.TouchDispositionsOutsideFling"
    enum="TouchEventDispatchResultType">
  <owner>tdresser@chromium.org</owner>
  <summary>
    Records the disposition (handled or not handled) of touch start events. Only
    recorded while there is no active fling animation.
  </summary>
</histogram>

<histogram name="Event.Touch.TouchLatencyAfterPageLoad" units="microseconds">
  <owner>tdresser@chromium.org</owner>
  <summary>
    Time between when a touch event was generated and the event was processed.
    Recorded only for touch start events and the first touchmove events per
    scroll that occur after the page is fully loaded.
  </summary>
</histogram>

<histogram name="Event.Touch.TouchLatencyBeforePageLoad" units="microseconds">
  <owner>tdresser@chromium.org</owner>
  <summary>
    Time between when a touch event was generated and the event was processed.
    Recorded only for touch start events and the first touchmove events per
    scroll that occur before the page is fully loaded. This histogram tracks the
    benefit of forcing passive event listeners before the page is fully loaded.
  </summary>
</histogram>

<histogram name="Event.Touch.TouchStartLatencyDuringFling" units="microseconds">
  <owner>tdresser@chromium.org</owner>
  <summary>
    Time between when a touch start event was generated and the event was
    processed. Recorded only when there was an active fling animation. This
    histogram tracks the benefit of forcing passive event listeners during
    fling.
  </summary>
</histogram>

<histogram name="Event.Touch.TouchStartLatencyOutsideFling"
    units="microseconds">
  <owner>tdresser@chromium.org</owner>
  <summary>
    Time between when a touch start event was generated and the event was
    processed. Recorded only when there was no active fling animation.
  </summary>
</histogram>

<histogram name="Event.TouchDuration" units="ms">
  <owner>kuscher@google.com</owner>
  <owner>rbyers@chromium.org</owner>
  <summary>
    The duration of a touch-sequence. Only measured for single finger gestures.
    This replaces Ash.TouchDuration2, which did not record events on Android and
    Windows.
  </summary>
</histogram>

<histogram name="Event.TouchMaxDistance" units="pixels">
  <owner>kuscher@google.com</owner>
  <owner>rbyers@chromium.org</owner>
  <summary>
    The maximum euclidean distance in dips (device independent pixel) which a
    touch point has travelled away from its starting point. Only measured for
    single finger gestures. This replaces Ash.TouchMaxDistance, which did not
    record events on Android and Windows.
  </summary>
</histogram>

<histogram name="Event.TouchSelection.Duration" units="ms">
  <owner>mfomitchev@chromium.org</owner>
  <summary>
    Duration of touch selection sequence which finished with the user selecting
    one of the text manipulation actions, such as copy, cut, or paste. The
    duration is measured from the moment the text selection handles are shown,
    and until the action is executed.
  </summary>
</histogram>

<histogram name="Event.TouchSelection.EndedWithAction" enum="BooleanSuccess">
  <owner>mfomitchev@chromium.org</owner>
  <summary>
    Whether the touch selection sequence ended with the user selecting one of
    the text manipulation actions, such as copy, cut, or paste. after startup).
    Sequences ending with such action are considered successful.
  </summary>
</histogram>

<histogram name="Event.TouchSelection.WasDraggedDuration" units="ms">
  <owner>mfomitchev@chromium.org</owner>
  <summary>
    Duration of touch selection sequence which involved dragging a text
    selection handle. The duration is measured from the moment the text
    selection handles are shown, and until they are dismissed.
  </summary>
</histogram>

<histogram name="ExclusiveAccess.BubbleReshowsPerSession.Fullscreen">
  <owner>mgiuca@chromium.org</owner>
  <summary>
    The number of times the fullscreen bubble was re-shown due to inactivity
    during a session of fullscreen mode (not including mouse lock). If the mouse
    is also locked while a re-show occurs, both this and
    BubbleReshowsPerSession.MouseLock are incremented. Includes all types of
    fullscreen (user-triggered, extension-triggered and page-triggered). Only
    recorded when the simplified-fullscreen-ui flag is enabled.
  </summary>
</histogram>

<histogram name="ExclusiveAccess.BubbleReshowsPerSession.MouseLock">
  <owner>mgiuca@chromium.org</owner>
  <summary>
    The number of times the mouse lock bubble was re-shown due to inactivity
    during a session of mouse lock mode. If also in fullscreen while a re-show
    occurs, both this and BubbleReshowsPerSession.Fullscreen are incremented.
    Only recorded when the simplified-fullscreen-ui flag is enabled.
  </summary>
</histogram>

<histogram name="ExtensionActivity.AdInjected" units="Extension Count">
  <obsolete>
    Deprecated with M46.
  </obsolete>
  <owner>felt@chromium.org</owner>
  <owner>rdevlin.cronin@chromium.org</owner>
  <summary>
    For each pageload, the number of extensions that inject at least one new ad.
  </summary>
</histogram>

<histogram name="ExtensionActivity.AdLikelyInjected" units="Extension Count">
  <obsolete>
    Deprecated with M46.
  </obsolete>
  <owner>felt@chromium.org</owner>
  <owner>rdevlin.cronin@chromium.org</owner>
  <summary>
    For each pageload, the number of extensions that performed an action that
    heuristically looks like injecting an ad, but could not be confirmed.
  </summary>
</histogram>

<histogram name="ExtensionActivity.AdLikelyReplaced" units="Extension Count">
  <obsolete>
    Deprecated with M46.
  </obsolete>
  <owner>felt@chromium.org</owner>
  <owner>rdevlin.cronin@chromium.org</owner>
  <summary>
    For each pageload, the number of extensions that performed an action that
    heuristically looks like replacing an ad, but could not be confirmed.
  </summary>
</histogram>

<histogram name="ExtensionActivity.AdRemoved" units="Extension Count">
  <obsolete>
    Deprecated with M46.
  </obsolete>
  <owner>felt@chromium.org</owner>
  <owner>rdevlin.cronin@chromium.org</owner>
  <summary>
    For each pageload, the number of extensions that remove at least one ad.
  </summary>
</histogram>

<histogram name="ExtensionActivity.AdReplaced" units="Extension Count">
  <obsolete>
    Deprecated with M46.
  </obsolete>
  <owner>felt@chromium.org</owner>
  <owner>rdevlin.cronin@chromium.org</owner>
  <summary>
    For each pageload, the number of extensions that replace at least one ad.
  </summary>
</histogram>

<histogram name="ExtensionActivity.ContentScript">
  <obsolete>
    Deprecated with M46.
  </obsolete>
  <owner>felt@chromium.org</owner>
  <summary>
    For each pageload, the number of extensions that inject a content script.
  </summary>
</histogram>

<histogram name="ExtensionActivity.CreatedDiv">
  <obsolete>
    Deprecated with M46.
  </obsolete>
  <owner>felt@chromium.org</owner>
  <summary>
    For each pageload, the number of extensions that create divs to add to the
    page.
  </summary>
</histogram>

<histogram name="ExtensionActivity.CreatedEmbed">
  <obsolete>
    Deprecated with M46.
  </obsolete>
  <owner>felt@chromium.org</owner>
  <summary>
    For each pageload, the number of extensions that create 'embed' elements to
    add to the page.
  </summary>
</histogram>

<histogram name="ExtensionActivity.CreatedIframe">
  <obsolete>
    Deprecated with M46.
  </obsolete>
  <owner>felt@chromium.org</owner>
  <summary>
    For each pageload, the number of extensions that create iframes to add to
    the page.
  </summary>
</histogram>

<histogram name="ExtensionActivity.CreatedInput">
  <obsolete>
    Deprecated with M46.
  </obsolete>
  <owner>felt@chromium.org</owner>
  <summary>
    For each pageload, the number of extensions that create inputs to add to the
    page.
  </summary>
</histogram>

<histogram name="ExtensionActivity.CreatedLink">
  <obsolete>
    Deprecated with M46.
  </obsolete>
  <owner>felt@chromium.org</owner>
  <summary>
    For each pageload, the number of extensions that create links to add to the
    page.
  </summary>
</histogram>

<histogram name="ExtensionActivity.CreatedObject">
  <obsolete>
    Deprecated with M46.
  </obsolete>
  <owner>felt@chromium.org</owner>
  <summary>
    For each pageload, the number of extensions that create 'object' elements to
    add to the page.
  </summary>
</histogram>

<histogram name="ExtensionActivity.CreatedScript">
  <obsolete>
    Deprecated with M46.
  </obsolete>
  <owner>felt@chromium.org</owner>
  <summary>
    For each pageload, the number of extensions that create script tags to add
    to the page.
  </summary>
</histogram>

<histogram name="ExtensionActivity.DocumentWrite">
  <obsolete>
    Deprecated with M46.
  </obsolete>
  <owner>felt@chromium.org</owner>
  <summary>
    For each pageload, the number of extensions that use document.write.
  </summary>
</histogram>

<histogram name="ExtensionActivity.Google.ContentScript">
  <obsolete>
    Deprecated with M46.
  </obsolete>
  <owner>felt@chromium.org</owner>
  <summary>
    For each www.google.com pageload, the number of extensions that inject a
    content script.
  </summary>
</histogram>

<histogram name="ExtensionActivity.Google.CreatedDiv">
  <obsolete>
    Deprecated with M46.
  </obsolete>
  <owner>felt@chromium.org</owner>
  <summary>
    For each www.google.com pageload, the number of extensions that create divs
    to add to the page.
  </summary>
</histogram>

<histogram name="ExtensionActivity.Google.CreatedEmbed">
  <obsolete>
    Deprecated with M46.
  </obsolete>
  <owner>felt@chromium.org</owner>
  <summary>
    For each www.google.com pageload, the number of extensions that create
    'embed' elements to add to the page.
  </summary>
</histogram>

<histogram name="ExtensionActivity.Google.CreatedIframe">
  <owner>felt@chromium.org</owner>
  <summary>
    For each www.google.com pageload, the number of extensions that create
    iframes to add to the page.
  </summary>
</histogram>

<histogram name="ExtensionActivity.Google.CreatedInput">
  <obsolete>
    Deprecated with M46.
  </obsolete>
  <owner>felt@chromium.org</owner>
  <summary>
    For each www.google.com pageload, the number of extensions that create
    inputs to add to the page.
  </summary>
</histogram>

<histogram name="ExtensionActivity.Google.CreatedLink">
  <obsolete>
    Deprecated with M46.
  </obsolete>
  <owner>felt@chromium.org</owner>
  <summary>
    For each www.google.com pageload, the number of extensions that create links
    to add to the page.
  </summary>
</histogram>

<histogram name="ExtensionActivity.Google.CreatedObject">
  <obsolete>
    Deprecated with M46.
  </obsolete>
  <owner>felt@chromium.org</owner>
  <summary>
    For each www.google.com pageload, the number of extensions that create
    'object' elements to add to the page.
  </summary>
</histogram>

<histogram name="ExtensionActivity.Google.CreatedScript">
  <obsolete>
    Deprecated with M46.
  </obsolete>
  <owner>felt@chromium.org</owner>
  <summary>
    For each www.google.com pageload, the number of extensions that create
    script tags to add to the page.
  </summary>
</histogram>

<histogram name="ExtensionActivity.Google.DocumentWrite">
  <obsolete>
    Deprecated with M46.
  </obsolete>
  <owner>felt@chromium.org</owner>
  <summary>
    For each www.google.com pageload, the number of extensions that use
    document.write.
  </summary>
</histogram>

<histogram name="ExtensionActivity.Google.InnerHtml">
  <obsolete>
    Deprecated with M46.
  </obsolete>
  <owner>felt@chromium.org</owner>
  <summary>
    For each www.google.com pageload, the number of extensions that set
    innerHTML.
  </summary>
</histogram>

<histogram name="ExtensionActivity.Google.InvokedDomMethod">
  <obsolete>
    Deprecated with M46.
  </obsolete>
  <owner>felt@chromium.org</owner>
  <summary>
    For each www.google.com pageload, the number of extensions that invoke DOM
    methods.
  </summary>
</histogram>

<histogram name="ExtensionActivity.Google.ModifiedDom">
  <obsolete>
    Deprecated with M46.
  </obsolete>
  <owner>felt@chromium.org</owner>
  <summary>
    For each www.google.com pageload, the number of extensions that set the
    value of DOM properties via assignments.
  </summary>
</histogram>

<histogram name="ExtensionActivity.Google.ReadDom">
  <obsolete>
    Deprecated with M46.
  </obsolete>
  <owner>felt@chromium.org</owner>
  <summary>
    For each www.google.com pageload, the number of extensions that read from
    the DOM.
  </summary>
</histogram>

<histogram name="ExtensionActivity.InnerHtml">
  <obsolete>
    Deprecated with M46.
  </obsolete>
  <owner>felt@chromium.org</owner>
  <summary>
    For each pageload, the number of extensions that set innerHTML.
  </summary>
</histogram>

<histogram name="ExtensionActivity.InvokedDomMethod">
  <obsolete>
    Deprecated with M46.
  </obsolete>
  <owner>felt@chromium.org</owner>
  <summary>
    For each pageload, the number of extensions that invoke DOM methods.
  </summary>
</histogram>

<histogram name="ExtensionActivity.ModifiedDom">
  <obsolete>
    Deprecated with M46.
  </obsolete>
  <owner>felt@chromium.org</owner>
  <summary>
    For each pageload, the number of extensions that set the value of DOM
    properties via assignments.
  </summary>
</histogram>

<histogram name="ExtensionActivity.ReadDom">
  <obsolete>
    Deprecated with M46.
  </obsolete>
  <owner>felt@chromium.org</owner>
  <summary>
    For each pageload, the number of extensions that read from the DOM.
  </summary>
</histogram>

<histogram name="ExtensionBlacklist.BlacklistInstalled"
    enum="ExtensionLocation">
  <owner>nparker@chromium.org</owner>
  <summary>
    The number of extensions that were blacklisted when already installed,
    grouped by Extension::Location. Logged when ExtensionService blackists and
    unloads an installed extension.
  </summary>
</histogram>

<histogram name="ExtensionBlacklist.BlockCRX" enum="ExtensionLocation">
  <owner>nparker@chromium.org</owner>
  <summary>
    The number of extensions that have been blocked from installing grouped by
    Extension::Location. Logged when ExtensionService refuses to install a
    blacklisted extension.
  </summary>
</histogram>

<histogram name="ExtensionBlacklist.SilentInstall" enum="ExtensionLocation">
  <owner>nparker@chromium.org</owner>
  <summary>
    The number of extensions that have been silently installed in a blacklisted
    state, grouped by Extension::Location. Logged when ExtensionService installs
    a blacklisted extension without blocking it (ExtensionBlacklist.BlockCRX
    would be logged otherwise). Typically this will be when a user has a
    blacklisted extension synced.
  </summary>
</histogram>

<histogram name="ExtensionBlacklist.UnblacklistInstalled"
    enum="ExtensionLocation">
  <owner>nparker@chromium.org</owner>
  <summary>
    The number of extensions that were unblacklisted when installed, grouped by
    Extension::Location. Logged when ExtensionService unblacklists and loads a
    blacklisted extension.
  </summary>
</histogram>

<histogram name="ExtensionBubble.DevModeUserSelection"
    enum="ExtensionBubbleAction">
  <owner>finnur@chromium.org</owner>
  <summary>
    The action taken by the user when seeing the bubble, logged right after the
    action is taken.
  </summary>
</histogram>

<histogram name="ExtensionBubble.ExtensionsInDevModeCount"
    units="Developer Mode Extensions">
  <owner>finnur@chromium.org</owner>
  <summary>
    The total number of extensions found to be loaded under Developer Mode,
    logged when the devmode bubble is shown (once per startup per profile, if
    any devmode extension is found).
  </summary>
</histogram>

<histogram name="ExtensionBubble.ExtensionWipeoutCount" units="Extensions">
  <owner>finnur@chromium.org</owner>
  <summary>
    The total number of extensions found to be wiped by SideloadWipeout, logged
    when the wipeout bubble is shown, which is once per startup per profile (as
    long as wiped extensions were found). Not logged if no extensions of that
    nature were found.
  </summary>
</histogram>

<histogram name="ExtensionBubble.WipeoutUserSelection"
    enum="ExtensionBubbleAction">
  <owner>finnur@chromium.org</owner>
  <summary>
    The action taken by the user when seeing the bubble, logged right after the
    action is taken.
  </summary>
</histogram>

<histogram name="ExtensionContentHashFetcher.CreateHashesTime" units="ms">
  <owner>asargent@chromium.org</owner>
  <summary>
    The time taken to create the computed_hashes.json file for an extension.
    This happens once for each extension after we get signed values of the
    expected root node of a tree hashes for each file from the webstore; we then
    compute the individual block level hashes of the actual files and cache them
    in computed_hashes.json (assuming we don't detect any mismatches).
  </summary>
</histogram>

<histogram name="ExtensionContentHashReader.InitLatency" units="ms">
  <owner>asargent@chromium.org</owner>
  <summary>
    The time taken to initialize the ContentHashReader for an extension resource
    load. (The work done is to read in the verified contents and computed hashes
    data, and compare them to make sure they agree.)
  </summary>
</histogram>

<histogram name="ExtensionContentVerifyJob.TimeSpentUS" units="microseconds">
  <owner>asargent@chromium.org</owner>
  <summary>
    The time taken in computation (hashing actual bytes read and comparing
    against expected computed hashes values) during an extension resource load.
  </summary>
</histogram>

<histogram name="ExtensionInstalledLoader.ForceDisabled"
    enum="BooleanForceDisabled">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Counts whether we force-disabled an installed extension at startup because a
    policy provider indicated it must remain disabled.
  </summary>
</histogram>

<histogram name="ExtensionInstallSigner.InvalidCount">
  <owner>asargent@chromium.org</owner>
  <summary>
    This is a count of the number of ids that we asked to be signed which the
    server response indicated were not in the webstore.
  </summary>
</histogram>

<histogram name="ExtensionInstallSigner.RequestCount">
  <owner>asargent@chromium.org</owner>
  <summary>
    A count of the number of server requests since Chrome started running,
    recorded each time we do a request. NOTE: when interpreting these values,
    keep in mind that a user who did 5 server requests during one run of Chrome
    will log this histogram 5 times with values 1, 2, 3, 4, and 5.
  </summary>
</histogram>

<histogram name="ExtensionInstallSigner.ResultWasValid">
  <owner>asargent@chromium.org</owner>
  <summary>
    Whether the server result received by the extensions install signer was
    valid or invalid.
  </summary>
</histogram>

<histogram name="ExtensionInstallSigner.SecondsSinceLastRequest"
    units="seconds">
  <owner>asargent@chromium.org</owner>
  <summary>
    This records the number of seconds since the last time we've done a request
    to the server (only during this run of the browser).
  </summary>
</histogram>

<histogram name="ExtensionInstallSigner.UptimeAtTimeOfRequest" units="seconds">
  <owner>asargent@chromium.org</owner>
  <summary>
    Records how many seconds the browser has been running at the time a request
    to the server is made to get a new install signature.
  </summary>
</histogram>

<histogram name="ExtensionInstallVerifier.ActualStatus"
    enum="ExtensionInstallVerifierStatus">
  <owner>asargent@chromium.org</owner>
  <summary>
    Logged during InstallVerifier::Init, to indicate the actual enforcement
    status used (usually determined by the ExtensionInstallVerifier field trial
    experiment, but possibly modified by command line flags).
  </summary>
</histogram>

<histogram name="ExtensionInstallVerifier.ExperimentStatus"
    enum="ExtensionInstallVerifierStatus">
  <owner>asargent@chromium.org</owner>
  <summary>
    Logged during InstallVerifier::Init to indicate the enforcement status as
    determined by the ExtensionInstallVerifier field trial experiment.
  </summary>
</histogram>

<histogram name="ExtensionInstallVerifier.GetSignatureResult"
    enum="ExtensionInstallVerifierGetSignatureResult">
  <owner>asargent@chromium.org</owner>
  <summary>The result of the verifier trying to get a new signature.</summary>
</histogram>

<histogram name="ExtensionInstallVerifier.InitResult"
    enum="ExtensionInstallVerifierInitResult">
  <owner>asargent@chromium.org</owner>
  <summary>
    The result of initialization for the extension install verifier.
  </summary>
</histogram>

<histogram name="ExtensionInstallVerifier.MustRemainDisabled"
    enum="ExtensionInstallVerifierMustRemainDisabled">
  <owner>asargent@chromium.org</owner>
  <summary>
    The outcome for each call to InstallVerifier::MustRemainDisabled.
  </summary>
</histogram>

<histogram name="ExtensionOverrideBubble.NtpOverriddenUserSelection"
    enum="ExtensionBubbleAction">
  <owner>finnur@chromium.org</owner>
  <summary>
    The action taken by the user when seeing the bubble, notifing them of an
    extension overriding their new tab page. Logged right after the action is
    taken.
  </summary>
</histogram>

<histogram name="ExtensionOverrideBubble.SettingsApiUserSelectionHomePage"
    enum="ExtensionBubbleAction">
  <owner>finnur@chromium.org</owner>
  <summary>
    The action taken by the user when seeing the bubble, notifing them of an
    extension overriding their homepage. Logged right after the action is taken.
  </summary>
</histogram>

<histogram name="ExtensionOverrideBubble.SettingsApiUserSelectionSearchEngine"
    enum="ExtensionBubbleAction">
  <owner>finnur@chromium.org</owner>
  <summary>
    The action taken by the user when seeing the bubble, notifing them of an
    extension overriding their search engine. Logged right after the action is
    taken.
  </summary>
</histogram>

<histogram name="ExtensionOverrideBubble.SettingsApiUserSelectionStartupPage"
    enum="ExtensionBubbleAction">
  <owner>finnur@chromium.org</owner>
  <summary>
    The action taken by the user when seeing the bubble, notifing them of an
    extension overriding their startup page. Logged right after the action is
    taken.
  </summary>
</histogram>

<histogram name="Extensions.ActiveScriptController.DeniedExtensions"
    units="Extension Count">
  <owner>rdevlin.cronin@chromium.org</owner>
  <summary>
    The number of extensions on a page that wanted to execute a script, required
    explicit user consent, and were denied permission.
  </summary>
</histogram>

<histogram name="Extensions.ActiveScriptController.PermittedExtensions"
    units="Extension Count">
  <owner>rdevlin.cronin@chromium.org</owner>
  <summary>
    The number of extensions on a page that wanted to execute a script, required
    explicit user consent, and were granted permission.
  </summary>
</histogram>

<histogram name="Extensions.ActiveScriptController.PreventableAdInjectors"
    units="Extension Count">
  <owner>rdevlin.cronin@chromium.org</owner>
  <summary>
    The number of extensions per page that injected an ad and could have been
    stopped if the user had declined script injection. This is related to the
    ActivityLog metrics, ExtensionActivity.Ad*. Recorded upon page close or
    navigation. Only recorded if there was at least one ad injection detected.
  </summary>
</histogram>

<histogram name="Extensions.ActiveScriptController.ShownActiveScriptsOnPage"
    units="Number of Actions">
  <owner>rdevlin.cronin@chromium.org</owner>
  <obsolete>
    Deprecated 2/2014.
  </obsolete>
  <summary>
    The number of extensions which would display an Active Script Running
    indiciation to the user. Recorded at page close.
  </summary>
</histogram>

<histogram name="Extensions.ActiveScriptController.UnpreventableAdInjectors"
    units="Extension Count">
  <owner>rdevlin.cronin@chromium.org</owner>
  <summary>
    The number of extensions per page that injected an ad and that could not
    have been stopped through script injection permission. This is related to
    the ActivityLog metrics, ExtensionActivity.Ad*. Recorded upon page close or
    navigation. Only recorded if there was at least one ad injection detected.
  </summary>
</histogram>

<histogram name="Extensions.AdInjection.AdType" enum="InjectedAdType">
  <owner>felt@chromium.org</owner>
  <owner>rdevlin.cronin@chromium.org</owner>
  <summary>The type of ad that was injected.</summary>
</histogram>

<histogram name="Extensions.AdInjection.InstallLocation"
    enum="ExtensionLocation">
  <owner>felt@chromium.org</owner>
  <owner>rdevlin.cronin@chromium.org</owner>
  <summary>
    The install location of an ad-injecting extension. Recorded upon page close
    for any extension that injected ads on that page.
  </summary>
</histogram>

<histogram name="Extensions.APIUse_RelativeURL" enum="UrlResolutionResult">
  <obsolete>
    Deprecated 04/2016 as doesn't have data nor owner.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Captures the results of URL resolution when relative urls are used in the
    tabs/windows api.
  </summary>
</histogram>

<histogram name="Extensions.AppLaunch" enum="AppLaunch">
  <owner>benwells@chromium.org</owner>
  <owner>tapted@chromium.org</owner>
  <summary>
    The number of times v1 apps are launched grouped by
    extension_misc::AppLaunchBuckets. See also Apps.AppLaunch for v2 apps.
  </summary>
</histogram>

<histogram name="Extensions.AppLaunchContainer" enum="AppLaunchContainer">
  <owner>benwells@chromium.org</owner>
  <owner>tapted@chromium.org</owner>
  <obsolete>
    Deprecated as of 12/2014, replaced by Apps.HostedAppLaunchContainer.
  </obsolete>
  <summary>
    The number of times apps are launched grouped by
    extensions::LaunchContainer.
  </summary>
</histogram>

<histogram name="Extensions.AppLaunchSource" enum="AppLaunchSource">
  <owner>benwells@chromium.org</owner>
  <owner>cylee@chromium.org</owner>
  <summary>
    The number of times times apps are launched grouped by
    extensions::AppLaunchSource.
  </summary>
</histogram>

<histogram name="Extensions.AppLoadedInTab" enum="AppLoadedInTabSource">
  <owner>lazyboy@chromium.org</owner>
  <summary>
    A platform app ended up in a regular tab either by the app page or its
    background page. Note that this happens unexpectedly right now and we wish
    to track its usage before removing the supporting code.
  </summary>
</histogram>

<histogram name="Extensions.AppLocation" enum="ExtensionLocation">
  <owner>benwells@chromium.org</owner>
  <owner>tapted@chromium.org</owner>
  <summary>
    The number of apps loaded at startup time grouped by Extension::Location.
  </summary>
</histogram>

<histogram name="Extensions.AppsPromo" enum="AppPromoAction">
  <owner>benwells@chromium.org</owner>
  <owner>tapted@chromium.org</owner>
  <summary>
    The actions taken in the NTP apps promo grouped by
    extension_misc::AppsPromoBuckets.
  </summary>
</histogram>

<histogram name="Extensions.AppTabLaunchType" enum="ExtensionLaunchType">
  <owner>benwells@chromium.org</owner>
  <owner>tapted@chromium.org</owner>
  <summary>
    The number of apps launched grouped by extensions::LaunchType.
  </summary>
</histogram>

<histogram name="Extensions.BackgroundContentsServiceStartupTime" units="ms">
  <owner>rdevlin.cronin@chromium.org</owner>
  <summary>
    Time taken to load BackgroundContents for apps at startup when the extension
    system notifies that it is ready.
  </summary>
</histogram>

<histogram name="Extensions.BackgroundPageLoadTime" units="ms">
  <obsolete>
    Replaced by Extensions.BackgroundPageLoadTime2.
  </obsolete>
  <owner>rdevlin.cronin@chromium.org</owner>
  <summary>The time for an extension's background page to load.</summary>
</histogram>

<histogram name="Extensions.BackgroundPageLoadTime2" units="ms">
  <owner>rdevlin.cronin@chromium.org</owner>
  <summary>
    The time taken for an extension's persistent background page to load its
    initial URL.
  </summary>
</histogram>

<histogram name="Extensions.BackgroundPageType"
    units="ExtensionBackgroundPageType">
  <owner>rdevlin.cronin@chromium.org</owner>
  <summary>
    The type (if any) of background page the extension has. Recorded for
    installed extensions on startup.
  </summary>
</histogram>

<histogram name="Extensions.BadMessageFunctionName" enum="ExtensionFunctions">
  <owner>rdevlin.cronin@chromium.org</owner>
  <summary>
    The number of times each Extension function call sends a bad message,
    killing the renderer. This may indicate a bug in that API's implementation
    on the renderer. Note a similar, aggregate metric is BadMessageTerminate_EFD
    which counts the number of bad messages that are sent overall.
  </summary>
</histogram>

<histogram name="Extensions.BadSyncDataReason" enum="BadSyncDataReason">
  <owner>rdevlin.cronin@chromium.org</owner>
  <summary>
    The reason a valid ExtensionSyncData could not be parsed from a SyncData
    received from sync.
  </summary>
</histogram>

<histogram name="Extensions.BookmarkAppLaunchContainer"
    enum="AppLaunchContainer">
  <owner>benwells@chromium.org</owner>
  <summary>Records the container used for a bookmark app launch.</summary>
</histogram>

<histogram name="Extensions.CheckForExternalUpdatesTime" units="ms">
  <owner>rkaplow@chromium.org</owner>
  <summary>
    The amount of time that elapsed during
    ExtensionService::CheckForExternalUpdates.
  </summary>
</histogram>

<histogram name="Extensions.CorruptExtensionBecameDisabled">
  <owner>asargent@chromium.org</owner>
  <summary>
    Fired each time an extension was detected to be corrupted (contents not
    matching an expected content hash from the webstore) and was disabled.
  </summary>
</histogram>

<histogram name="Extensions.CorruptExtensionDisabledReason"
    enum="CorruptExtensionDisabledReason">
  <owner>rockot@chromium.org</owner>
  <summary>
    The reason why an extension was detected to be corrupted. Recorded each time
    an extension is disabled due to corruption detection.
  </summary>
</histogram>

<histogram name="Extensions.CorruptExtensionTotalDisables">
  <owner>asargent@chromium.org</owner>
  <summary>
    Logged once at startup, this is the value of a counter that is incremented
    anytime we disable a corrupted extension because its content didn't match an
    expected content hash.
  </summary>
</histogram>

<histogram name="Extensions.CorruptExtensionWouldBeDisabled">
  <owner>asargent@chromium.org</owner>
  <summary>
    Simiar to Extensions.CorruptExtensionBecameDisabled, but fires when we're in
    a bootstrapping mode and would have disabled an extension.
  </summary>
</histogram>

<histogram name="Extensions.CorruptPolicyExtensionWouldBeDisabled"
    enum="BooleanHit">
  <owner>asargent@chromium.org</owner>
  <summary>
    Fires when we detect corruption in an enterprise policy forced install
    extension. See http://crbug.com/447040 for more background on why we don't
    yet disable these. A useful comparison can be made between this value and
    the number of policy forced extensions loaded at startup, which is logged in
    the EXTERNAL_POLICY_DOWNLOAD bucket of the Extensions.ExtensionLocation
    histogram.
  </summary>
</histogram>

<histogram name="Extensions.CrxFetchError" enum="NetErrorCodes">
  <owner>asargent@chromium.org</owner>
  <summary>Net error results from URLFetcher.</summary>
</histogram>

<histogram name="Extensions.CrxFetchFailureRetryCountGoogleUrl">
  <owner>asargent@chromium.org</owner>
  <summary>
    Number of times chrome retried to download an extension with a url on a
    google.com domain, before eventually giving up.
  </summary>
</histogram>

<histogram name="Extensions.CrxFetchFailureRetryCountOtherUrl">
  <owner>asargent@chromium.org</owner>
  <summary>
    Number of times chrome retried to download an extension with a url on a non
    google.com domain, before eventually giving up.
  </summary>
</histogram>

<histogram name="Extensions.CrxFetchSuccessRetryCountGoogleUrl">
  <owner>asargent@chromium.org</owner>
  <summary>
    Number of times chrome retried to download an extension with a url on a
    google.com domain, before eventually succeeding.
  </summary>
</histogram>

<histogram name="Extensions.CrxFetchSuccessRetryCountOtherUrl">
  <owner>asargent@chromium.org</owner>
  <summary>
    Number of times chrome retried to download an extension with a url on a non
    google.com domain, before eventually succeeding.
  </summary>
</histogram>

<histogram name="Extensions.CrxInstallDirPathLength">
  <owner>asargent@chromium.org</owner>
  <summary>
    Length of the path to the directory under which an extension is installed.
    This directory is in the user's profile.
  </summary>
</histogram>

<histogram name="Extensions.Database.Database.Restore"
    enum="LevelDBDatabaseCorruptionRestoreValue">
  <owner>cmumford@chromium.org</owner>
  <summary>
    The result of an attempt to recover from an attempt to open a database that
    failed as a result of corruption.
  </summary>
</histogram>

<histogram name="Extensions.Database.Open" enum="LevelDBStatus">
  <owner>cmumford@chromium.org</owner>
  <summary>The result of an open attempt to an Extensions database.</summary>
</histogram>

<histogram name="Extensions.Database.Restore"
    enum="LevelDBDatabaseCorruptionRestoreValue">
  <owner>cmumford@chromium.org</owner>
  <obsolete>
    Shipped only in M48. Superceded by Extensions.Database.Database.Restore and
    Extensions.Database.Value.Restore.
  </obsolete>
  <summary>
    The result of an attempt to recover from an attempt to open a database that
    failed as a result of corruption.
  </summary>
</histogram>

<histogram name="Extensions.Database.Value.Restore"
    enum="LevelDBValueCorruptionDeleteValue">
  <owner>cmumford@chromium.org</owner>
  <summary>
    The result of an attempt to delete a corrupted value from a database.
  </summary>
</histogram>

<histogram name="Extensions.DeclarativeRulesStorageInitialization" units="ms">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>Time spent until rules storage delegate gets ready.</summary>
</histogram>

<histogram name="Extensions.DepricatedExternalJsonCount">
  <obsolete>
    Deprecated 04/2016 as doesn't have data nor owner.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Number of extensions referenced in the depricated external extensions source
    at path chrome::DIR_DEPRICATED_EXTERNAL_EXTENSIONS.
  </summary>
</histogram>

<histogram name="Extensions.DialogLoadTime" units="ms">
  <obsolete>
    There is no such thing as an extension dialog.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>The time for a dialog-hosted extension to load.</summary>
</histogram>

<histogram name="Extensions.DidCreateScriptContext_Blessed" units="ms">
  <owner>rdevlin.cronin@chromium.org</owner>
  <summary>
    Part of the suite of Extensions.DidCreateScriptContext_* metrics. Records
    the time taken to install Extension JavaScript bindings per blessed
    extension context (chrome-extension://... origins within Extension
    processes, like background pages, options pages, popups).
  </summary>
</histogram>

<histogram name="Extensions.DidCreateScriptContext_BlessedWebPage" units="ms">
  <owner>rdevlin.cronin@chromium.org</owner>
  <summary>
    Part of the suite of Extensions.DidCreateScriptContext_* metrics. Records
    the time taken to install Extension JavaScript bindings per blessed web page
    context (hosted apps).
  </summary>
</histogram>

<histogram name="Extensions.DidCreateScriptContext_ContentScript" units="ms">
  <owner>rdevlin.cronin@chromium.org</owner>
  <summary>
    Part of the suite of Extensions.DidCreateScriptContext_* metrics. Records
    the time taken to install Extension JavaScript bindings per content script
    context.
  </summary>
</histogram>

<histogram name="Extensions.DidCreateScriptContext_Unblessed" units="ms">
  <owner>rdevlin.cronin@chromium.org</owner>
  <summary>
    Part of the suite of Extensions.DidCreateScriptContext_* metrics. Records
    the time taken to install Extension JavaScript bindings per unblessed
    extension context (chrome-extension://... origins hosted in iframes).
  </summary>
</histogram>

<histogram name="Extensions.DidCreateScriptContext_Unspecified" units="ms">
  <owner>rdevlin.cronin@chromium.org</owner>
  <summary>
    Part of the suite of Extensions.DidCreateScriptContext_* metrics. Records
    the time taken to install Extension JavaScript bindings in an unknown type
    of context (this should never happen other than in bizarre circumstances).
  </summary>
</histogram>

<histogram name="Extensions.DidCreateScriptContext_WebPage" units="ms">
  <owner>rdevlin.cronin@chromium.org</owner>
  <summary>
    Part of the suite of Extensions.DidCreateScriptContext_* metrics. Records
    the time taken to install Extension JavaScript bindings per web page context
    (just the chrome.app, chrome.webstore, and possibly chrome.runtime APIs).
  </summary>
</histogram>

<histogram name="Extensions.DidCreateScriptContext_WebUI" units="ms">
  <owner>rdevlin.cronin@chromium.org</owner>
  <summary>
    Part of the suite of Extensions.DidCreateScriptContext_* metrics. Records
    the time taken to install Extension JavaScript bindings per WebUI context
    (chrome://extensions and so forth).
  </summary>
</histogram>

<histogram name="Extensions.DidInitializeServiceWorkerContextOnWorkerThread"
    units="ms">
  <owner>rdevlin.cronin@chromium.org</owner>
  <summary>
    Records the time taken to install Extension JavaScript bindings per service
    worker context.
  </summary>
</histogram>

<histogram name="Extensions.DidSuppressJavaScriptException"
    enum="ChromeChannelForHistogram">
  <owner>rdevlin.cronin@chromium.org</owner>
  <summary>
    Records the Chrome channel when JavaScript exceptions are not gracefully
    dealt with, and suppressed by C++ instead. These are exceptions generated
    (or simply not caught and gracefully recovered) in our own internal
    JavaScript, not from JavaScript code written by developers (that which is
    typically hosted in CRX files). This should be 0 for unstable channels like
    canary and dev, because we try *not* to suppress errors and instead kill the
    renderer and generate a crash report. However, at times we need to suppress
    even those. Note that this histogram is intended to be tracked over time,
    per channel, to observe crash rates. Comparisons between
    stable/beta/dev/canary are unlikely to be meaningful.
  </summary>
</histogram>

<histogram name="Extensions.Disabled">
  <owner>rdevlin.cronin@chromium.org</owner>
  <summary>
    The number of extensions that are disabled at browser startup.
  </summary>
</histogram>

<histogram name="Extensions.DisabledForPermissions">
  <owner>rdevlin.cronin@chromium.org</owner>
  <summary>
    The number of extensions that are disabled at browser startup due to
    permissions increases.
  </summary>
</histogram>

<histogram name="Extensions.DisabledUIUserResponse"
    enum="ExtensionDisabledUIUserResponse">
  <owner>rdevlin.cronin@chromium.org</owner>
  <summary>
    User response to the dialog shown when an extension is disabled due to an
    update requiring more permissions.
  </summary>
</histogram>

<histogram name="Extensions.DisabledUIUserResponseRemoteInstall"
    enum="ExtensionDisabledUIUserResponse">
  <owner>mek@chromium.org</owner>
  <summary>
    User response to the dialog shown when an extension is disabled due to it
    having been installed remotely.
  </summary>
</histogram>

<histogram name="Extensions.DisableReason" enum="ExtensionDisableReason">
  <owner>asargent@chromium.org</owner>
  <summary>
    The count of disabled extensions at startup grouped by disble reason from
    Extension::DisableReason. When an extension is disabled, it can be for one
    or more reasons (although typically just one), so the sum of these may be
    greater than 'Extensions.Disabled' which is a count of the number of unique
    extensions that are disabled.
  </summary>
</histogram>

<histogram name="Extensions.EnhancedBookmarksManagerNumEventListeners">
  <obsolete>
    Obsolete since the enhanced bookmarks manager is no longer using an event
    page.
  </obsolete>
  <owner>wittman@chromium.org</owner>
  <summary>
    The number of event listeners the Enhanced Bookmarks Manager has, measured
    at profile startup. A value of 0 implies that Chrome has a general bug with
    event page management, since the bookmarks manager should always have at
    least one event listener - but a bug with event page management that affects
    the bookmarks manager is particularly dire.
  </summary>
</histogram>

<histogram name="Extensions.ErrorCodeFromCrxOpen">
  <owner>asargent@chromium.org</owner>
  <summary>
    If opening the CRX file for unpacking fails, this integer is the error code
    given by the OS.
  </summary>
</histogram>

<histogram name="Extensions.EventlessEventPages">
  <owner>rdevlin.cronin@chromium.org</owner>
  <summary>
    The number of extensions with event pages that have no registered event
    listeners at profile startup. (This may indicate something has gone wrong;
    such event pages will never get started.)
  </summary>
</histogram>

<histogram name="Extensions.EventPageActiveTime" units="ms">
  <obsolete>
    Replaced by Extensions.EventPageActiveTime2.
  </obsolete>
  <owner>rdevlin.cronin@chromium.org</owner>
  <summary>The time an extension's event page has spent loaded.</summary>
</histogram>

<histogram name="Extensions.EventPageActiveTime2" units="ms">
  <owner>rdevlin.cronin@chromium.org</owner>
  <summary>
    The time between an extension's event page loading its first URL and the
    event page later shutting down.
  </summary>
</histogram>

<histogram name="Extensions.EventPageIdleTime" units="ms">
  <owner>rdevlin.cronin@chromium.org</owner>
  <summary>The time an extension's event page has spent unloaded.</summary>
</histogram>

<histogram name="Extensions.EventPageLoadTime" units="ms">
  <obsolete>
    Replaced by Extensions.EventPageLoadTime2.
  </obsolete>
  <owner>rdevlin.cronin@chromium.org</owner>
  <summary>The time for an extension's event page to load.</summary>
</histogram>

<histogram name="Extensions.EventPageLoadTime2" units="ms">
  <owner>rdevlin.cronin@chromium.org</owner>
  <summary>
    The time taken for an extension's event page to load its initial URL.
  </summary>
</histogram>

<histogram name="Extensions.Events.Dispatch" enum="ExtensionEvents">
  <owner>rdevlin.cronin@chromium.org</owner>
  <summary>Recorded every time an event is dispatched to an extension.</summary>
</histogram>

<histogram name="Extensions.Events.DispatchToComponent" enum="ExtensionEvents">
  <owner>rdevlin.cronin@chromium.org</owner>
  <summary>
    Recorded every time an event is dispatched to a *component* extension.
    Otherwise identical to Extensions.Events.Dispatched.
  </summary>
</histogram>

<histogram name="Extensions.Events.DispatchToComponentWithSuspendedEventPage"
    enum="ExtensionEvents">
  <owner>mfoltz@chromium.org</owner>
  <summary>
    Recorded every time an event is dispatched to a *component* extension with a
    suspended event page.  Otherwise identical to
    Extensions.Events.DispatchWithSuspendedEventPage.
  </summary>
</histogram>

<histogram name="Extensions.Events.DispatchWithPersistentBackgroundPage"
    enum="ExtensionEvents">
  <owner>rdevlin.cronin@chromium.org</owner>
  <summary>
    Recorded every time an event is dispatched to an extension with a persistent
    background page. The event may or may not have been dispatched to the
    background page itself, for example it may have been dispatched to its
    popup. When this metric is recorded, Extensions.Events.Dispatch will also be
    recorded.
  </summary>
</histogram>

<histogram name="Extensions.Events.DispatchWithRunningEventPage"
    enum="ExtensionEvents">
  <owner>rdevlin.cronin@chromium.org</owner>
  <summary>
    Recorded every time an event is dispatched to an extension with an event
    page that was already running (i.e. at some point had been woken from its
    suspended state, see Extensions.Events.DispatchWithSuspendedEventPage). The
    event may or may not have been dispatched to the event page itself, for
    example it may have been dispatched to its popup. When this metric is
    recorded, Extensions.Events.Dispatch will also be recorded.
  </summary>
</histogram>

<histogram name="Extensions.Events.DispatchWithSuspendedEventPage"
    enum="ExtensionEvents">
  <owner>rdevlin.cronin@chromium.org</owner>
  <summary>
    Recorded every time an event is dispatched to an extension with an event
    page that was suspended. This implies that firing this event woke up the
    event page. The event may or may not have been dispatched to the event page
    itself, for example it may have been dispatched to its popup, but regardless
    it will wake the event page.  When this metric is recorded,
    Extensions.Events.Dispatch will also be recorded.
  </summary>
</histogram>

<histogram name="Extensions.ExtensionCacheCount">
  <owner>achuith@chromium.org</owner>
  <summary>
    Number of cached extensions on disk. Reported on Chrome OS during user
    session start.
  </summary>
</histogram>

<histogram name="Extensions.ExtensionCacheSize" units="MB">
  <owner>achuith@chromium.org</owner>
  <summary>
    Total size of .crx files in cache on disk. Reported on Chrome OS during user
    session start.
  </summary>
</histogram>

<histogram name="Extensions.ExtensionFrameMapCacheHit" units="Boolean">
  <owner>rdevlin.cronin@chromium.org</owner>
  <summary>
    True if the cache of the extension frame map was hit during access on the IO
    thread.
  </summary>
</histogram>

<histogram name="Extensions.ExtensionFrameMapLookupSuccessful" units="Boolean">
  <owner>rdevlin.cronin@chromium.org</owner>
  <summary>
    True if the lookup for a frame in the extension frame map succeeded after a
    cache miss.
  </summary>
</histogram>

<histogram name="Extensions.ExtensionHostMonitoring.MaxActiveLoading">
  <owner>rdevlin.cronin@chromium.org</owner>
  <summary>
    The maximum number of ExtensionHosts (primarily background/event pages) that
    were actively loading at any one time, within the first minute of Chrome
    startup. Emitted exactly one minute after startup.
  </summary>
</histogram>

<histogram name="Extensions.ExtensionHostMonitoring.MaxInQueue">
  <owner>rdevlin.cronin@chromium.org</owner>
  <summary>
    The maximum number of ExtensionHosts (primarily background/event pages) in
    the queue awaiting being loaded (via an ExtensionHostQueue), within the
    first minute of Chrome startup. Emitted exactly one minute after startup.
  </summary>
</histogram>

<histogram name="Extensions.ExtensionHostMonitoring.NumLoaded">
  <owner>rdevlin.cronin@chromium.org</owner>
  <summary>
    The total number of ExtensionHosts that completed loading in the first
    minute of Chrome startup. Emitted exactly one minute after startup.
  </summary>
</histogram>

<histogram name="Extensions.ExtensionHostMonitoring.NumQueued">
  <owner>rdevlin.cronin@chromium.org</owner>
  <summary>
    The total number of ExtensionHosts (primarily background/event pages) that
    were added to a queue to start loading, within the first minute of Chrome
    startup. These may or may not end up starting, let alone finishing,
    depending on the queue behavior. Emitted exactly one minute after startup.
  </summary>
</histogram>

<histogram name="Extensions.ExtensionInstalled">
  <owner>rdevlin.cronin@chromium.org</owner>
  <summary>An extension has been installed.</summary>
</histogram>

<histogram name="Extensions.ExtensionLocation" enum="ExtensionLocation">
  <owner>rdevlin.cronin@chromium.org</owner>
  <summary>
    The number of extensions loaded at startup time grouped by
    Extension::Location.
  </summary>
</histogram>

<histogram name="Extensions.ExtensionManagement_RefreshTime" units="ms">
  <owner>rkaplow@chromium.org</owner>
  <summary>
    The amount of time that elapsed during ExtensionManagement::Refresh.
  </summary>
</histogram>

<histogram name="Extensions.ExtensionRendererStateCacheHit" units="Boolean">
  <owner>rdevlin.cronin@chromium.org</owner>
  <obsolete>
    Deprecated 4/2016. ExtensionRendererState was replaced with
    ExtensionFrameMap.
  </obsolete>
  <summary>
    True if the cache for the ExtensionRendererState was hit during a lookup.
  </summary>
</histogram>

<histogram name="Extensions.ExtensionRootPathLength">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Length of the Extensions dir path inside the profile directory.
  </summary>
</histogram>

<histogram name="Extensions.ExtensionServiceInitTime">
  <owner>rdevlin.cronin@chromium.org</owner>
  <summary>
    Time taken for the ExtensionService to initialize, including the time it
    takes to load the extensions for the service's profile and parse their
    manifests. This happens during startup and also any time a new profile is
    loaded.
  </summary>
</histogram>

<histogram name="Extensions.ExtensionServiceNotifyReadyListenersTime">
  <owner>rdevlin.cronin@chromium.org</owner>
  <summary>
    Time taken for the ExtensionService to notify all ready listeners that the
    extension system is now ready. This happens as part of the total
    initialization time of ExtensionService, measured in
    Extensions.ExtensionServiceInitTime.
  </summary>
</histogram>

<histogram name="Extensions.ExtensionUninstalled">
  <owner>rdevlin.cronin@chromium.org</owner>
  <summary>An extension has been uninstalled.</summary>
</histogram>

<histogram name="Extensions.ExternalExtensionEvent" enum="SideloadUIEvents">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Records what happens to extensions that are sideloaded, grouped by the
    ExternalExtensionEvent enum.
  </summary>
</histogram>

<histogram name="Extensions.ExternalItemState" enum="ExternalItemState">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The number of sideloaded apps/extensions loaded on startup grouped by
    enabled/disabled state.
  </summary>
</histogram>

<histogram name="Extensions.ExternalJsonCount">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Number of extensions referenced in the external extensions source at path
    chrome::DIR_EXTERNAL_EXTENSIONS.
  </summary>
</histogram>

<histogram name="Extensions.ExternalWarningUninstallationResult" enum="Boolean">
  <owner>rdevlin.cronin@chromium.org</owner>
  <summary>
    Whether or not the uninstallation of an external extension succeeded.
    Triggered when the external install warning is shown to the user and the
    user selects to remove the extension.
  </summary>
</histogram>

<histogram name="Extensions.FeatureProviderStaticInitTime" units="ms">
  <owner>rkaplow@chromium.org</owner>
  <summary>
    The amount of time that elapsed during extensions::FeatureProvider::Static.
    Only measured while in the browser process.
  </summary>
</histogram>

<histogram name="Extensions.FileAccessAllowed">
  <owner>rdevlin.cronin@chromium.org</owner>
  <summary>
    The number of extensions (and friends) that could have been given access to
    the file:// scheme, and were, for users that have at least one extension
    that could have been given access. This excludes anything that doesn't show
    up in chrome://extensions (platform apps, hosted apps, component
    extensions), policy-installed extensions, and unpacked extensions. See also
    Extensions.FileAccessNotAllowed.
  </summary>
</histogram>

<histogram name="Extensions.FileAccessNotAllowed">
  <owner>rdevlin.cronin@chromium.org</owner>
  <summary>
    The number of extensions (and friends) that could have been given access to
    the file:// scheme, but weren't, for users that have at least one extension
    that could have been given access. This excludes anything that doesn't show
    up in chrome://extensions (platform apps, hosted apps, component
    extensions), policy-installed extensions, and unpacked extensions. See also
    Extensions.FileAccessAllowed.
  </summary>
</histogram>

<histogram name="Extensions.FileInstallation" units="ms">
  <owner>xiaohuic@chromium.org</owner>
  <summary>
    Record the time taken to physically move the extention files from temporary
    location to the final installation directory. It includes the time to flush
    the file system if ExtensionUseSafeInstallation field trial is enabled. This
    is recorded once per extension install/update.
  </summary>
</histogram>

<histogram name="Extensions.FontSettingsEventRouterCtorTime" units="ms">
  <owner>rkaplow@chromium.org</owner>
  <summary>
    The amount of time that elapsed during the FontSettingsEventRouter
    construction.
  </summary>
</histogram>

<histogram name="Extensions.FromWebstoreInconsistency"
    enum="ExtensionFromWebstoreInconcistencyEnum">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Number of apps/extensions loaded on startup with an inconsistent &quot;from
    webstore&quot; state. This means an item that is flagged as from_webstore,
    but with either a non-webstore update_url or an external install location.
  </summary>
</histogram>

<histogram name="Extensions.FunctionCalls" enum="ExtensionFunctions">
  <owner>rdevlin.cronin@chromium.org</owner>
  <summary>Number of calls to extension functions.</summary>
</histogram>

<histogram name="Extensions.Functions.FailedTotalExecutionTime" units="ms">
  <owner>rdevlin.cronin@chromium.org</owner>
  <summary>
    The total amount of time it took to execute an extension function that
    failed from the time the extension function is called to the time the
    function responds. Note that since some extension functions are inherently
    slow (anything that requires user interaction, for instance), this is not a
    definitive source for function performance.
  </summary>
</histogram>

<histogram name="Extensions.Functions.SucceededTotalExecutionTime" units="ms">
  <owner>rdevlin.cronin@chromium.org</owner>
  <summary>
    The total amount of time it took to execute an extension function that
    succeeded from the time the extension function is called to the time the
    function responds. Note that since some extension functions are inherently
    slow (anything that requires user interaction, for instance), this is not a
    definitive source for function performance.
  </summary>
</histogram>

<histogram name="Extensions.Functions.SynchronousExecutionTime" units="ms">
  <owner>rdevlin.cronin@chromium.org</owner>
  <summary>
    The synchronous amount of time an extension function takes. Note that many
    extension functions run asynchronously; see also
    Extensions.Functions.[Succeeded|Failed]TotalExecutionTime.
  </summary>
</histogram>

<histogram name="Extensions.GetUserDataTempDir" enum="GetUserDataTempDirResult">
  <obsolete>
    Deprecated 04/2016 as doesn't have data nor owner.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    What happens when the extensions system tries to get a temp dir to unpack
    in?
  </summary>
</histogram>

<histogram name="Extensions.HasPermissions_AutoDisable3" enum="Boolean">
  <owner>rdevlin.cronin@chromium.org</owner>
  <owner>rpaquay@chromium.org</owner>
  <summary>
    Whether there were any permissions present in an extension when it is
    automatically disabled due to a permission increase (e.g., after an
    extension upgrade). To find places where this histogram may be emitted, look
    for calls to ExtensionService::RecordPermissionMessagesHistogram with the
    argument AutoDisable. For Sync users, this may be reported for each device,
    depending on whether the Sync update or the extension auto-update happen
    first.
  </summary>
</histogram>

<histogram name="Extensions.HasPermissions_Install3" enum="Boolean">
  <owner>rdevlin.cronin@chromium.org</owner>
  <owner>rpaquay@chromium.org</owner>
  <summary>
    Whether there were any permissions present in an extension when it was
    installed. To find places where this histogram may be emitted, look for
    calls to ExtensionService::RecordPermissionMessagesHistogram with the
    argument Install. For Sync users, this is reported for each device.
  </summary>
</histogram>

<histogram name="Extensions.HasPermissions_InstallAbort3" enum="Boolean">
  <owner>rdevlin.cronin@chromium.org</owner>
  <owner>rpaquay@chromium.org</owner>
  <summary>
    Whether there were any permissions present in an extension when installation
    was aborted (e.g. because the parent window of the confirmation dialog went
    away), not including installation errors and user cancels. To find places
    where this histogram may be emitted, look for calls to
    ExtensionService::RecordPermissionMessagesHistogram with the argument
    InstallAbort.
  </summary>
</histogram>

<histogram name="Extensions.HasPermissions_InstallCancel3" enum="Boolean">
  <owner>rdevlin.cronin@chromium.org</owner>
  <owner>rpaquay@chromium.org</owner>
  <summary>
    Whether there were any permissions present in an extension when installation
    was canceled. To find places where this histogram may be emitted, look for
    calls to ExtensionService::RecordPermissionMessagesHistogram with the
    argument InstallCancel.
  </summary>
</histogram>

<histogram name="Extensions.HasPermissions_Load3" enum="Boolean">
  <owner>rdevlin.cronin@chromium.org</owner>
  <owner>rpaquay@chromium.org</owner>
  <summary>
    Whether there were any permissions present in an extension when it was
    loaded (which happens at profile open or extension install). To find places
    where this histogram may be emitted, look for calls to
    ExtensionService::RecordPermissionMessagesHistogram with the argument Load.
  </summary>
</histogram>

<histogram name="Extensions.HasPermissions_ReEnable3" enum="Boolean">
  <owner>rdevlin.cronin@chromium.org</owner>
  <owner>rpaquay@chromium.org</owner>
  <summary>
    Whether there were any permissions present in an extension when it was
    re-enabled from a confirmation prompt. To find places where this histogram
    may be emitted, look for calls to
    ExtensionService::RecordPermissionMessagesHistogram with the argument
    ReEnable.
  </summary>
</histogram>

<histogram name="Extensions.HasPermissions_ReEnableAbort3" enum="Boolean">
  <owner>rdevlin.cronin@chromium.org</owner>
  <owner>rpaquay@chromium.org</owner>
  <summary>
    Whether there were any permissions present in an extension when the
    re-enable prompt was aborted (e.g. because the parent window of the
    confirmation dialog went away), not including installation errors and manual
    user cancels. To find places where this histogram may be emitted, look for
    calls to ExtensionService::RecordPermissionMessagesHistogram with the
    argument ReEnableAbort.
  </summary>
</histogram>

<histogram name="Extensions.HasPermissions_ReEnableCancel3" enum="Boolean">
  <owner>rdevlin.cronin@chromium.org</owner>
  <owner>rpaquay@chromium.org</owner>
  <summary>
    Whether there were any permissions present in an extension when the
    re-enable was canceled from the confirmation prompt. To find places where
    this histogram may be emitted, look for calls to
    ExtensionService::RecordPermissionMessagesHistogram with the argument
    ReEnableCancel.
  </summary>
</histogram>

<histogram name="Extensions.HasPermissions_Uninstall3" enum="Boolean">
  <owner>rdevlin.cronin@chromium.org</owner>
  <owner>rpaquay@chromium.org</owner>
  <summary>
    Whether there were any permissions present in an extension when it was
    uninstalled. To find places where this histogram may be emitted, look for
    calls to ExtensionService::RecordPermissionMessagesHistogram with the
    argument Uninstall. For Sync users, this is reported for each device.
  </summary>
</histogram>

<histogram name="Extensions.HasPermissions_WebStoreInstall3" enum="Boolean">
  <owner>rdevlin.cronin@chromium.org</owner>
  <owner>rpaquay@chromium.org</owner>
  <summary>
    Whether there were any permissions present in an extension when it was
    installed through the web store. To find places where this histogram may be
    emitted, look for calls to
    ExtensionService::RecordPermissionMessagesHistogram with the argument
    WebStoreInstall. Contrary to the more-general HasPermissions_Install3
    histogram, this one is NOT reported for each device.
  </summary>
</histogram>

<histogram name="Extensions.HasPermissions_WebStoreInstallAbort3"
    enum="Boolean">
  <owner>rdevlin.cronin@chromium.org</owner>
  <owner>rpaquay@chromium.org</owner>
  <summary>
    Whether there were any permissions present in an extension when installation
    from the web store was aborted (e.g. because the parent window of the
    confirmation dialog went away), not including installation errors and user
    cancels. To find places where this histogram may be emitted, look for calls
    to ExtensionService::RecordPermissionMessagesHistogram with the argument
    WebStoreInstallAbort.
  </summary>
</histogram>

<histogram name="Extensions.HasPermissions_WebStoreInstallCancel3"
    enum="Boolean">
  <owner>rdevlin.cronin@chromium.org</owner>
  <owner>rpaquay@chromium.org</owner>
  <summary>
    Whether there were any permissions present in an extension when installation
    from the web store was canceled. To find places where this histogram may be
    emitted, look for calls to
    ExtensionService::RecordPermissionMessagesHistogram with the argument
    WebStoreInstallCancel.
  </summary>
</histogram>

<histogram name="Extensions.HostedAppLaunchContainer" enum="AppLaunchContainer">
  <owner>benwells@chromium.org</owner>
  <summary>
    Records the container used for a hosted app launch. The definition of
    'launch' for the purposes of this histogram is different to that used for
    the launch type histograms. This definition is less inclusive, for example
    it does not include navigations to the hosted app due to normal browsing,
    which the other definition does include. This definition could be thought of
    more as explicit launches via a launch surface such as the app launcher,
    chrome://apps, or a shortcut.
  </summary>
</histogram>

<histogram name="Extensions.HostedAppUnlimitedStoragePersistentStorageUsage"
    units="KB">
  <owner>rdevlin.cronin@chromium.org</owner>
  <summary>
    The usage (in kilobytes) of persistent storage in a hosted app with the
    unlimitedStorage permission. This is logged each time the storage is used*,
    so this also serves as a cap of the number of calls that would fail if the
    app did not have the unlimited storage permission. *Capped at once per 30
    seconds so as to not impact performance.
  </summary>
</histogram>

<histogram name="Extensions.HostedAppUnlimitedStorageTemporaryStorageUsage"
    units="%">
  <owner>rdevlin.cronin@chromium.org</owner>
  <summary>
    The percentage of &quot;normal&quot; (that is, not unlimited) quota that a
    hosted app with unlimited storage is currently using. This is logged each
    time the storage is used*, so the number of times the app would use greater
    than 100% of the default storage can serve as a cap for the number of calls
    that would fail if the app did not have the unlimitedStorage permission.
    *Capped at once per 30 seconds so as to not impact performance.
  </summary>
</histogram>

<histogram name="Extensions.HostedAppUnlimitedStorageUsage" units="KB">
  <owner>rdevlin.cronin@chromium.org</owner>
  <summary>
    The usage (in kilobytes) of a hosted app with the unlimitedStorage api
    permission, recorded once per run per app the first time we load storage for
    the hosted app. This is separate from the other metrics on hosted app
    unlimited storage usage because it is logged once per extension per run.
  </summary>
</histogram>

<histogram name="Extensions.IncognitoAllowed">
  <owner>rdevlin.cronin@chromium.org</owner>
  <summary>
    The number of extensions (and friends) that could have been allowed in
    incognito, and were, for users that have at least one extension that could
    have been allowed. This excludes anything that doesn't show up in
    chrome://extensions (platform apps, hosted apps, component extensions),
    policy-installed extensions, and unpacked extensions. See also
    Extensions.IncognitoNotAllowed.
  </summary>
</histogram>

<histogram name="Extensions.IncognitoNotAllowed">
  <owner>rdevlin.cronin@chromium.org</owner>
  <summary>
    The number of extensions (and friends) that could have been allowed in
    incognito, but weren't, for users that have at least one extension that
    could have been allowed. This excludes anything that doesn't show up in
    chrome://extensions (platform apps, hosted apps, component extensions),
    policy-installed extensions, and unpacked extensions. See also
    Extensions.IncognitoAllowed.
  </summary>
</histogram>

<histogram name="Extensions.InitExtensionControlledPrefsTime" units="ms">
  <owner>rkaplow@chromium.org</owner>
  <summary>
    The amount of time that elapsed during
    ExtensionPrefs::InitExtensionControlledPrefs.
  </summary>
</histogram>

<histogram name="Extensions.InitPrefGetExtensionsTime" units="ms">
  <owner>rkaplow@chromium.org</owner>
  <summary>
    The amount of time that elapsed during the GetExtensions call within
    ExtensionPrefs::InitPrefStore.
  </summary>
</histogram>

<histogram name="Extensions.InitPrefStoreTime" units="ms">
  <owner>rkaplow@chromium.org</owner>
  <summary>
    The amount of time that elapsed during ExtensionPrefs::InitPrefStore.
  </summary>
</histogram>

<histogram name="Extensions.InjectCssTime" units="ms">
  <owner>rdevlin.cronin@chromium.org</owner>
  <summary>
    The amount of time for a CSS file to be injected into a page.
  </summary>
</histogram>

<histogram name="Extensions.InjectEnd_BlockingScriptCount">
  <owner>rdevlin.cronin@chromium.org</owner>
  <summary>
    Number of blocking scripts injected at document end by extensions.
  </summary>
</histogram>

<histogram name="Extensions.InjectEnd_ScriptCount">
  <owner>rdevlin.cronin@chromium.org</owner>
  <summary>Number of scripts injected at document end by extensions.</summary>
</histogram>

<histogram name="Extensions.InjectEnd_Time" units="ms">
  <owner>rdevlin.cronin@chromium.org</owner>
  <summary>
    Time taken to inject all scripts at document end by extensions.
  </summary>
</histogram>

<histogram name="Extensions.InjectIdle_BlockingScriptCount">
  <owner>rdevlin.cronin@chromium.org</owner>
  <summary>
    Number of blocking scripts injected at document idle by extensions.
  </summary>
</histogram>

<histogram name="Extensions.InjectIdle_ScriptCount">
  <owner>rdevlin.cronin@chromium.org</owner>
  <summary>Number of scripts injected at document idle by extensions.</summary>
</histogram>

<histogram name="Extensions.InjectIdle_Time" units="ms">
  <owner>rdevlin.cronin@chromium.org</owner>
  <summary>
    Time taken to inject all scripts at document idle by extensions.
  </summary>
</histogram>

<histogram name="Extensions.InjectScriptTime" units="ms">
  <owner>rdevlin.cronin@chromium.org</owner>
  <summary>Time taken to inject all scripts by extensions.</summary>
</histogram>

<histogram name="Extensions.InjectStart_BlockingScriptCount">
  <owner>rdevlin.cronin@chromium.org</owner>
  <summary>
    Number of blocking scripts injected at document start by extensions.
  </summary>
</histogram>

<histogram name="Extensions.InjectStart_CssCount">
  <owner>rdevlin.cronin@chromium.org</owner>
  <summary>Number of css files injected by extensions.</summary>
</histogram>

<histogram name="Extensions.InjectStart_ScriptCount">
  <owner>rdevlin.cronin@chromium.org</owner>
  <summary>Number of scripts injected at document start by extensions.</summary>
</histogram>

<histogram name="Extensions.InjectStart_Time" units="ms">
  <owner>rdevlin.cronin@chromium.org</owner>
  <summary>
    Time taken to inject css/scripts at document start by extensions.
  </summary>
</histogram>

<histogram name="Extensions.InstallPrompt.Accepted" enum="BooleanAccepted">
  <owner>meacer@chromium.org</owner>
  <summary>
    Whether the user accepted or aborted an extension installation.
  </summary>
</histogram>

<histogram name="Extensions.InstallPrompt.Type"
    enum="ExtensionInstallPromptType">
  <owner>meacer@chromium.org</owner>
  <summary>
    Type of the extension install prompt displayed when an extension
    installation is triggered.
  </summary>
</histogram>

<histogram name="Extensions.InstallPromptExperiment.ShowDetails"
    enum="ExtensionInstallPromptExperimentLinkAction">
  <owner>meacer@chromium.org</owner>
  <summary>
    Actions on the show details link grouped by action type when the install
    prompt trial is running.
  </summary>
</histogram>

<histogram name="Extensions.InstallPromptExperiment.ShowPermissions"
    enum="ExtensionInstallPromptExperimentLinkAction">
  <owner>meacer@chromium.org</owner>
  <summary>
    Actions on the show permissions link grouped by action type when the install
    prompt trial is running.
  </summary>
</histogram>

<histogram name="Extensions.InstallSource" enum="ExtensionLocation">
  <owner>rdevlin.cronin@chromium.org</owner>
  <summary>Installs grouped by the location property in prefs.</summary>
</histogram>

<histogram name="Extensions.InstallType" enum="ExtensionType">
  <owner>rdevlin.cronin@chromium.org</owner>
  <summary>Installs grouped by Extension::HistogramType.</summary>
</histogram>

<histogram name="Extensions.LoadAll">
  <owner>rdevlin.cronin@chromium.org</owner>
  <summary>The number of extensions and themes loaded at profile open.</summary>
</histogram>

<histogram name="Extensions.LoadAllComponentTime" units="ms">
  <owner>rdevlin.cronin@chromium.org</owner>
  <summary>
    Time taken to load all component extensions at profile open. This happens as
    part of the total initialization time of ExtensionService, measured in
    Extensions.ExtensionServiceInitTime.
  </summary>
</histogram>

<histogram name="Extensions.LoadAllTime" units="ms">
  <owner>rdevlin.cronin@chromium.org</owner>
  <summary>
    Time taken to load all non-component extensions at profile open. This
    happens as part of the total initialization time of ExtensionService,
    measured in Extensions.ExtensionServiceInitTime.
  </summary>
</histogram>

<histogram name="Extensions.LoadAllTime2" units="ms">
  <owner>rdevlin.cronin@chromium.org</owner>
  <summary>
    Time taken to load all non-component extensions at profile open and record
    metrics. This happens as part of the total initialization time of
    ExtensionService, measured in Extensions.ExtensionServiceInitTime.
  </summary>
</histogram>

<histogram name="Extensions.LoadApp">
  <owner>rdevlin.cronin@chromium.org</owner>
  <summary>The number of apps loaded by each user at profile open.</summary>
</histogram>

<histogram name="Extensions.LoadAppExternal">
  <owner>rdevlin.cronin@chromium.org</owner>
  <summary>
    The number of externally managed apps loaded by each user at profile open.
  </summary>
</histogram>

<histogram name="Extensions.LoadAppUser">
  <owner>rdevlin.cronin@chromium.org</owner>
  <summary>
    The number of user-installed apps loaded by each user at profile open.
  </summary>
</histogram>

<histogram name="Extensions.LoadBrowserAction">
  <owner>rdevlin.cronin@chromium.org</owner>
  <summary>
    The number of browser action extensions loaded at profile open.
  </summary>
</histogram>

<histogram name="Extensions.LoadContentPack">
  <owner>asargent@chromium.org</owner>
  <obsolete>
    Deprecated as of 4/2015. Replaced by ManagedUsers.Whitelist.Count.
  </obsolete>
  <summary>
    The number of content-pack extensions loaded at profile open.
  </summary>
</histogram>

<histogram name="Extensions.LoadCreationFlags" enum="ExtensionCreationFlags">
  <owner>calamity@chromium.org</owner>
  <summary>
    The creation flags of all extensions loaded at profile open grouped by
    Extension::InitFromValueFlags.
  </summary>
</histogram>

<histogram name="Extensions.LoadExtension">
  <owner>rdevlin.cronin@chromium.org</owner>
  <summary>The number of extensions loaded at profile open.</summary>
</histogram>

<histogram name="Extensions.LoadExtensionExternal">
  <owner>rdevlin.cronin@chromium.org</owner>
  <summary>
    The number of externally managed extensions loaded at profile open.
  </summary>
</histogram>

<histogram name="Extensions.LoadExtensionUser">
  <owner>rdevlin.cronin@chromium.org</owner>
  <summary>
    The number of user-installed extensions loaded at profile open.
  </summary>
</histogram>

<histogram name="Extensions.LoadExternal">
  <owner>rdevlin.cronin@chromium.org</owner>
  <summary>
    The number of externally managed extensions and apps loaded at profile open.
  </summary>
</histogram>

<histogram name="Extensions.LoadHostedApp">
  <owner>rdevlin.cronin@chromium.org</owner>
  <summary>
    The number of hosted apps loaded by each user at profile open.
  </summary>
</histogram>

<histogram name="Extensions.LoadNoExtensionAction">
  <owner>rdevlin.cronin@chromium.org</owner>
  <summary>
    The number of extensions that had neither a page nor browser action
    specified in their manifest. Recorded at profile open.
  </summary>
</histogram>

<histogram name="Extensions.LoadPackagedApp">
  <owner>rdevlin.cronin@chromium.org</owner>
  <summary>
    The number of legacy packaged apps loaded by each user at profile open.
  </summary>
</histogram>

<histogram name="Extensions.LoadPlatformApp">
  <owner>rdevlin.cronin@chromium.org</owner>
  <summary>The number of platform apps loaded at profile open.</summary>
</histogram>

<histogram name="Extensions.LoadTheme">
  <owner>rdevlin.cronin@chromium.org</owner>
  <summary>The number of themes loaded at profile open.</summary>
</histogram>

<histogram name="Extensions.LoadType" enum="ExtensionType">
  <owner>rdevlin.cronin@chromium.org</owner>
  <summary>
    The number of extensions loaded at profile open grouped by
    Extension::HistogramType.
  </summary>
</histogram>

<histogram name="Extensions.LoadUserScript">
  <owner>rdevlin.cronin@chromium.org</owner>
  <summary>
    The number of converted user scripts loaded at profile open.
  </summary>
</histogram>

<histogram name="Extensions.ManifestFetchFailureRetryCountGoogleUrl">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Number of times chrome retried to download an extension update manifest with
    a url on a google.com domain, before eventually giving up.
  </summary>
</histogram>

<histogram name="Extensions.ManifestFetchFailureRetryCountOtherUrl">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Number of times chrome retried to download an extension update manifest with
    a url on a non google.com domain, before eventually giving up.
  </summary>
</histogram>

<histogram name="Extensions.ManifestFetchSuccessRetryCountGoogleUrl">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Number of times chrome retried to download an extension update manifest with
    a url on a google.com domain, before eventually succeeding.
  </summary>
</histogram>

<histogram name="Extensions.ManifestFetchSuccessRetryCountOtherUrl">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Number of times chrome retried to download an extension update manifest with
    a url on a non google.com domain, before eventually succeeding.
  </summary>
</histogram>

<histogram name="Extensions.ManifestReloadNeedsRelocalization">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Number of extension loads on startup where it is necessary to reload the
    mainfest because the locale has changed.
  </summary>
</histogram>

<histogram name="Extensions.ManifestReloadNotNeeded">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Number of extension loads on startup where it is not necessary to reload the
    extension's manifest.
  </summary>
</histogram>

<histogram name="Extensions.ManifestReloadUnpackedDir">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Number of extension loads on startup where it is necessary to reload the
    manifest because the extension is unpacked.
  </summary>
</histogram>

<histogram name="Extensions.ManifestVersion">
  <owner>rdevlin.cronin@chromium.org</owner>
  <summary>The manifest version of each loaded extension.</summary>
</histogram>

<histogram name="Extensions.NetworkDelay" units="ms">
  <owner>battre@chromium.org</owner>
  <summary>Time that network requests were blocked due to extensions.</summary>
</histogram>

<histogram name="Extensions.NetworkDelayPercentage" units="%">
  <owner>battre@chromium.org</owner>
  <summary>
    Percentage of total lifetime a network request was blocked due to an
    extension.
  </summary>
</histogram>

<histogram name="Extensions.NetworkDelayRegistryLoad" units="ms">
  <owner>battre@chromium.org</owner>
  <summary>
    Time that network requests were blocked due to relevant rule registries
    loading.
  </summary>
</histogram>

<histogram name="Extensions.NonWebstoreLocation" enum="ExtensionLocation">
  <owner>rdevlin.cronin@chromium.org</owner>
  <summary>
    The number of apps/extensions with a non-webstore update_url loaded at
    startup time grouped by Extension::Location.
  </summary>
</histogram>

<histogram name="Extensions.NonWebStoreNewTabPageOverrides">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Number of non-WebStore extensions on startup that override the new tab page.
  </summary>
</histogram>

<histogram name="Extensions.Permissions_AutoDisable" enum="ExtensionPermission">
  <obsolete>
    Deprecated as of 5/2014, replaced by Extensions.Permissions_AutoDisable2.
  </obsolete>
  <owner>rdevlin.cronin@chromium.org</owner>
  <owner>rpaquay@chromium.org</owner>
  <summary>
    The permissions present in an extension when it is automatically disabled
    due to a permission increase (e.g., after an extension upgrade).
  </summary>
</histogram>

<histogram name="Extensions.Permissions_AutoDisable2"
    enum="ExtensionPermission2">
  <obsolete>
    Deprecated as of 6/2015, replaced by Extensions.Permissions_AutoDisable3.
  </obsolete>
  <owner>rdevlin.cronin@chromium.org</owner>
  <owner>rpaquay@chromium.org</owner>
  <summary>
    The permissions present in an extension when it is automatically disabled
    due to a permission increase (e.g., after an extension upgrade).
  </summary>
</histogram>

<histogram name="Extensions.Permissions_AutoDisable3"
    enum="ExtensionPermission3">
  <owner>rdevlin.cronin@chromium.org</owner>
  <owner>rpaquay@chromium.org</owner>
  <summary>
    The permissions present in an extension when it is automatically disabled
    due to a permission increase (e.g., after an extension upgrade). To find
    places where this histogram may be emitted, look for calls to
    ExtensionService::RecordPermissionMessagesHistogram with the argument
    AutoDisable. For Sync users, this may be reported for each device, depending
    on whether the Sync update or the extension auto-update happen first.
  </summary>
</histogram>

<histogram name="Extensions.Permissions_Install" enum="ExtensionPermission">
  <obsolete>
    Deprecated as of 5/2014, replaced by Extensions.Permissions_Install2.
  </obsolete>
  <owner>rdevlin.cronin@chromium.org</owner>
  <owner>rpaquay@chromium.org</owner>
  <summary>
    The permissions present in an extension when it was installed.
  </summary>
</histogram>

<histogram name="Extensions.Permissions_Install2" enum="ExtensionPermission2">
  <obsolete>
    Deprecated as of 6/2015, replaced by Extensions.Permissions_Install3.
  </obsolete>
  <owner>rdevlin.cronin@chromium.org</owner>
  <owner>rpaquay@chromium.org</owner>
  <summary>
    The permissions present in an extension when it was installed.
  </summary>
</histogram>

<histogram name="Extensions.Permissions_Install3" enum="ExtensionPermission3">
  <owner>rdevlin.cronin@chromium.org</owner>
  <owner>rpaquay@chromium.org</owner>
  <summary>
    The permissions present in an extension when it was installed. To find
    places where this histogram may be emitted, look for calls to
    ExtensionService::RecordPermissionMessagesHistogram with the argument
    Install. For Sync users, this is reported for each device.
  </summary>
</histogram>

<histogram name="Extensions.Permissions_InstallAbort"
    enum="ExtensionPermission">
  <obsolete>
    Deprecated as of 5/2014, replaced by Extensions.Permissions_InstallAbort2.
  </obsolete>
  <owner>rdevlin.cronin@chromium.org</owner>
  <owner>rpaquay@chromium.org</owner>
  <summary>
    The permissions present in an extension when installation was aborted, not
    including installation errors and user cancels.
  </summary>
</histogram>

<histogram name="Extensions.Permissions_InstallAbort2"
    enum="ExtensionPermission2">
  <obsolete>
    Deprecated as of 6/2015, replaced by Extensions.Permissions_InstallAbort3.
  </obsolete>
  <owner>rdevlin.cronin@chromium.org</owner>
  <owner>rpaquay@chromium.org</owner>
  <summary>
    The permissions present in an extension when installation was aborted, not
    including installation errors and user cancels.
  </summary>
</histogram>

<histogram name="Extensions.Permissions_InstallAbort3"
    enum="ExtensionPermission3">
  <owner>rdevlin.cronin@chromium.org</owner>
  <owner>rpaquay@chromium.org</owner>
  <summary>
    The permissions present in an extension when installation was aborted (e.g.
    because the parent window of the confirmation dialog went away), not
    including installation errors and user cancels. To find places where this
    histogram may be emitted, look for calls to
    ExtensionService::RecordPermissionMessagesHistogram with the argument
    InstallAbort.
  </summary>
</histogram>

<histogram name="Extensions.Permissions_InstallCancel"
    enum="ExtensionPermission">
  <obsolete>
    Deprecated as of 5/2014, replaced by Extensions.Permissions_InstallCancel2.
  </obsolete>
  <owner>rdevlin.cronin@chromium.org</owner>
  <owner>rpaquay@chromium.org</owner>
  <summary>
    The permissions present in an extension when installation was canceled.
  </summary>
</histogram>

<histogram name="Extensions.Permissions_InstallCancel2"
    enum="ExtensionPermission2">
  <obsolete>
    Deprecated as of 6/2015, replaced by Extensions.Permissions_InstallCancel3.
  </obsolete>
  <owner>rdevlin.cronin@chromium.org</owner>
  <owner>rpaquay@chromium.org</owner>
  <summary>
    The permissions present in an extension when installation was canceled.
  </summary>
</histogram>

<histogram name="Extensions.Permissions_InstallCancel3"
    enum="ExtensionPermission3">
  <owner>rdevlin.cronin@chromium.org</owner>
  <owner>rpaquay@chromium.org</owner>
  <summary>
    The permissions present in an extension when installation was canceled. To
    find places where this histogram may be emitted, look for calls to
    ExtensionService::RecordPermissionMessagesHistogram with the argument
    InstallCancel.
  </summary>
</histogram>

<histogram name="Extensions.Permissions_Load" enum="ExtensionPermission">
  <obsolete>
    Deprecated as of 5/2014, replaced by Extensions.Permissions_Load2.
  </obsolete>
  <owner>rdevlin.cronin@chromium.org</owner>
  <owner>rpaquay@chromium.org</owner>
  <summary>The permissions present in an extension when it was loaded.</summary>
</histogram>

<histogram name="Extensions.Permissions_Load2" enum="ExtensionPermission2">
  <obsolete>
    Deprecated as of 6/2015, replaced by Extensions.Permissions_Load3.
  </obsolete>
  <owner>rdevlin.cronin@chromium.org</owner>
  <owner>rpaquay@chromium.org</owner>
  <summary>The permissions present in an extension when it was loaded.</summary>
</histogram>

<histogram name="Extensions.Permissions_Load3" enum="ExtensionPermission3">
  <owner>rdevlin.cronin@chromium.org</owner>
  <owner>rpaquay@chromium.org</owner>
  <summary>
    The permissions present in an extension when it was loaded (which happens at
    profile open or extension install). To find places where this histogram may
    be emitted, look for calls to
    ExtensionService::RecordPermissionMessagesHistogram with the argument Load.
  </summary>
</histogram>

<histogram name="Extensions.Permissions_ReEnable" enum="ExtensionPermission">
  <obsolete>
    Deprecated as of 5/2014, replaced by Extensions.Permissions_ReEnable2.
  </obsolete>
  <owner>rdevlin.cronin@chromium.org</owner>
  <owner>rpaquay@chromium.org</owner>
  <summary>
    The permissions present in an extension when it was re-enabled from a
    confirmation prompt.
  </summary>
</histogram>

<histogram name="Extensions.Permissions_ReEnable2" enum="ExtensionPermission2">
  <obsolete>
    Deprecated as of 6/2015, replaced by Extensions.Permissions_ReEnable3.
  </obsolete>
  <owner>rdevlin.cronin@chromium.org</owner>
  <owner>rpaquay@chromium.org</owner>
  <summary>
    The permissions present in an extension when it was re-enabled from a
    confirmation prompt.
  </summary>
</histogram>

<histogram name="Extensions.Permissions_ReEnable3" enum="ExtensionPermission3">
  <owner>rdevlin.cronin@chromium.org</owner>
  <owner>rpaquay@chromium.org</owner>
  <summary>
    The permissions present in an extension when it was re-enabled from a
    confirmation prompt. To find places where this histogram may be emitted,
    look for calls to ExtensionService::RecordPermissionMessagesHistogram with
    the argument ReEnable.
  </summary>
</histogram>

<histogram name="Extensions.Permissions_ReEnableAbort"
    enum="ExtensionPermission">
  <obsolete>
    Deprecated as of 5/2014, replaced by Extensions.Permissions_ReEnableAbort2.
  </obsolete>
  <owner>rdevlin.cronin@chromium.org</owner>
  <owner>rpaquay@chromium.org</owner>
  <summary>
    The permissions present in an extension when the re-enable prompt was
    aborted, not including installation errors and manual user cancels.
  </summary>
</histogram>

<histogram name="Extensions.Permissions_ReEnableAbort2"
    enum="ExtensionPermission2">
  <obsolete>
    Deprecated as of 6/2015, replaced by Extensions.Permissions_ReEnableAbort3.
  </obsolete>
  <owner>rdevlin.cronin@chromium.org</owner>
  <owner>rpaquay@chromium.org</owner>
  <summary>
    The permissions present in an extension when the re-enable prompt was
    aborted, not including installation errors and manual user cancels.
  </summary>
</histogram>

<histogram name="Extensions.Permissions_ReEnableAbort3"
    enum="ExtensionPermission3">
  <owner>rdevlin.cronin@chromium.org</owner>
  <owner>rpaquay@chromium.org</owner>
  <summary>
    The permissions present in an extension when the re-enable prompt was
    aborted (e.g. because the parent window of the confirmation dialog went
    away), not including installation errors and manual user cancels. To find
    places where this histogram may be emitted, look for calls to
    ExtensionService::RecordPermissionMessagesHistogram with the argument
    ReEnableAbort.
  </summary>
</histogram>

<histogram name="Extensions.Permissions_ReEnableCancel"
    enum="ExtensionPermission">
  <obsolete>
    Deprecated as of 5/2014, replaced by Extensions.Permissions_ReEnableCancel2.
  </obsolete>
  <owner>rdevlin.cronin@chromium.org</owner>
  <owner>rpaquay@chromium.org</owner>
  <summary>
    The permissions present in an extension when the re-enable was canceled from
    the confirmation prompt.
  </summary>
</histogram>

<histogram name="Extensions.Permissions_ReEnableCancel2"
    enum="ExtensionPermission2">
  <obsolete>
    Deprecated as of 6/2015, replaced by Extensions.Permissions_ReEnableCancel3.
  </obsolete>
  <owner>rdevlin.cronin@chromium.org</owner>
  <owner>rpaquay@chromium.org</owner>
  <summary>
    The permissions present in an extension when the re-enable was canceled from
    the confirmation prompt.
  </summary>
</histogram>

<histogram name="Extensions.Permissions_ReEnableCancel3"
    enum="ExtensionPermission3">
  <owner>rdevlin.cronin@chromium.org</owner>
  <owner>rpaquay@chromium.org</owner>
  <summary>
    The permissions present in an extension when the re-enable was canceled from
    the confirmation prompt. To find places where this histogram may be emitted,
    look for calls to ExtensionService::RecordPermissionMessagesHistogram with
    the argument ReEnableCancel.
  </summary>
</histogram>

<histogram name="Extensions.Permissions_Uninstall" enum="ExtensionPermission">
  <obsolete>
    Deprecated as of 5/2014, replaced by Extensions.Permissions_Uninstall2.
  </obsolete>
  <owner>rdevlin.cronin@chromium.org</owner>
  <owner>rpaquay@chromium.org</owner>
  <summary>
    The permissions present in an extension when it was uninstalled.
  </summary>
</histogram>

<histogram name="Extensions.Permissions_Uninstall2" enum="ExtensionPermission2">
  <obsolete>
    Deprecated as of 6/2015, replaced by Extensions.Permissions_Uninstall3.
  </obsolete>
  <owner>rdevlin.cronin@chromium.org</owner>
  <owner>rpaquay@chromium.org</owner>
  <summary>
    The permissions present in an extension when it was uninstalled.
  </summary>
</histogram>

<histogram name="Extensions.Permissions_Uninstall3" enum="ExtensionPermission3">
  <owner>rdevlin.cronin@chromium.org</owner>
  <owner>rpaquay@chromium.org</owner>
  <summary>
    The permissions present in an extension when it was uninstalled. To find
    places where this histogram may be emitted, look for calls to
    ExtensionService::RecordPermissionMessagesHistogram with the argument
    Uninstall. For Sync users, this is reported for each device.
  </summary>
</histogram>

<histogram name="Extensions.Permissions_WebStoreInstall"
    enum="ExtensionPermission">
  <obsolete>
    Deprecated as of 5/2014, replaced by
    Extensions.Permissions_WebStoreInstall2.
  </obsolete>
  <owner>rdevlin.cronin@chromium.org</owner>
  <owner>rpaquay@chromium.org</owner>
  <summary>
    The permissions present in an extension when it was installed through the
    web store.
  </summary>
</histogram>

<histogram name="Extensions.Permissions_WebStoreInstall2"
    enum="ExtensionPermission2">
  <obsolete>
    Deprecated as of 6/2015, replaced by
    Extensions.Permissions_WebStoreInstall3.
  </obsolete>
  <owner>rdevlin.cronin@chromium.org</owner>
  <owner>rpaquay@chromium.org</owner>
  <summary>
    The permissions present in an extension when it was installed through the
    web store.
  </summary>
</histogram>

<histogram name="Extensions.Permissions_WebStoreInstall3"
    enum="ExtensionPermission3">
  <owner>rdevlin.cronin@chromium.org</owner>
  <owner>rpaquay@chromium.org</owner>
  <summary>
    The permissions present in an extension when it was installed through the
    web store. To find places where this histogram may be emitted, look for
    calls to ExtensionService::RecordPermissionMessagesHistogram with the
    argument WebStoreInstall. Contrary to the more-general Permissions_Install3
    histogram, this one is NOT reported for each device.
  </summary>
</histogram>

<histogram name="Extensions.Permissions_WebStoreInstallAbort"
    enum="ExtensionPermission">
  <obsolete>
    Deprecated as of 5/2014, replaced by
    Extensions.Permissions_WebStoreInstallAbort2.
  </obsolete>
  <owner>rdevlin.cronin@chromium.org</owner>
  <owner>rpaquay@chromium.org</owner>
  <summary>
    The permissions present in an extension when installation from the web store
    was aborted, not including installation errors and user cancels.
  </summary>
</histogram>

<histogram name="Extensions.Permissions_WebStoreInstallAbort2"
    enum="ExtensionPermission2">
  <obsolete>
    Deprecated as of 6/2015, replaced by
    Extensions.Permissions_WebStoreInstallAbort3.
  </obsolete>
  <owner>rdevlin.cronin@chromium.org</owner>
  <owner>rpaquay@chromium.org</owner>
  <summary>
    The permissions present in an extension when installation from the web store
    was aborted, not including installation errors and user cancels.
  </summary>
</histogram>

<histogram name="Extensions.Permissions_WebStoreInstallAbort3"
    enum="ExtensionPermission3">
  <owner>rdevlin.cronin@chromium.org</owner>
  <owner>rpaquay@chromium.org</owner>
  <summary>
    The permissions present in an extension when installation from the web store
    was aborted (e.g. because the parent window of the confirmation dialog went
    away), not including installation errors and user cancels. To find places
    where this histogram may be emitted, look for calls to
    ExtensionService::RecordPermissionMessagesHistogram with the argument
    WebStoreInstallAbort.
  </summary>
</histogram>

<histogram name="Extensions.Permissions_WebStoreInstallCancel"
    enum="ExtensionPermission">
  <obsolete>
    Deprecated as of 5/2014, replaced by
    Extensions.Permissions_WebStoreInstallCancel2.
  </obsolete>
  <owner>rdevlin.cronin@chromium.org</owner>
  <owner>rpaquay@chromium.org</owner>
  <summary>
    The permissions present in an extension when installation from the web store
    was canceled.
  </summary>
</histogram>

<histogram name="Extensions.Permissions_WebStoreInstallCancel2"
    enum="ExtensionPermission2">
  <obsolete>
    Deprecated as of 6/2015, replaced by
    Extensions.Permissions_WebStoreInstallCancel3.
  </obsolete>
  <owner>rdevlin.cronin@chromium.org</owner>
  <owner>rpaquay@chromium.org</owner>
  <summary>
    The permissions present in an extension when installation from the web store
    was canceled.
  </summary>
</histogram>

<histogram name="Extensions.Permissions_WebStoreInstallCancel3"
    enum="ExtensionPermission3">
  <owner>rdevlin.cronin@chromium.org</owner>
  <owner>rpaquay@chromium.org</owner>
  <summary>
    The permissions present in an extension when installation from the web store
    was canceled. To find places where this histogram may be emitted, look for
    calls to ExtensionService::RecordPermissionMessagesHistogram with the
    argument WebStoreInstallCancel.
  </summary>
</histogram>

<histogram name="Extensions.PopupCreateTime" units="ms">
  <owner>rdevlin.cronin@chromium.org</owner>
  <summary>
    The time taken between a user clicking on a button to open a popup, and the
    popup finishing loading its initial URL. This is a good way to measure the
    UI responsiveness of extension popups. It will be strictly larger than
    Extensions.PopupLoadTime2, which only measures the time it takes to load -
    there may be a delay between clicking and starting to load, for example, if
    the popup's host got caught in a queue.
  </summary>
</histogram>

<histogram name="Extensions.PopupLoadTime" units="ms">
  <obsolete>
    Replaced by Extensions.PopupLoadTime2.
  </obsolete>
  <owner>rdevlin.cronin@chromium.org</owner>
  <summary>The time for an Extension's popup to load.</summary>
</histogram>

<histogram name="Extensions.PopupLoadTime2" units="ms">
  <owner>rdevlin.cronin@chromium.org</owner>
  <summary>
    The time taken for an extension popup to load its initial URL. This may not
    include the time taken for an extension process to start, if the extension
    already has a background page running. It does not necessarily correlate
    with the amount of time since the popup was *clicked* either, since there
    may be a delay between the user clicking and the loading started.
    Extensions.PopupCreateTime measures this instead.
  </summary>
</histogram>

<histogram name="Extensions.ProcessManagerStartupHostsTime" units="ms">
  <owner>rdevlin.cronin@chromium.org</owner>
  <summary>
    The time taken to start up persistent background pages for extensions in
    ExtensionProcessManager when the extension system notifies that it is ready.
  </summary>
</histogram>

<histogram name="Extensions.ResourceDirectoryTimestampQueryLatency" units="ms">
  <owner>asargent@chromium.org</owner>
  <summary>
    The initialization latency (in milliseconds) introduced to each extension
    resource request by querying the directory timestamp.
  </summary>
</histogram>

<histogram name="Extensions.ResourceLastModifiedDelta" units="seconds">
  <owner>asargent@chromium.org</owner>
  <summary>
    The difference in seconds between an extension resource's last modification
    time and its extension base directory's creation time. Recorded on each
    extension resource request if the difference is non-negative (i.e., the
    resource's last modification time is more recent than the directory's
    creation time.) For cases where the directory creation date is more recent,
    see Extensions.ResourceLastModifiedNegativeDelta instead.
  </summary>
</histogram>

<histogram name="Extensions.ResourceLastModifiedNegativeDelta" units="seconds">
  <owner>asargent@chromium.org</owner>
  <summary>
    The absolute difference in seconds between an extension resource's last
    modification time and extension base directory's creation time. Recorded on
    each extension resource request if the difference is negative (i.e., the
    directory's creation time is more recent than the resource's last
    modification time.) For cases where the resource modification time is more
    recent, see Extensions.ResourceLastModifiedDelta instead.
  </summary>
</histogram>

<histogram name="Extensions.SandboxUnpackFailure">
  <owner>asargent@chromium.org</owner>
  <summary>
    Count the number of times a sandboxed extension unpack fails.
  </summary>
</histogram>

<histogram name="Extensions.SandboxUnpackFailureReason"
    enum="ExtensionUnpackFailureReason">
  <owner>asargent@chromium.org</owner>
  <summary>What caused a sandboxed extension unpack to fail?</summary>
</histogram>

<histogram name="Extensions.SandboxUnpackFailureTime">
  <owner>asargent@chromium.org</owner>
  <summary>Time taken to unpack an extension, when the unpack fails.</summary>
</histogram>

<histogram name="Extensions.SandboxUnpackHashCheck" enum="BooleanValidHashSum">
  <owner>achuith@chromium.org</owner>
  <summary>
    Whether a CRX file hash sum was the same as in an updater manifest.
  </summary>
</histogram>

<histogram name="Extensions.SandboxUnpackInitialCrxPathLength">
  <owner>asargent@chromium.org</owner>
  <summary>Length of the initial path to the CRX to be unpacked.</summary>
</histogram>

<histogram name="Extensions.SandboxUnpackLinkFreeCrxPathLength">
  <owner>asargent@chromium.org</owner>
  <summary>
    Length of the normalized (link/junction free) path to the temporary copy of
    a CRX made during unpacking.
  </summary>
</histogram>

<histogram name="Extensions.SandboxUnpackRate">
  <owner>asargent@chromium.org</owner>
  <summary>
    Rate at which a CRX file is unpacked in Kilobytes per second.
  </summary>
</histogram>

<histogram name="Extensions.SandboxUnpackRate1To2mB">
  <owner>asargent@chromium.org</owner>
  <summary>
    Rate at which CRX files 1MB to 2MB are unpacked in Kilobytes per second.
  </summary>
</histogram>

<histogram name="Extensions.SandboxUnpackRate2To5mB">
  <owner>asargent@chromium.org</owner>
  <summary>
    Rate at which CRX files 2MB to 5MB are unpacked in Kilobytes per second.
  </summary>
</histogram>

<histogram name="Extensions.SandboxUnpackRate50kBTo1mB">
  <owner>asargent@chromium.org</owner>
  <summary>
    Rate at which CRX files 50kB to 1MB are unpacked in Kilobytes per second.
  </summary>
</histogram>

<histogram name="Extensions.SandboxUnpackRate5To10mB">
  <owner>asargent@chromium.org</owner>
  <summary>
    Rate at which CRX files 5MB to 10 MB are unpacked in Kilobytes per second.
  </summary>
</histogram>

<histogram name="Extensions.SandboxUnpackRateOver10mB">
  <owner>asargent@chromium.org</owner>
  <summary>
    Rate at which CRX files larger than 10MB are unpacked in Kilobytes per
    second.
  </summary>
</histogram>

<histogram name="Extensions.SandboxUnpackRateUnder50kB">
  <owner>asargent@chromium.org</owner>
  <summary>
    Rate at which CRX files under 50 KB are unpacked in Kilobytes per second.
  </summary>
</histogram>

<histogram name="Extensions.SandboxUnpackSuccess">
  <owner>asargent@chromium.org</owner>
  <summary>Count the number of times a sandboxed CRX unpack succeeds.</summary>
</histogram>

<histogram name="Extensions.SandboxUnpackSuccessCantGetCrxSize">
  <owner>asargent@chromium.org</owner>
  <summary>
    Count the number of times a sandboxed CRX unpack succeeds, but we can't get
    the file size.
  </summary>
</histogram>

<histogram name="Extensions.SandboxUnpackSuccessCrxSize">
  <owner>asargent@chromium.org</owner>
  <summary>Size of the .crx file, in KB, when the unpack succeeds.</summary>
</histogram>

<histogram name="Extensions.SandboxUnpackSuccessTime">
  <owner>asargent@chromium.org</owner>
  <summary>
    Time taken to unpack an extension, when the unpack succeeds.
  </summary>
</histogram>

<histogram name="Extensions.SandboxUnpackTempCrxPathLength">
  <owner>asargent@chromium.org</owner>
  <summary>
    Length of the path of the temporary copy of a CRX made during unpacking.
  </summary>
</histogram>

<histogram name="Extensions.SandboxUnpackUnpackedCrxPathLength">
  <owner>asargent@chromium.org</owner>
  <summary>Length of the path under which a CRX is unpacked.</summary>
</histogram>

<histogram name="Extensions.StartupDelay" units="ms">
  <owner>asargent@chromium.org</owner>
  <summary>The time one extension delays network requests at startup.</summary>
</histogram>

<histogram name="Extensions.StartupDelay_Total" units="ms">
  <owner>rdevlin.cronin@chromium.org</owner>
  <summary>
    The total time extensions delay network requests at startup.
  </summary>
</histogram>

<histogram name="Extensions.StorageFrontendInitTime" units="ms">
  <owner>rkaplow@chromium.org</owner>
  <summary>
    The amount of time that elapsed during StorageFrontend::Init.
  </summary>
</histogram>

<histogram name="Extensions.ThrottledNetworkRequestDelay" units="ms">
  <owner>rdevlin.cronin@chromium.org</owner>
  <summary>
    The duration by which a network request was delayed while waiting for
    extension user script load. Recorded once per request that is delayed, at
    the time the resource resumes loading.
  </summary>
</histogram>

<histogram name="Extensions.ThrottledNetworkRequests" units="requests">
  <owner>rdevlin.cronin@chromium.org</owner>
  <summary>
    The total number of network requests that were delayed by extension user
    script load. Recorded once each time network requests may have been delayed
    by user script load (i.e., once at the end of each batch of script loads).
  </summary>
</histogram>

<histogram name="Extensions.ToolstripLoadTime" units="ms">
  <obsolete>
    Deprecated 04/2016 as doesn't have data nor owner.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>Time taken to load a toolstrip.</summary>
</histogram>

<histogram name="Extensions.UninstallDialogAction"
    enum="ExtensionUninstallDialogAction">
  <owner>rdevlin.cronin@chromium.org</owner>
  <summary>
    The action that was taken from an extension uninstall dialog. Recorded once
    per dialog shown. Only recorded if all possible actions (including report
    abuse) were available on the dialog.
  </summary>
</histogram>

<histogram name="Extensions.UninstallSource" enum="ExtensionUninstallSource">
  <owner>rdevlin.cronin@chromium.org</owner>
  <summary>
    The source for the extension uninstall. This is only recorded if an
    uninstall dialog is shown to the user (i.e., it is not recorded for internal
    &quot;cleanups&quot;).
  </summary>
</histogram>

<histogram name="Extensions.UninstallType" enum="ExtensionType">
  <owner>rdevlin.cronin@chromium.org</owner>
  <summary>Uninstalls grouped by Extension::HistogramType.</summary>
</histogram>

<histogram name="Extensions.UnpackFailureInstallCause"
    enum="ExtensionInstallCause">
  <owner>asargent@chromium.org</owner>
  <summary>
    Count failing CRX installs, grouped by the way an extension can be
    installed.
  </summary>
</histogram>

<histogram name="Extensions.UnpackFailureInstallSource"
    enum="ExtensionLocation">
  <owner>asargent@chromium.org</owner>
  <summary>
    Count successful CRX installs, grouped by the location property in prefs.
    installed.
  </summary>
</histogram>

<histogram name="Extensions.UnpackSuccessInstallCause"
    enum="ExtensionInstallCause">
  <owner>asargent@chromium.org</owner>
  <summary>
    Count successful CRX installs, grouped by the cause of the install.
  </summary>
</histogram>

<histogram name="Extensions.UnpackSuccessInstallSource"
    enum="ExtensionLocation">
  <owner>asargent@chromium.org</owner>
  <summary>
    Count successful CRX installs, grouped by the location property in prefs.
  </summary>
</histogram>

<histogram name="Extensions.UpdateCheckApp">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The number of legacy packaged apps and hosted apps that were checked during
    an update check.
  </summary>
</histogram>

<histogram name="Extensions.UpdateCheckExtension">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The number of extensions that were checked during an update check.
  </summary>
</histogram>

<histogram name="Extensions.UpdateCheckGap" units="minutes">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>Time in minutes between update checks.</summary>
</histogram>

<histogram name="Extensions.UpdateCheckGoogleUrl">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The number of crx's with a Google-hosted update URL that were checked during
    an update check.
  </summary>
</histogram>

<histogram name="Extensions.UpdateCheckNoUrl">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The number of crx's with no update URL checked during an update check.
  </summary>
</histogram>

<histogram name="Extensions.UpdateCheckOtherUrl">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The number of crx's with a non-Google update URL that were checked during an
    update check.
  </summary>
</histogram>

<histogram name="Extensions.UpdateCheckPackagedApp">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The number of packaged apps that were checked during an update check.
  </summary>
</histogram>

<histogram name="Extensions.UpdateCheckTheme">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The number of themes that were checked during an update check.
  </summary>
</histogram>

<histogram name="Extensions.UpdateOnLoad">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The number of extensions that were updated at browser startup.
  </summary>
</histogram>

<histogram name="Extensions.UpdaterWriteCrx" enum="ExtensionFileWriteResult">
  <obsolete>
    Deprecated 10/2013.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    What happened when the extension updater tried to write a file?
  </summary>
</histogram>

<histogram name="Extensions.UpdateSource" enum="ExtensionLocation">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>Updates grouped by the location property in prefs.</summary>
</histogram>

<histogram name="Extensions.UpdateType" enum="ExtensionType">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>Updates grouped by Extension::HistogramType.</summary>
</histogram>

<histogram name="Extensions.WebRequestEventFoundFrame" units="boolean">
  <owner>rdevlin.cronin@chromium.org</owner>
  <summary>
    Whether or not the render frame lookup for a given webRequest event
    succeeded.
  </summary>
</histogram>

<histogram name="Extensions.WebstoreDownload.FileDownload" units="ms">
  <owner>xiaohuic@chromium.org</owner>
  <summary>
    The time spent to download the crx file from the webstore to local disk.
    This is recorded once per successful download.
  </summary>
</histogram>

<histogram name="Extensions.WebstoreDownload.InterruptReason"
    enum="InterruptReason">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>The reason a webstore download was interrupted.</summary>
</histogram>

<histogram name="Extensions.WebstoreDownload.InterruptReceivedKBytes"
    units="KB">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The number of KBytes received for a webstore download before it was
    interrupted.
  </summary>
</histogram>

<histogram name="Extensions.WebstoreDownload.InterruptTotalKBytes" units="KB">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The total expected size in KBytes of an interrupted webstore download.
  </summary>
</histogram>

<histogram name="Extensions.WebstoreDownload.InterruptTotalSizeUnknown"
    enum="Boolean">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Tracks whether the total size of an interrupted webstore download was known.
  </summary>
</histogram>

<histogram name="ExtensionService.AddVerified" enum="BooleanSuccess">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Records whether adding a new/updated extension to the install verifier
    succeeded.
  </summary>
</histogram>

<histogram name="ExtensionService.VerifyAllSuccess"
    enum="ExtensionServiceVerifyAllSuccess">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The outcome of a call to ExtensionService::VerifyAllExtensions, whether it
    was called for bootstrapping or another reason (extension
    installed/uninstalled, etc.).
  </summary>
</histogram>

<histogram name="ExtensionSettings.ShouldDoVerificationCheck" enum="Boolean">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    When loading the chrome://extensions page, this records whether we decided
    to do a verification check against the server (because the user had one or
    more extensions disabled due to verification failure).
  </summary>
</histogram>

<histogram name="ExtensionToolbarModel.BrowserActionsCount">
  <owner>finnur@chromium.org</owner>
  <summary>
    The number of icons the Browser Actions Container knows about (visible or in
    the overflow bucket). Does not count icons that have been permanently hidden
    by the user. Measured once per startup per (non-incognito) profile.
  </summary>
</histogram>

<histogram name="ExtensionToolbarModel.BrowserActionsPermanentlyHidden">
  <owner>finnur@chromium.org</owner>
  <summary>
    The number of Browser Action icons the user has elected to permanently hide
    (as opposed to putting them in the overflow bucket). Measured once per
    startup per (non-incognito) profile.
  </summary>
</histogram>

<histogram name="ExtensionToolbarModel.BrowserActionsVisible">
  <owner>finnur@chromium.org</owner>
  <summary>
    The number of visible icons in the Browser Actions Container (visible as in
    number of icons not in the overflow bucket). 0 means all icons are in the
    overflow bucket. MAX_INT means the toolbar is always showing all icons.
    Measured once per startup per (non-incognito) profile but only for those
    profiles that have one or more browser actions showing in the toolbar.
  </summary>
</histogram>

<histogram name="ExtensionUrlRequest.Latency" units="ms">
  <owner>asargent@chromium.org</owner>
  <summary>The time taken to complete an extension url request.</summary>
</histogram>

<histogram name="ExtensionUrlRequest.OnReadCompleteError" enum="NetErrorCodes">
  <owner>asargent@chromium.org</owner>
  <summary>
    The error code for failures of incremental reads of a file stream for a
    chrome-extension:// URL. (See also ExtensionUrlRequest.OnReadCompleteResult
    for the success case).
  </summary>
</histogram>

<histogram name="ExtensionUrlRequest.OnReadCompleteResult">
  <owner>asargent@chromium.org</owner>
  <summary>
    The result of an incremental read of a file stream for a chrome-extension://
    URL, representing a byte count. Logged in success cases (see also
    ExtensionUrlRequest.OnReadCompleteError).
  </summary>
</histogram>

<histogram name="ExtensionUrlRequest.SeekPosition">
  <owner>asargent@chromium.org</owner>
  <summary>
    When fetching a chrome-extension:// URL, this indicates the first byte
    position we read from. This will be greater than 0 in cases such as XHR's
    with a Range header, but will normally be 0 in the typical case of reading
    the entire file. This helps identify how frequently partial file reads are
    taking place.
  </summary>
</histogram>

<histogram name="ExtensionUrlRequest.TotalKbRead" units="KB">
  <owner>asargent@chromium.org</owner>
  <summary>
    The total number of bytes read for a chrome-extension:// URL, logged when
    the job is finished (either successfully or not).
  </summary>
</histogram>

<histogram name="FaultTolerantHeap" enum="FaultTolerantHeap">
  <owner>brucedawson@chromium.org</owner>
  <summary>
    Records several bits of information about whether the Windows
    FaultTolerantHeap might be enabled. This is logged (from a delayed task)
    when the browser process starts up.
  </summary>
</histogram>

<histogram name="FileBrowser.CloudImport.UserAction"
    enum="CloudImportUserAction">
  <owner>smckay@google.com</owner>
  <summary>
    Chrome OS File Browser - Specific actions taken by user such initiating
    cloud import, canceling import, selecting a directory, or opting-in to
    Drive&gt;Photos sync.
  </summary>
</histogram>

<histogram name="FileBrowser.Create" enum="FileDialogType">
  <owner>joshwoodward@google.com</owner>
  <summary>Chrome OS File Browser opening mode.</summary>
</histogram>

<histogram name="FileBrowser.DirectoryScan" units="ms">
  <owner>joshwoodward@google.com</owner>
  <summary>
    Chrome OS File Browser: time to scan a directory. Measured on every File
    Browser directory change.
  </summary>
</histogram>

<histogram name="FileBrowser.DownloadDestination.IsGoogleDrive.Changed"
    enum="BooleanEnabled">
  <owner>joshwoodward@google.com</owner>
  <summary>
    Tracks whether download destination is set to a Google Drive folder when the
    download destination is changed by the user in the settings page.
  </summary>
</histogram>

<histogram name="FileBrowser.DownloadDestination.IsGoogleDrive.Started"
    enum="BooleanEnabled">
  <owner>joshwoodward@google.com</owner>
  <summary>
    Tracks whether download destination is set to a Google Drive folder on
    startup.
  </summary>
</histogram>

<histogram name="FileBrowser.DownloadsCount">
  <owner>joshwoodward@google.com</owner>
  <summary>
    Chrome OS File Browser: number of files and directories in the Downloads
    directory (not including the contents of nested directories). Computed every
    time the File Browser current directory changes to Downloads.
  </summary>
</histogram>

<histogram name="FileBrowser.FolderShortcut.Add">
  <owner>joshwoodward@google.com</owner>
  <summary>
    Chrome OS File Browser: this is recorded when the user adds a folder
    shortcut.
  </summary>
</histogram>

<histogram name="FileBrowser.FolderShortcut.Count">
  <owner>joshwoodward@google.com</owner>
  <summary>
    Chrome OS File Browser: number of saved folder shorcuts. This is recorded
    when Files.app is launched.
  </summary>
</histogram>

<histogram name="FileBrowser.FolderShortcut.Navigate">
  <owner>joshwoodward@google.com</owner>
  <summary>
    Chrome OS File Browser: this is recorded when the user clicks or selects a
    folder shortcut and is navigated to the target folder.
  </summary>
</histogram>

<histogram name="FileBrowser.FolderShortcut.Remove">
  <owner>joshwoodward@google.com</owner>
  <summary>
    Chrome OS File Browser: this is recorded when the user removes a folder
    shortcut.
  </summary>
</histogram>

<histogram name="FileBrowser.HardUnpluggedAroundSuspend.TimeSinceResume"
    units="ms">
  <obsolete>
    The bug which the UMA was investigating got fixed.
  </obsolete>
  <owner>hirono@chromium.org</owner>
  <summary>
    Chrome OS File Browser: time from the SuspendDone event to the DiskRemoved
    event. The UMA is added temporarily for crbug.com/433734.
  </summary>
</histogram>

<histogram name="FileBrowser.HardUnpluggedAroundSuspend.TimeUntilSuspend"
    units="ms">
  <obsolete>
    The bug which the UMA was investigating got fixed.
  </obsolete>
  <owner>hirono@chromium.org</owner>
  <summary>
    Chrome OS File Browser: time from the DiskRemoved event to the Suspend
    event. The UMA is added temporarily for crbug.com/433734.
  </summary>
</histogram>

<histogram name="FileBrowser.Load" units="ms">
  <owner>joshwoodward@google.com</owner>
  <summary>
    Chrome OS File Browser is an built-in extension without a background page.
    Its main.html file is loaded every time the user opens a File Browser tab or
    a file chooser dialog. The file is fairly large and the initialization is
    pretty expensive.
  </summary>
</histogram>

<histogram name="FileBrowser.OpeningFileType" enum="FileType">
  <obsolete>
    Deprecated 4/2013, and replaced by FileBrowser.ViewingFileType.
  </obsolete>
  <owner>joshwoodward@google.com</owner>
  <summary>File types that were tried to be opened through browser.</summary>
</histogram>

<histogram name="FileBrowser.PhotoEditor.DisplayTime" units="ms">
  <owner>joshwoodward@google.com</owner>
  <summary>
    Chrome OS Photo Editor: time to display an image. Measured from the moment
    the user selected the image till the moment it is displayed (not counting
    the low resolution preview).
  </summary>
</histogram>

<histogram name="FileBrowser.PhotoEditor.FileType" enum="PhotoEditorFileType">
  <owner>joshwoodward@google.com</owner>
  <summary>Chrome OS Photo Editor: the type of the file opened.</summary>
</histogram>

<histogram name="FileBrowser.PhotoEditor.LoadMode" enum="PhotoEditorLoadMode">
  <owner>joshwoodward@google.com</owner>
  <summary>Chrome OS Photo Editor: the way the image has been loaded.</summary>
</histogram>

<histogram name="FileBrowser.PhotoEditor.LoadTime" units="ms">
  <owner>joshwoodward@google.com</owner>
  <summary>Chrome OS Photo Editor: time to load an image from a file.</summary>
</histogram>

<histogram name="FileBrowser.PhotoEditor.SaveResult"
    enum="PhotoEditorSaveResult">
  <owner>joshwoodward@google.com</owner>
  <summary>
    Chrome OS Photo Editor: the result of a file save operation.
  </summary>
</histogram>

<histogram name="FileBrowser.PhotoEditor.SaveTime" units="ms">
  <owner>joshwoodward@google.com</owner>
  <summary>Chrome OS Photo Editor: time to save an image to a file.</summary>
</histogram>

<histogram name="FileBrowser.PhotoEditor.Size.MB" units="MBytes">
  <owner>joshwoodward@google.com</owner>
  <summary>
    Chrome OS Photo Editor: size of an image file in megabytes. Measured on
    every image load.
  </summary>
</histogram>

<histogram name="FileBrowser.PhotoEditor.Size.MPix" units="MPixels">
  <owner>joshwoodward@google.com</owner>
  <summary>
    Chrome OS Photo Editor: size of an image in megapixels. Measured on every
    image load.
  </summary>
</histogram>

<histogram name="FileBrowser.PhotoEditor.Tool" enum="PhotoEditorToolType">
  <owner>joshwoodward@google.com</owner>
  <summary>Chrome OS Photo Editor: the button which the user clicked.</summary>
</histogram>

<histogram name="FileBrowser.PhotoImport.Action" enum="ExternalDeviceAction">
  <owner>joshwoodward@google.com</owner>
  <summary>
    Chrome OS Photo Import flow: action chosen in the Action Choice dialog for
    the external device.
  </summary>
</histogram>

<histogram name="FileBrowser.PhotoImport.ImportCount">
  <owner>joshwoodward@google.com</owner>
  <summary>
    Chrome OS Photo Import flow: the number of photos imported. Measured on
    every successfull import operation.
  </summary>
</histogram>

<histogram name="FileBrowser.PhotoImport.ImportPercentage" units="%">
  <owner>joshwoodward@google.com</owner>
  <summary>
    Chrome OS Photo Import flow: the percent of photos imported among all the
    photos on the device. Measured on every successfull import operation.
  </summary>
</histogram>

<histogram name="FileBrowser.PhotoImport.Load" units="ms">
  <owner>joshwoodward@google.com</owner>
  <summary>
    Chrome OS Photo Import flow: time to load the action dialog. Measured
    between the moment window appears and the moment user see all available
    actions for the device.
  </summary>
</histogram>

<histogram name="FileBrowser.PhotoImport.Scan" units="ms">
  <owner>joshwoodward@google.com</owner>
  <summary>
    Chrome OS Photo Import flow: time to scan the external device.
  </summary>
</histogram>

<histogram name="FileBrowser.SuggestApps.Close"
    enum="SuggestAppsDialogCloseReason">
  <owner>joshwoodward@google.com</owner>
  <summary>
    Chrome OS File Browser: the reason why the suggest apps dialog was closed.
  </summary>
</histogram>

<histogram name="FileBrowser.SuggestApps.Install"
    enum="SuggestAppsDialogInstall">
  <owner>joshwoodward@google.com</owner>
  <summary>
    Chrome OS File Browser: whether the Webstore item user selected was
    successfully installed or not.
  </summary>
</histogram>

<histogram name="FileBrowser.SuggestApps.Load" enum="SuggestAppsDialogLoad">
  <owner>joshwoodward@google.com</owner>
  <summary>
    Chrome OS File Browser: whether the initialization of the dialog succeeded
    or not.
  </summary>
</histogram>

<histogram name="FileBrowser.SuggestApps.LoadTime" units="ms">
  <owner>joshwoodward@google.com</owner>
  <summary>
    Chrome OS File Browser: time to load the suggest apps dialog. Measured
    between the moment window appears and the moment all the contents in the
    dialog including the Chrome Webstore widget are ready.
  </summary>
</histogram>

<histogram name="FileBrowser.ViewingFileType" enum="ViewFileType">
  <owner>joshwoodward@google.com</owner>
  <summary>
    File types that were tried to be viewed through browser. This is recorded
    when the user tries to view a file from Files.app.
  </summary>
</histogram>

<histogram name="FileBrowser.VolumeType" enum="FileManagerVolumeType">
  <owner>kinaba@chromium.org</owner>
  <summary>
    Chrome OS File Browser: counts the number of times volumes are mounted for
    each volume type.
  </summary>
</histogram>

<histogram name="FileSystem.DirectoryDatabaseInit"
    enum="FileSystemDatabaseInitResult">
  <owner>tzik@chromium.org</owner>
  <summary>The result of FileSystemDirectoryDatabase initialization.</summary>
</histogram>

<histogram name="FileSystem.DirectoryDatabaseRepair"
    enum="DirectoryDatabaseRepairResult">
  <owner>tzik@chromium.org</owner>
  <summary>The result of FileSystemDirectoryDatabase repair.</summary>
</histogram>

<histogram name="FileSystem.OpenFileSystem" enum="OpenFileSystemResult">
  <owner>tzik@chromium.org</owner>
  <summary>
    The success or the cause of failure for each call to OpenFileSystem().
  </summary>
</histogram>

<histogram name="FileSystem.OpenFileSystemDetail" enum="FileSystemErrors">
  <owner>tzik@chromium.org</owner>
  <summary>The result of opening a filesystem.</summary>
</histogram>

<histogram name="FileSystem.OpenFileSystemDetailNonthrottled"
    enum="FileSystemErrors">
  <owner>tzik@chromium.org</owner>
  <summary>The result of opening a non-throttled filesystem.</summary>
</histogram>

<histogram name="FileSystem.OriginDatabaseInit"
    enum="FileSystemDatabaseInitResult">
  <owner>tzik@chromium.org</owner>
  <summary>The result of FileSystemOriginDatabase initialization.</summary>
</histogram>

<histogram name="FileSystem.PersistentOriginsCount">
  <owner>tzik@chromium.org</owner>
  <summary>
    Number of origins that have persistent filesystem. Measured when the Quota
    system queries the filesystem subsystem about its entire usage, which
    usually happens when one of the storage subsystem methods is called for the
    first time.
  </summary>
</histogram>

<histogram name="FileSystem.TemporaryOriginsCount">
  <owner>tzik@chromium.org</owner>
  <summary>
    Number of origins that have temporary filesystem. Measured when the Quota
    system queries the filesystem subsystem about its entire usage, which
    usually happens when one of the storage subsystem methods is called for the
    first time.
  </summary>
</histogram>

<histogram name="GCM.AndroidGcmReceiverError" enum="GcmReceiverStatus">
  <owner>khushalsagar@chromium.org</owner>
  <obsolete>
    Deprecated as of 01/2016. The error has been fixed by GCM. (crbug/580367)
  </obsolete>
  <summary>Result of a message received by the GcmReceiver on Android.</summary>
</histogram>

<histogram name="GCM.APICallUnregister">
  <owner>jianli@chromium.org</owner>
  <summary>Number of times when gcm.unregister API is called.</summary>
</histogram>

<histogram name="GCM.CheckinCompleteTime" units="ms">
  <owner>jianli@chromium.org</owner>
  <summary>
    Length of time taken to complete a GCM checkin request successfully. If the
    checkin is retried multiple times, the length of time is counted for the
    last successful retry.
  </summary>
</histogram>

<histogram name="GCM.CheckinRequestStatus" enum="GCMCheckinRequestStatus">
  <owner>juyik@chromium.org</owner>
  <summary>Status code of the outcome of a GCM checkin request.</summary>
</histogram>

<histogram name="GCM.CheckinRetryCount">
  <owner>jianli@chromium.org</owner>
  <summary>Number of retries before a GCM checkin succeeds.</summary>
</histogram>

<histogram name="GCM.ConnectedViaProxy" enum="Boolean">
  <owner>zea@chromium.org</owner>
  <summary>Whether the GCM connection was made via a proxy or not.</summary>
</histogram>

<histogram name="GCM.ConnectionDisconnectErrorCode"
    enum="CombinedHttpResponseAndNetErrorCode">
  <owner>zea@chromium.org</owner>
  <summary>URL response and error codes from GCM disconnect events.</summary>
</histogram>

<histogram name="GCM.ConnectionEndpoint" enum="GCMEndpoints">
  <owner>zea@chromium.org</owner>
  <summary>Number of connections made to each specific MCS endpoint.</summary>
</histogram>

<histogram name="GCM.ConnectionFailureErrorCode"
    enum="CombinedHttpResponseAndNetErrorCode">
  <owner>zea@chromium.org</owner>
  <summary>URL response and error codes from GCM connection attempts.</summary>
</histogram>

<histogram name="GCM.ConnectionLatency" units="ms">
  <owner>juyik@chromium.org</owner>
  <summary>
    The time between the initiation of a connection and the successful
    completion of it.
  </summary>
</histogram>

<histogram name="GCM.ConnectionResetReason" enum="GCMConnectionResetReason">
  <owner>zea@chromium.org</owner>
  <summary>Reasons for GCM connection resets.</summary>
</histogram>

<histogram name="GCM.ConnectionSuccessRate" enum="BooleanSuccess">
  <owner>zea@chromium.org</owner>
  <summary>
    GCM connection success rate. Does not take into account login success. See
    GCM.ConnectionFailureErrorCode for a breakdown of connection failure
    reasons.
  </summary>
</histogram>

<histogram name="GCM.ConnectionUpTime" units="ms">
  <owner>zea@chromium.org</owner>
  <summary>
    Time (from login until reset) that a GCM connection was active.
  </summary>
</histogram>

<histogram name="GCM.Crypto.CreateKeySuccessRate" enum="BooleanSuccess">
  <owner>peter@chromium.org</owner>
  <summary>
    Success rate of writing new keying material to the GCM key store.
  </summary>
</histogram>

<histogram name="GCM.Crypto.DecryptMessageResult" enum="GCMDecryptionResult">
  <owner>peter@chromium.org</owner>
  <summary>
    Result of decryption on a received GCM message, which includes unencrypted
    messages, successfully decrypted messages and decryption failures.
  </summary>
</histogram>

<histogram name="GCM.Crypto.GetKeySuccessRate" enum="BooleanSuccess">
  <owner>peter@chromium.org</owner>
  <summary>
    Success rate of reading keying material from the GCM key store.
  </summary>
</histogram>

<histogram name="GCM.Crypto.InitKeyStoreSuccessRate" enum="BooleanSuccess">
  <owner>peter@chromium.org</owner>
  <summary>
    Success rate of initializing the LevelDB back-end of the GCM key store.
  </summary>
</histogram>

<histogram name="GCM.Crypto.LoadKeyStoreSuccessRate" enum="BooleanSuccess">
  <owner>peter@chromium.org</owner>
  <summary>
    Success rate of loading existing keying material in the GCM key store.
  </summary>
</histogram>

<histogram name="GCM.Crypto.RemoveKeySuccessRate" enum="BooleanSuccess">
  <owner>peter@chromium.org</owner>
  <summary>
    Success rate of removing keying material from the GCM key store.
  </summary>
</histogram>

<histogram name="GCM.Database.Open" enum="LevelDBStatus">
  <owner>cmumford@chromium.org</owner>
  <summary>The result of a database open attempt by the GCM store.</summary>
</histogram>

<histogram name="GCM.DataMessageBurstReceivedInterval" units="ms">
  <owner>juyik@chromium.org</owner>
  <summary>
    Interval between two successive received data message bursts.
  </summary>
</histogram>

<histogram name="GCM.FirstReceivedDataMessageLatencyAfterConnection" units="ms">
  <owner>juyik@chromium.org</owner>
  <summary>
    The time between the successful completion of the connection and the arrival
    of the first data message.
  </summary>
</histogram>

<histogram name="GCM.HeartbeatMissedDelta" units="ms">
  <owner>zea@chromium.org</owner>
  <summary>
    If a heartbeat was missed, the time delta by which it was missed (in system
    time, not ticks).
  </summary>
</histogram>

<histogram name="GCM.LoadStatus" enum="GCMLoadStatus">
  <owner>jianli@chromium.org</owner>
  <summary>Status code of loading from the persistent GCM store.</summary>
</histogram>

<histogram name="GCM.LoadSucceeded" enum="BooleanSuccess">
  <obsolete>
    Deprecated as of 2/2015.
  </obsolete>
  <owner>zea@chromium.org</owner>
  <summary>
    Success indicates successfully loading an initialized persistent GCM store
    at startup time. Failure indicates a failure loading the store.
  </summary>
</histogram>

<histogram name="GCM.NumThrottledApps">
  <owner>zea@chromium.org</owner>
  <summary>
    Number of applications hitting GCM per-app outstanding message limits at
    startup time.
  </summary>
</histogram>

<histogram name="GCM.NumUsers">
  <obsolete>
    Deprecated as of 3/2014.
  </obsolete>
  <owner>zea@chromium.org</owner>
  <summary>
    Number of GCM users associated with this client at startup time.
  </summary>
</histogram>

<histogram name="GCM.OutgoingMessageTTL" enum="GCMOutgoingMessageTTLCategory">
  <owner>jianli@chromium.org</owner>
  <summary>
    Category of TTL specified in the outgoing message: 0, less than or equal to
    1 minute, less than or equal to 1 hour and etc.
  </summary>
</histogram>

<histogram name="GCM.ReceivedDataMessageBurstSize" units="messages">
  <owner>juyik@chromium.org</owner>
  <summary>Number of messages in a received GCM data message burst.</summary>
</histogram>

<histogram name="GCM.ReceivedDataMessageIntervalWithinBurst" units="ms">
  <owner>juyik@chromium.org</owner>
  <summary>
    Interval between messages within a received GCM data message burst.
  </summary>
</histogram>

<histogram name="GCM.RegistrationCompleteTime" units="ms">
  <owner>jianli@chromium.org</owner>
  <summary>
    Length of time taken to complete a GCM registration request successfully. If
    the registration is retried multiple times, the length of time is counted
    for the last successful retry.
  </summary>
</histogram>

<histogram name="GCM.RegistrationRequestStatus"
    enum="GCMRegistrationRequestStatus">
  <owner>juyik@chromium.org</owner>
  <summary>Status code of the outcome of a GCM registration request.</summary>
</histogram>

<histogram name="GCM.RegistrationRetryCount">
  <owner>jianli@chromium.org</owner>
  <summary>Number of retries before a GCM registration succeeds.</summary>
</histogram>

<histogram name="GCM.RegistrationSenderIdCount">
  <owner>jianli@chromium.org</owner>
  <summary>Number of sender IDs specified in a registration request.</summary>
</histogram>

<histogram name="GCM.ResetStore" enum="GCMResetStoreError">
  <owner>jianli@chromium.org</owner>
  <summary>
    Reports the problem encountered when resetting the GCM store.
  </summary>
</histogram>

<histogram name="GCM.RestoredIncomingMessages">
  <owner>zea@chromium.org</owner>
  <summary>
    Number of unacknowledged incoming messages restored from the persistent
    store at startup.
  </summary>
</histogram>

<histogram name="GCM.RestoredOutgoingMessages">
  <owner>zea@chromium.org</owner>
  <summary>
    Number of pending outgoing messages restored from the persistent store at
    startup.
  </summary>
</histogram>

<histogram name="GCM.RestoredRegistrations">
  <owner>jianli@chromium.org</owner>
  <summary>
    Number of registrations restored from the persistent store at startup.
  </summary>
</histogram>

<histogram name="GCM.StoreDestroySucceeded" enum="BooleanSuccess">
  <owner>zea@chromium.org</owner>
  <summary>
    Success indicates successfully destroying the GCM persistent store. Failure
    indicates a failure destroying the persistence store. GCM store will be
    destroyed when the profile has been signed out.
  </summary>
</histogram>

<histogram name="GCM.StoreSizeKB" units="KB">
  <owner>zea@chromium.org</owner>
  <summary>Size of the GCM persistent store in kilobytes at startup.</summary>
</histogram>

<histogram name="GCM.StoreUpdateSucceeded" enum="BooleanSuccess">
  <owner>zea@chromium.org</owner>
  <summary>
    Success indicates successfully updating the GCM persistent store on message
    update. Failure indicates a failure updating the persistence store.
  </summary>
</histogram>

<histogram name="GCM.SuspendTime" units="ms">
  <owner>zea@chromium.org</owner>
  <summary>Time elapsed from machine suspend until resume.</summary>
</histogram>

<histogram name="GCM.UnregistrationCompleteTime" units="ms">
  <owner>jianli@chromium.org</owner>
  <summary>
    Length of time taken to complete a GCM unregistration request successfully.
    If the unregistration is retried multiple times, the length of time is
    counted for the last successful retry.
  </summary>
</histogram>

<histogram name="GCM.UnregistrationRequestStatus"
    enum="GCMUnregistrationRequestStatus">
  <owner>juyik@chromium.org</owner>
  <summary>Status code of the outcome of a GCM unregistration request.</summary>
</histogram>

<histogram name="GCM.UnregistrationRetryCount">
  <owner>jianli@chromium.org</owner>
  <summary>Number of retries before a GCM unregistration succeeds.</summary>
</histogram>

<histogram name="GCM.UserSignedIn" enum="Boolean">
  <owner>jianli@chromium.org</owner>
  <summary>
    Indicates whether the user was signed in when GCM started up.
  </summary>
</histogram>

<histogram name="GCMInvalidations.IncomingMessageStatus"
    enum="GCMInvalidationsIncomingMessageStatus">
  <owner>pavely@chromium.org</owner>
  <summary>
    Status of parsing incoming invalidations message from GCM channel.
  </summary>
</histogram>

<histogram name="GCMInvalidations.OutgoingMessageStatus"
    enum="GCMInvalidationsOutgoingMessageStatus">
  <owner>pavely@chromium.org</owner>
  <summary>
    Status of sending outgoing invalidations message through GCM.
  </summary>
</histogram>

<histogram name="GData.AuthSuccess" enum="GDataAuthResult">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>Result of the authentication for Drive.</summary>
</histogram>

<histogram name="GData.EntireFeedLoadTime" units="microseconds">
  <obsolete>
    Deprecated 9/2012, and replaced by Drive.EntireFeedLoadTime
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Time spent to load the entire file system information from the server
  </summary>
</histogram>

<histogram name="GData.EntryKind" enum="GDataEntryKind">
  <obsolete>
    Deprecated 9/2012, and replaced by Drive.EntryKind
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Provides breakdown of specific formats for hosted documents. Recorded when
    feed is loaded from the server.
  </summary>
</histogram>

<histogram name="GData.InitialFeedLoadTime" units="microseconds">
  <obsolete>
    Deprecated 9/2012, and replaced by Drive.InitialFeedLoadTime
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Time spent to load the initial part of the file system information from the
    server
  </summary>
</histogram>

<histogram name="GData.NumberOfHostedDocuments">
  <obsolete>
    Deprecated 9/2012, and replaced by Drive.NumberOfHostedDocuments
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Number of hosted documents (spreadsheets etc.) on Drive. Logged when Drive
    is first accessed.
  </summary>
</histogram>

<histogram name="GData.NumberOfRegularFiles">
  <obsolete>
    Deprecated 9/2012, and replaced by Drive.NumberOfRegularFiles
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Number of regualr files on Drive.  Logged when Drive is first accessed.
  </summary>
</histogram>

<histogram name="GData.NumberOfTotalFiles">
  <obsolete>
    Deprecated 9/2012, and replaced by Drive.NumberOfTotalFiles
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Number of total files (regualr files + hosted documents) on Drive.  Logged
    when Drive is first accessed.
  </summary>
</histogram>

<histogram name="Geolocation.GeolocationDispatcherHostImpl.EnableHighAccuracy"
    enum="BooleanEnabled">
  <owner>mvanouwerkerk@chromium.org</owner>
  <summary>
    Whether high accuracy geolocation information was requested.
  </summary>
</histogram>

<histogram name="Geolocation.InfoBarDelegate.Event"
    enum="GeolocationInfoBarDelegateEvent">
  <obsolete>
    Deprecated 9/2014, and replaced by
    ContentSettings.PermissionActions_Geolocation.
  </obsolete>
  <owner>mvanouwerkerk@chromium.org</owner>
  <summary>Events in GeolocationInfoBarDelegate.</summary>
</histogram>

<histogram name="Geolocation.InfoBarDelegateAndroid.Event"
    enum="GeolocationInfoBarDelegateAndroidEvent">
  <obsolete>
    Deprecated 9/2014, and replaced by
    ContentSettings.PermissionActions_Geolocation.
  </obsolete>
  <owner>mvanouwerkerk@chromium.org</owner>
  <summary>Events in GeolocationInfoBarDelegateAndroid.</summary>
</histogram>

<histogram name="Geolocation.LocationUpdate.ErrorCode"
    enum="GeopositionErrorCode">
  <owner>mvanouwerkerk@chromium.org</owner>
  <summary>Error code for the geoposition sent to the renderers.</summary>
</histogram>

<histogram name="Geolocation.NetworkLocationRequest.AccessPoints">
  <owner>mvanouwerkerk@chromium.org</owner>
  <summary>
    The number of WiFi access points used to determine geolocation.
  </summary>
</histogram>

<histogram name="Geolocation.NetworkLocationRequest.Event"
    enum="NetworkLocationRequestEvent">
  <owner>mvanouwerkerk@chromium.org</owner>
  <summary>Events in NetworkLocationRequest.</summary>
</histogram>

<histogram name="Geolocation.NetworkLocationRequest.ResponseCode"
    units="HTTP response code">
  <owner>mvanouwerkerk@chromium.org</owner>
  <summary>Http response codes in NetworkLocationRequest.</summary>
</histogram>

<histogram name="Geolocation.Timeout">
  <owner>mvanouwerkerk@chromium.org</owner>
  <summary>
    Counts Geolocation request timeout values, bucketing by timeout duration.
    This is recorded for all requests upon creation, see
    Geolocation.TimeoutExpired for timeouts that actually expired.
  </summary>
</histogram>

<histogram name="Geolocation.TimeoutExpired">
  <owner>mvanouwerkerk@chromium.org</owner>
  <summary>
    Counts Geolocation request timeout expirations, bucketing by timeout
    duration. This means no position was received within the allowed time from
    the browser process due to e.g. a slow network or an unresponsive system
    location provider.
  </summary>
</histogram>

<histogram name="GoogleNow.Card.Button.Clicked0" enum="GoogleNowCardTypeId">
  <owner>robliao@chromium.org</owner>
  <owner>skare@chromium.org</owner>
  <summary>Types of cards which received an index 0 button click.</summary>
</histogram>

<histogram name="GoogleNow.Card.Button.Clicked1" enum="GoogleNowCardTypeId">
  <owner>robliao@chromium.org</owner>
  <owner>skare@chromium.org</owner>
  <summary>Types of cards which received an index 1 button click.</summary>
</histogram>

<histogram name="GoogleNow.Card.Clicked" enum="GoogleNowCardTypeId">
  <owner>robliao@chromium.org</owner>
  <owner>skare@chromium.org</owner>
  <summary>Types of cards which received a notification click.</summary>
</histogram>

<histogram name="GoogleNow.Event" enum="GoogleNowEvent">
  <owner>robliao@chromium.org</owner>
  <owner>skare@chromium.org</owner>
  <summary>Events in Google Now component extension.</summary>
</histogram>

<histogram name="GoogleNow.MessageCenter.Displayed.NotificationsVisible"
    units="count">
  <owner>robliao@chromium.org</owner>
  <owner>skare@chromium.org</owner>
  <summary>
    Count of the number of Google Now notifications visible when the message
    center/notification center is shown.
  </summary>
</histogram>

<histogram name="GooglePlayServices.ConnectionResult"
    enum="GooglePlayServicesConnectionResult">
  <owner>andrewhayden@chromium.org</owner>
  <owner>dgn@chromium.org</owner>
  <summary>
    ConnectionResult error codes resulting from attempts to check whether or not
    Google Play Services is available. Most of these checks are done lazily,
    when a user accesses a feature that uses Google Play Services. Added for
    http://crbug.com/490710.
  </summary>
</histogram>

<histogram name="GooglePlayServices.ErrorHandlerAction"
    enum="GooglePlayServicesErrorHandlerAction">
  <owner>andrewhayden@chromium.org</owner>
  <summary>
    Types of action taken in response to Google Play Services user-recoverable
    errors. Added for http://crbug.com/490710.
  </summary>
</histogram>

<histogram name="GoogleSearch.AccessPoint" enum="SearchAccessPoint">
  <obsolete>
    Deprecated 2015/08.
  </obsolete>
  <owner>kmadhusu@chromium.org</owner>
  <summary>
    Counts number of Google searches from various access points in the browser.
    WARNING: Do not use this histogram as it currently fails to classify a large
    percentage of Omnibox searches correctly - http://crbug.com/421631.
  </summary>
</histogram>

<histogram name="GoogleUpdate.EffectivePolicy" enum="UpdatePolicy">
  <owner>gab@chromium.org</owner>
  <summary>
    The effective update policy for Chrome on Windows. Recorded once per startup
    (following a 45 seconds delay).
  </summary>
</histogram>

<histogram name="GoogleUpdate.ErrorHresult" enum="Hresult">
  <owner>grt@chromium.org</owner>
  <summary>The HRESULT for a failed on-demand update check.</summary>
</histogram>

<histogram name="GoogleUpdate.InfoBar.ActionTaken"
    enum="GoogleUpdateInfoBarActions">
  <obsolete>
    Deprecated 12/2015 in Issue 566085.
  </obsolete>
  <owner>yfriedman@chromium.org</owner>
  <owner>dfalcantara@chromium.org</owner>
  <summary>
    (Android-only) Records what action the user took (if any) on the InfoBar
    indicating that a new version of Chrome is available.
  </summary>
</histogram>

<histogram name="GoogleUpdate.InfoBar.InternalStorageSizeAvailable" units="MB">
  <owner>yfriedman@chromium.org</owner>
  <owner>dfalcantara@chromium.org</owner>
  <owner>khushalsagar@chromium.org</owner>
  <summary>
    (Android-only) The amount of internal memory storage available on the user's
    device when the InfoBar or update menu item is shown.
  </summary>
</histogram>

<histogram name="GoogleUpdate.InfoBar.TimeShown" units="ms">
  <obsolete>
    Deprecated 12/2015 in Issue 566085.
  </obsolete>
  <owner>yfriedman@chromium.org</owner>
  <owner>dfalcantara@chromium.org</owner>
  <summary>
    (Android-only) The amount of time which the InfoBar indicating a new version
    is available is visible.
  </summary>
</histogram>

<histogram name="GoogleUpdate.InstallerExitCode" enum="InstallStatus">
  <owner>grt@chromium.org</owner>
  <summary>
    The exit code from Chrome's installer following a failed on-demand update
    check. All values reported for this histogram fall in the
    GOOGLE_UPDATE_ERROR_UPDATING bucket of the GoogleUpdate.UpdateErrorCode
    histogram and the GOOPDATEINSTALL_E_INSTALLER_FAILED bucket of the
    GoogleUpdate.ErrorHresult histogram.
  </summary>
</histogram>

<histogram name="GoogleUpdate.MenuItem.ActionTakenAfterItemClicked"
    enum="GoogleUpdateAfterItemClickedActions">
  <owner>twellington@chromium.org</owner>
  <summary>
    (Android-only) Records whether Chrome was updated after the update menu item
    was clicked.
  </summary>
</histogram>

<histogram name="GoogleUpdate.MenuItem.ActionTakenOnMenuOpen"
    enum="GoogleUpdateMenuItemActions">
  <owner>twellington@chromium.org</owner>
  <summary>
    (Android-only) Records whether the update menu item was clicked when the app
    menu was opened.
  </summary>
</histogram>

<histogram name="GoogleUpdate.UnexpectedState">
  <owner>grt@chromium.org</owner>
  <summary>
    An unrecognized CurrentState value received from Google Update while polling
    for the status of an on-demand update check.
  </summary>
</histogram>

<histogram name="GoogleUpdate.UpdateErrorCode" enum="GoogleUpdateErrorCode">
  <owner>grt@chromium.org</owner>
  <summary>The error code for a failed on-demand update check.</summary>
</histogram>

<histogram name="GoogleUpdate.UpdatePolicyIsOverridden" enum="Boolean">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    True if the effective update policy for Chrome on Windows is the result of
    an app-specific override; false if it is the default for all apps. Recorded
    once per startup (following a 45 seconds delay).
  </summary>
</histogram>

<histogram name="GoogleUpdate.UpgradeResult" enum="GoogleUpdateUpgradeStatus">
  <owner>grt@chromium.org</owner>
  <summary>The result of an on-demand update check.</summary>
</histogram>

<histogram name="GPU.AcceleratedSurfaceRefreshRate" units="hz">
  <owner>vmiura@chromium.org</owner>
  <summary>
    Refresh rate of the display in Hz.  This is recorded every time we present a
    frame.
  </summary>
</histogram>

<histogram name="GPU.ANGLE.Buffer11CPUMemoryMB" units="MB">
  <owner>cwallez@chromium.org</owner>
  <summary>
     The sum of the size of the CPU-side memory allocations of Buffer11's copies
    (vs. GPU memory allocations). These allocations are used when modifying the
    buffer data on the CPU or when transfering to GPU memory via DMA.
  </summary>
</histogram>

<histogram name="GPU.ANGLE.D3D11CreateDeviceError" enum="D3DHresult">
  <owner>jmadill@chromium.org</owner>
  <summary>
    An extended Windows error code returned from D3D11CreateDevice on error. Can
    be almost any valid HRESULT or DXGI error code, which are listed at
    https://msdn.microsoft.com/en-us/library/windows/desktop/bb509553.aspx.
  </summary>
</histogram>

<histogram name="GPU.ANGLE.D3D11CreateDeviceMS" units="ms">
  <owner>jmadill@chromium.org</owner>
  <summary>
    The time that elapses for the initial call to D3D11CreateDevice on D3D11
    ANGLE. A pure system call, with no ANGLE or Chromium code, called once every
    GPU process startup.
  </summary>
</histogram>

<histogram name="GPU.ANGLE.D3D11FeatureLevel" enum="D3DFeatureLevel">
  <owner>jmadill@chromium.org</owner>
  <summary>
    The maxmium supported (or currently requested) Direct3D feature level in
    D3D11 ANGLE. We support as low as 9.3, and as high as 11.1, though Chrome
    should only use 10.0+ for D3D11. Gives an indication of how new a user's
    video card is, what features it supports, and it's general speed tier.
  </summary>
</histogram>

<histogram name="GPU.ANGLE.D3D11InitializeResult" enum="D3D11InitializeResult">
  <owner>jmadill@chromium.org</owner>
  <summary>
    The result from initializing a D3D11 device in ANGLE. Can be success, or one
    of several error codes which indicate different reasons for failing.
  </summary>
</histogram>

<histogram name="GPU.ANGLE.D3D9InitializeResult" enum="D3D9InitializeResult">
  <owner>jmadill@chromium.org</owner>
  <summary>
    The result from initializing a D3D9 device in ANGLE. Can be success, or one
    of several error codes which indicate different reasons for failing.
  </summary>
</histogram>

<histogram name="GPU.ANGLE.D3DCompileMS" units="ms">
  <owner>jmadill@chromium.org</owner>
  <summary>
    The time ANGLE spends calling the D3D shader compiler. Tracks total time we
    spend compiling shaders on startup and during Chrome's lifetime.
  </summary>
</histogram>

<histogram name="GPU.ANGLE.DisplayInitializeMS" units="ms">
  <owner>jmadill@chromium.org</owner>
  <summary>
    Time ANGLE spends in eglInitialize, where it spins up a Renderer. This can
    gives us insight into how much time we're spending initializing the GPU.
  </summary>
</histogram>

<histogram name="GPU.ANGLE.Renderer11InitializeDeviceMS" units="ms">
  <owner>jmadill@chromium.org</owner>
  <summary>
    Time ANGLE spends initializing various shaders and internal classes. This is
    time that isn't purely loading system DLLs and calling OS methods. It might
    be work we can optimize or defer until later.
  </summary>
</histogram>

<histogram name="GPU.ANGLE.Renderer11InitializeDLLsMS" units="ms">
  <owner>jmadill@chromium.org</owner>
  <summary>
    Time ANGLE spends loading system DLLs, such as the D3D compiler DLL, and the
    D3D11 and DXGI DLLs. Probably unavoidable startup costs, though very useful
    to keep track of.
  </summary>
</histogram>

<histogram name="GPU.ANGLE.SupportsDXGI1_2" enum="BooleanSupported">
  <owner>jmadill@chromium.org</owner>
  <summary>
    Windows computers running Windows 8+, or running Windows 7 with a platform
    update, support the newer version of DXGI. This update also indicates the
    computer is capable of running Direct3D 11.1 if the hardware supports it.
  </summary>
</histogram>

<histogram name="GPU.CollectContextGraphicsInfo" units="microseconds">
  <owner>vmiura@chromium.org</owner>
  <summary>
    The time that the GPU process spends collecting driver information during
    startup.
  </summary>
</histogram>

<histogram name="GPU.ContextLost" enum="ContextLostReason">
  <owner>sievers@chromium.org</owner>
  <summary>
    The reason a GPU command buffer context of a given type was lost.
  </summary>
</histogram>

<histogram name="GPU.CreateBrowserCompositor" units="microseconds">
  <owner>vmiura@chromium.org</owner>
  <summary>
    The time that the browser process takes to create the compositor from its
    point of view. One of these is created for each top-level window (browser
    frame, menus, etc.).
  </summary>
</histogram>

<histogram name="GPU.D3DShaderModel" enum="ShaderModel">
  <owner>jmadill@chromium.org</owner>
  <summary>
    ANGLE's currently active D3D shader model version. Logged once every startup
    of the GPU process, on Windows only. Note that Shader Models 2 and 3 map to
    D3D9 with ANGLE, and 4+ map to D3D11 ANGLE.
  </summary>
</histogram>

<histogram name="GPU.DoLinkProgramTime" units="ms">
  <owner>jmadill@chromium.org</owner>
  <summary>
    The time we spend in GLES2DecoderImpl::DoLinkProgram. Related to how much
    time we spend compiling shaders during startup.
  </summary>
</histogram>

<histogram name="GPU.EGLDisplayType" enum="EGLDisplayType">
  <owner>jbauman@chromium.org</owner>
  <summary>The display type used to ask for an EGLDisplay.</summary>
</histogram>

<histogram name="GPU.Error" enum="GLError">
  <owner>junov@chromium.org</owner>
  <owner>piman@chromium.org</owner>
  <summary>The error states generated by OpenGL calls.</summary>
</histogram>

<histogram name="GPU.FenceSupport" enum="BooleanAvailable">
  <owner>reveman@chromium.org</owner>
  <summary>
    Whether GLFence support is available. Recorded each time a new context group
    is initialized and extensions are detected.
  </summary>
</histogram>

<histogram name="GPU.GPUProcessLaunchCause" enum="GPUProcessLaunchCauses">
  <owner>piman@chromium.org</owner>
  <summary>
    Counts enumerating the initial cause for the GPU Process to be launched.
  </summary>
</histogram>

<histogram name="GPU.GPUProcessLaunchTime" units="ms">
  <owner>piman@chromium.org</owner>
  <summary>
    Startup time of the GPU process as measured by the GPU process host.
  </summary>
</histogram>

<histogram name="GPU.InitializeOneOffMediumTime" units="ms">
  <owner>jmadill@chromium.org</owner>
  <summary>
    The time that the GPU process spends in initializing the GL surface, and
    collecting graphics information. Records times up to three minutes.
  </summary>
</histogram>

<histogram name="GPU.InitializeOneOffTime" units="microseconds">
  <obsolete>
    Deprecated 4/2015.
  </obsolete>
  <owner>vmiura@chromium.org</owner>
  <summary>
    The time that the GPU process spends in initializing the GL surface, and
    collecting graphics information.
  </summary>
</histogram>

<histogram name="GPU.MaxMSAASampleCount" units="samples">
  <owner>senorblanco@chromium.org</owner>
  <summary>
    The maximum number of multisampled anti-aliasing (MSAA) samples per pixel
    that the user's GPU can render.
  </summary>
</histogram>

<histogram name="GPU.ProgramCache.CacheHit" enum="BooleanSuccess">
  <owner>jmadill@chromium.org</owner>
  <summary>
    If a successfully linked program was found in the GPU program cache during a
    program link call.
  </summary>
</histogram>

<histogram name="GPU.TextureRG" enum="BooleanAvailable">
  <owner>reveman@chromium.org</owner>
  <summary>
    Whether RG texture support is available. Recorded each time a new context
    group is initialized and extensions are detected.
  </summary>
</histogram>

<histogram name="Hardware.Display.Count.OnChange">
  <owner>erikchen@chromium.org</owner>
  <summary>
    The number of displays present right after the user has attached or detached
    a new display. Excludes mirrored displays, but includes sleeping displays.
  </summary>
</histogram>

<histogram name="Hardware.Display.Count.OnStartup">
  <owner>erikchen@chromium.org</owner>
  <summary>
    The number of displays present at start up. Excludes mirrored displays, but
    includes sleeping displays.
  </summary>
</histogram>

<histogram name="Hardware.Drive.HasSeekPenalty" enum="BooleanHasSeekPenalty">
  <owner>dbeam@chromium.org</owner>
  <summary>
    Whether a drive has a seek penalty (i.e. is a spinning disk). Emitted 0-2
    times shortly after startup when constructing the initial UMA log.
  </summary>
</histogram>

<histogram name="Hardware.Drive.HasSeekPenalty_Success" enum="BooleanSuccess">
  <owner>dbeam@chromium.org</owner>
  <summary>
    Whether it was possible to determine if a drive has a seek penalty. This can
    fail for various reasons (device drivers don't offer this information, the
    drive is still mounting, lack of access, etc.). Emitted twice shortly after
    startup when constructing the initial UMA log.

    Seek penalty detection is disabled on XP/Vista as of 9/24/2015 because it
    crashes too much. http://crbug.com/514822
  </summary>
</histogram>

<histogram name="Hardware.Drive.HasSeekPenalty_Time" units="ms">
  <owner>dbeam@chromium.org</owner>
  <summary>
    The amount of time it takes to determine whether a drive has a seek penalty.
    Emitted twice shortly after startup when constructing the initial UMA log.
  </summary>
</histogram>

<histogram name="Hardware.Serial.NewMinusOldDeviceListSize">
  <owner>charliea@chromium.org</owner>
  <summary>
    On Windows and Mac, we're implementing new methods to enumerate serial
    devices that provide us more information about the actual devices. This
    metric measures the difference between the number of devices that the new
    and old enumeration methods find. Once this metric gives us confidence that
    the new and old methods are at parity, we can cut out the old method
    altogether.
  </summary>
</histogram>

<histogram name="HIDDetection.OOBEDevicesDetectedOnContinuePressed"
    enum="HIDContinueScenarioType">
  <owner>merkulova@chromium.org</owner>
  <summary>
    Which HID were detected when user pressed Continue on OOBE dialog. This
    metric is specific to ChromeOS.
  </summary>
</histogram>

<histogram name="HIDDetection.OOBEDialogShown">
  <owner>merkulova@chromium.org</owner>
  <summary>
    Whether HID detection dialog was shown on OOBE. Logged on screen show or on
    screen skip respectively. This metric is specific to ChromeOS.
  </summary>
</histogram>

<histogram name="HIDDetection.TimesDialogShownPerOOBECompleted">
  <owner>merkulova@chromium.org</owner>
  <summary>
    Records number of times the dialog was shown by the time OOBE is completed.
    This metric is specific to ChromeOS.
  </summary>
</histogram>

<histogram name="Histogram.InconsistenciesBrowser" enum="Inconsistencies">
  <owner>asvitkine@chromium.org</owner>
  <summary>
    The number of inconsistency events found when examining a single histogram's
    data in a browser for transmission via UMA.  Inconsistent data is NOT
    transmitted via UMA.  Each type of inconsistency is a bit, and all bits
    found in one histogram examination are added together to summarize the
    inconsistent event.  Note that the same inconsistency MAY appear time and
    again as the same corrupt histogram is examined for each potenital UMA
    upload.
  </summary>
</histogram>

<histogram name="Histogram.InconsistenciesBrowserUnique" enum="Inconsistencies">
  <owner>asvitkine@chromium.org</owner>
  <summary>
    The number of inconsistency events found when examining a single histogram's
    data in a browser for transmission via UMA.  Inconsistent data is NOT
    transmitted via UMA.  Each type of inconsistency is a bit, and all bits
    found in one histogram examination are added together to summarize the
    inconsistent event.  Note that the same inconsistency will only appear at
    most one time for each histogram in a single process (i.e., duplicate
    corruption in a single histogram is not noted in this chart.)
  </summary>
</histogram>

<histogram name="Histogram.InconsistenciesChildProcess" enum="Inconsistencies">
  <owner>asvitkine@chromium.org</owner>
  <summary>
    The number of inconsistency events found when examining a single histogram's
    data in a child process for transmission via UMA.  Inconsistent data is NOT
    transmitted via UMA.  Each type of inconsistency is a bit, and all bits
    found in one histogram examination are added together to summarize the
    inconsistent event.  Note that the same inconsistency MAY appear time and
    again as the same corrupt histogram is examined for each potenital UMA
    upload.
  </summary>
</histogram>

<histogram name="Histogram.InconsistenciesChildProcessUnique"
    enum="Inconsistencies">
  <owner>asvitkine@chromium.org</owner>
  <summary>
    The number of inconsistency events found when examining a single histogram's
    data in a child process for transmission via UMA.  Inconsistent data is NOT
    transmitted via UMA.  Each type of inconsistency is a bit, and all bits
    found in one histogram examination are added together to summarize the
    inconsistent event.  Note that the same inconsistency will only appear at
    most one time for each histogram in a single process (i.e., duplicate
    corruption in a single histogram is not noted in this chart.)
  </summary>
</histogram>

<histogram name="Histogram.InconsistenciesRenderer" enum="Inconsistencies">
  <obsolete>
    Deprecated 7/2012.
  </obsolete>
  <owner>asvitkine@chromium.org</owner>
  <summary>
    The number of inconsistency events found when examining a single histogram's
    data in a renderer for transmission to the browser.  Inconsistent data is
    NOT transmitted to the browser.  Each type of inconsistency is a bit, and
    all bits found in one histogram examination are added together to summarize
    the inconsistent event.  Note that the same inconsistency MAY appear time
    and again as the same corrupt histogram is examined for each potenital UMA
    upload.
  </summary>
</histogram>

<histogram name="Histogram.InconsistenciesRendererUnique"
    enum="Inconsistencies">
  <obsolete>
    Deprecated 7/2012.
  </obsolete>
  <owner>asvitkine@chromium.org</owner>
  <summary>
    The number of inconsistency events found when examining a single histogram's
    data in a renderer for transmission to the browser.  Inconsistent data is
    NOT transmitted to the browser.  Each type of inconsistency is a bit, and
    all bits found in one histogram examination are added together to summarize
    the inconsistent event.  Note that the same inconsistency will only appear
    at most one time for each histogram in a single renderer process (i.e.,
    duplicate corruption in a single histogram is not noted in this chart.)
  </summary>
</histogram>

<histogram name="Histogram.InconsistentCountHigh">
  <owner>asvitkine@chromium.org</owner>
  <summary>
    The number of extra samples counted in the redundant_count in a histogram
    that were not found by summing the samples in the buckets.
  </summary>
</histogram>

<histogram name="Histogram.InconsistentCountLow">
  <owner>asvitkine@chromium.org</owner>
  <summary>
    The number of missing samples in the redundant_count in a histogram that
    were found by summing the samples in the buckets.
  </summary>
</histogram>

<histogram name="Histogram.InconsistentSnapshotBrowser">
  <owner>asvitkine@chromium.org</owner>
  <summary>
    The amount of discrepancy found when examining a single histogram's data in
    the browser process for transmission via UMA.  Inconsistent data is NOT
    transmitted via UMA.
  </summary>
</histogram>

<histogram name="Histogram.InconsistentSnapshotChildProcess">
  <owner>asvitkine@chromium.org</owner>
  <summary>
    The amount of discrepancy found when examining a single histogram's data in
    a child process for transmission via UMA.  Inconsistent data is NOT
    transmitted via UMA.
  </summary>
</histogram>

<histogram name="Histogram.InconsistentSnapshotRenderer">
  <obsolete>
    Deprecated 7/2012.
  </obsolete>
  <owner>asvitkine@chromium.org</owner>
  <summary>
    The amount of discrepancy found when examining a single histogram's data in
    a renderer process for transmission via UMA. Inconsistent data is NOT
    transmitted via UMA.
  </summary>
</histogram>

<histogram
    name="History.ClearBrowsingData.HistoryNoticeShownInFooterWhenUpdated"
    enum="BooleanShown">
  <owner>msramek@chromium.org</owner>
  <summary>
    Whether a notice about other forms of browsing history was shown in the
    footer of the Clear Browsing Data dialog. This is recorded every time the
    dialog is opened.
  </summary>
</histogram>

<histogram
    name="History.ClearBrowsingData.PasswordsDeletion.AdditionalDatatypesCount">
  <owner>msramek@chromium.org</owner>
  <summary>
    Recorded when the user deletes their passwords in the ClearBrowsingData
    dialog. Counts how many other data types were selected for deletion.
  </summary>
</histogram>

<histogram name="History.ClearBrowsingData.ShownHistoryNoticeAfterClearing"
    enum="BooleanShown">
  <owner>msramek@chromium.org</owner>
  <summary>
    Whether a dialog with a notice about other forms of browsing history was
    shown after the user deleted data from the Clear Browsing Data dialog.
  </summary>
</histogram>

<histogram name="History.ClearBrowsingData.UserDeletedCookieOrCache"
    enum="CookieOrCacheDeletion">
  <owner>msramek@chromium.org</owner>
  <summary>
    Recorded when the user deletes their browsing data. Shows whether cookies
    and/or cache were among the selected data types.
  </summary>
</histogram>

<histogram name="History.ClearBrowsingData.UserDeletedCookieOrCacheFromDialog"
    enum="CookieOrCacheDeletion">
  <owner>msramek@chromium.org</owner>
  <summary>
    Recorded when the user deletes their browsing data manually from the
    ClearBrowsingData dialog. Shows whether cookies and/or cache were among the
    selected data types.
  </summary>
</histogram>

<histogram name="History.DatabaseAdvancedMetricsTime" units="ms">
  <owner>shess@chromium.org</owner>
  <summary>
    Time spent on advanced History DB metrics calculation (weekly and monthly
    URL, host, and category counts). Advanced metrics are logged on
    initialization of the History DB on 0.3% of starts.
  </summary>
</histogram>

<histogram name="History.DatabaseBasicMetricsTime" units="ms">
  <owner>shess@chromium.org</owner>
  <summary>
    Time spent on basic History DB metrics calculation (file size and table
    counts). Basic metrics are logged on initialization of the History DB on 1%
    of starts.
  </summary>
</histogram>

<histogram name="History.DatabaseFileMB" units="MB">
  <owner>shess@chromium.org</owner>
  <summary>
    Size of History DB file. Duplicate of Profile.HistorySize and
    Sqlite.SizeKB.History. Logged on initialization of the History DB on 1% of
    starts.
  </summary>
</histogram>

<histogram name="History.DeleteFTSIndexDatabases">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Count of &quot;History Index *&quot; databases deleted.  These databases
    stored the full-text-search data for history, which was removed at r213442,
    this histogram tracks cleanup.
  </summary>
</histogram>

<histogram name="History.FaviconDatabaseAdvancedMetricsTime" units="ticks">
  <owner>rogerm@chromium.org</owner>
  <summary>
    The wall-clock time taken to gather favicon database metrics. Metrics are
    logged on initialization of the Favicon DB on 1% of starts.
  </summary>
</histogram>

<histogram name="History.FaviconDatabaseSizeMB" units="MB">
  <owner>rogerm@chromium.org</owner>
  <summary>
    Size of the Favicons database in MB. This is calculated as the number of
    pages consumed by the database multiplied by the page size. Logged on
    initialization of the Favicon DB on 1% of starts.
  </summary>
</histogram>

<histogram name="History.FaviconsRecoveredPercentage" units="%">
  <owner>rpop@google.com</owner>
  <summary>
    Size of the recovered Favicons database relative to the original corrupt
    database.  Recovery is VACUUM-like, so the resulting database should always
    be smaller.  Substantial 100% results would indicate empty databases being
    recovered, substantial low% results would indicate very little data being
    recovered.
  </summary>
</histogram>

<histogram name="History.FaviconsRecoveredRowsFaviconBitmaps">
  <owner>rpop@google.com</owner>
  <summary>
    Rows recovered from [favicon_bitmaps] table in Favicons recovery.
  </summary>
</histogram>

<histogram name="History.FaviconsRecoveredRowsFavicons">
  <owner>rpop@google.com</owner>
  <summary>Rows recovered from [favicons] table in Favicons recovery.</summary>
</histogram>

<histogram name="History.FaviconsRecoveredRowsIconMapping">
  <owner>rpop@google.com</owner>
  <summary>
    Rows recovered from [icon_mapping] table in Favicons recovery.
  </summary>
</histogram>

<histogram name="History.FaviconsRecovery" enum="HistoryFaviconsRecoveryEnum">
  <owner>rpop@google.com</owner>
  <summary>
    Track results of SQLite database recovery code in thumbnail_database.cc.
  </summary>
</histogram>

<histogram name="History.FirstSetTopSitesDeltaSize">
  <owner>yiyaoliu@chromium.org</owner>
  <summary>
    The count of differences between cached top sites and up-to-date top sites
    when function TopSitesImpl::SetTopSites is firstly called at startup.
  </summary>
</histogram>

<histogram name="History.FirstUpdateTime" units="ms">
  <owner>yiyaoliu@chromium.org</owner>
  <summary>
    The amount of time for function
    history::TopSitesBackend::UpdateTopSitesOnDBThread to execute when this
    function is called during startup. Excludes the case where local
    TopSitesDatabase db_ is unavailable, i.e. where the update doesn't really
    happen.
  </summary>
</histogram>

<histogram name="History.HistoryServiceInitTime" units="ms">
  <owner>rkaplow@chromium.org</owner>
  <summary>
    The amount of time that elapsed during HistoryService::Init.
  </summary>
</histogram>

<histogram name="History.InMemoryDBItemCount">
  <owner>gab@chromium.org</owner>
  <summary>
    The number of typed URLs in the history database that are read into the
    &quot;in memory&quot; history database. This in memory copy of the typed
    URLs is used for synchronous inline autocomplete on the UI thread, while the
    larger slower service is run off of disk on a background thread. Recorded on
    profile open.
  </summary>
</histogram>

<histogram name="History.InMemoryDBKeywordTermsCount">
  <owner>gab@chromium.org</owner>
  <summary>
    Number of items in in-memory keyword_search_terms table. Recorded on profile
    open.
  </summary>
</histogram>

<histogram name="History.InMemoryDBKeywordTermsPopulate" units="ms">
  <owner>gab@chromium.org</owner>
  <summary>
    Time to load in-memory keyword_search_terms table from disk. Recorded on
    profile open.
  </summary>
</histogram>

<histogram name="History.InMemoryDBKeywordURLItemCount">
  <owner>gab@chromium.org</owner>
  <summary>
    Number of items in in-memory urls table. Recorded on profile open.
  </summary>
</histogram>

<histogram name="History.InMemoryDBKeywordURLPopulate" units="ms">
  <owner>gab@chromium.org</owner>
  <summary>
    Time to load in-memory urls table from disk urls table. Recorded on profile
    open.
  </summary>
</histogram>

<histogram name="History.InMemoryDBPopulate">
  <owner>gab@chromium.org</owner>
  <summary>
    The time it takes to read the typed URLs from the main history database into
    the &quot;in memory&quot; history database. This in memory copy of the typed
    URLs is used for synchronous inline autocomplete on the UI thread, while the
    larger slower service is run off of disk on a background thread. Recorded on
    profile open.
  </summary>
</histogram>

<histogram name="History.InMemoryTypedUrlVisitCount">
  <owner>gab@chromium.org</owner>
  <summary>
    The sum of the visit_count fields for all URLs in the &quot;in memory&quot;
    history database. This corresponds to the number of times the user has
    visited the typed URLs in the last 30 days (excluding page reloads, since
    the history database does not increment the visit_count in that case).
    Recorded on profile open.
  </summary>
</histogram>

<histogram name="History.InMemoryURLCacheSize" units="bytes">
  <owner>mpearson@chromium.org</owner>
  <summary>
    Size of on-disk cache for in-memory url index. Recorded on profile open when
    restoring from a cache file.
  </summary>
</histogram>

<histogram name="History.InMemoryURLChars">
  <owner>mpearson@chromium.org</owner>
  <summary>
    Number of items in the in-memory url index char_word_map_. Recorded on
    profile open when restoring from a cache file and again shortly after
    profile open when rebuilding the in-memory url index from history.
  </summary>
</histogram>

<histogram name="History.InMemoryURLHistoryItems">
  <owner>mpearson@chromium.org</owner>
  <summary>
    Number of history items in the in-memory url index. Recorded on profile open
    when restoring from a cache file and again shortly after profile open when
    rebuilding the in-memory url index from history.
  </summary>
</histogram>

<histogram name="History.InMemoryURLIndexingTime" units="ms">
  <owner>mpearson@chromium.org</owner>
  <summary>
    Time to rebuild in-memory url index from main history database. Recorded
    once shortly after profile open.
  </summary>
</histogram>

<histogram name="History.InMemoryURLIndexRestoreCacheTime" units="ms">
  <owner>mpearson@chromium.org</owner>
  <summary>
    Time to restore the in-memory url index from disk cache. Recorded on profile
    open.
  </summary>
</histogram>

<histogram name="History.InMemoryURLIndexSaveCacheTime" units="ms">
  <owner>mpearson@chromium.org</owner>
  <summary>
    Time to write in-memory url index to disk cache. Recorded once shortly after
    profile open (after rebuilding the in-memory url index from history) and
    again upon (clean) shutdown.
  </summary>
</histogram>

<histogram name="History.InMemoryURLWords">
  <owner>mpearson@chromium.org</owner>
  <summary>
    Number of items in in-memory url index word_map_. Recorded on profile open
    when restoring from a cache file and again shortly after profile open when
    rebuilding the in-memory url index from history.
  </summary>
</histogram>

<histogram name="History.MonthlyHostCount">
  <owner>shess@chromium.org</owner>
  <summary>
    Unique hostnames in History database urls table with last-visit times in the
    last 30 days. Metrics are logged on initialization of the History DB on 0.3%
    of starts.
  </summary>
</histogram>

<histogram name="History.MonthlyURLCount">
  <owner>shess@chromium.org</owner>
  <summary>
    Unique URLs in History database urls table with last-visit times in the last
    30 days. Metrics are logged on initialization of the History DB on 0.3% of
    starts.
  </summary>
</histogram>

<histogram name="History.MonthlyVisitCount">
  <owner>shess@chromium.org</owner>
  <summary>
    Number of rows in History visits table with visit times in the last 30 days.
    Metrics are logged on initialization of the History DB on 1% of starts.
  </summary>
</histogram>

<histogram name="History.NumFaviconBitmapsInDB">
  <owner>rogerm@chromium.org</owner>
  <summary>
    The total number of favicon bitmaps (of all sizes) cached in a user's
    Favicon database. A given favicon URL may be associated with multiple
    bitmaps (of different sizes). Logged on initialization of the Favicon DB on
    1% of starts.
  </summary>
</histogram>

<histogram name="History.NumFaviconMappingsInDB">
  <owner>rogerm@chromium.org</owner>
  <summary>
    The number of page URL (e.g., http://www.google.com) to favicon URL (e.g.,
    http://www.google.com/favicon.ico) mappings stored in a user's Favicon
    database. Logged on initialization of the Favicon DB on 1% of starts.
  </summary>
</histogram>

<histogram name="History.NumFaviconsInDB">
  <owner>rogerm@chromium.org</owner>
  <summary>
    The total number of favicon URLs (e.g. http://www.google.com/favicon.ico)
    tracked in a user's Favicon database. This metric tracks knowledge of a
    favicon URL not whether there are cached bitmaps for that favicon URL. See
    History.NumFaviconBitmapsInDB for that. Logged on initialization of the
    Favicon DB on 1% of starts.
  </summary>
</histogram>

<histogram name="History.NumLargeFaviconBitmapsInDB">
  <owner>rogerm@chromium.org</owner>
  <summary>
    The total number of large (&gt;= 64 pixels wide) favicons being tracked in a
    user's Favicon database. This is a subset of History.NumFaviconBitmapsInDB,
    which includes all sizes in its count. Logged on initialization of the
    Favicon DB on 1% of starts.
  </summary>
</histogram>

<histogram name="History.NumTouchIconsInDB">
  <owner>rogerm@chromium.org</owner>
  <summary>
    The total number of touch icons being tracked in a user's Favicon database.
    This is a subset of History.NumFaviconsInDB, which includes all icon types
    in its count. Logged on initialization of the Favicon DB on 1% of starts.
  </summary>
</histogram>

<histogram name="History.ShownHeaderAboutOtherFormsOfBrowsingHistory"
    enum="BooleanShown">
  <owner>msramek@chromium.org</owner>
  <summary>
    Whether the notice about other forms of browsing history was shown in the
    header of the History page when the header was displayed. The header is
    refreshed with every history query.
  </summary>
</histogram>

<histogram name="History.TopHostsVisitsByRank" units="rank">
  <owner>twifkak@chromium.org</owner>
  <owner>bengr@chromium.org</owner>
  <summary>
    Page visits to each of a user's top 50 hosts. The bucket is the 1-based rank
    of the host. Visits to all other hosts go into the 51st bucket.
    Android-only. Only counts the last URL in a redirect chain. The list of top
    hosts is computed approximately nightly. This means that a given day will
    likely include a recalculation of top hosts, and therefore a given bucket
    may represent two different hosts at different times of day.
  </summary>
</histogram>

<histogram name="History.TopSitesRecoveredPercentage" units="%">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Size of the recovered TopSites database relative to the original corrupt
    database.  Recovery is VACUUM-like, so the resulting database should always
    be smaller.  Substantial 100% results would indicate empty databases being
    recovered, substantial low% results would indicate very little data being
    recovered.
  </summary>
</histogram>

<histogram name="History.TopSitesRecoveredRowsThumbnails">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Rows recovered from [thumbnails] table in TopSites recovery.
  </summary>
</histogram>

<histogram name="History.TopSitesRecovery" enum="HistoryTopSitesRecoveryEnum">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The TopSites recovery code is written conservatively, with successful
    recovery committed and any failure leading to rollback. This tracks the
    outcomes to determine which cases are high-frequency enough to warrant
    adding additional code to handle them (versus simply deleting the data).
  </summary>
</histogram>

<histogram name="History.TopSitesVisitsByRank" units="rank">
  <obsolete>
    Deprecated as of 11/2014.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Page visits to each of a user's top 50 sites. Visits to all other sites go
    into the 51st bucket. Only count the page visit if it came from user
    browsing and only count it once when cycling through a redirect chain.
  </summary>
</histogram>

<histogram name="History.UpdateTopSitesOnDBThreadTime" units="ms">
  <obsolete>
    Deprecated because only the execution time at startup is of interest. See
    histogram History.UpdateTopSitesOnDBThread_Startup_Time.
  </obsolete>
  <owner>yiyaoliu@chromium.org</owner>
  <summary>
    The amount of time for function
    history::TopSitesBackend::UpdateTopSitesOnDBThread to execute. Excludes the
    case where local TopSitesDatabase db_ is unavailable, i.e. where the update
    doesn't really happen.
  </summary>
</histogram>

<histogram name="History.URLTableCount">
  <owner>shess@chromium.org</owner>
  <summary>
    Number of rows in urls table in History DB. Metrics are logged on
    initialization of the History DB on 1% of starts.
  </summary>
</histogram>

<histogram name="History.VisitTableCount">
  <owner>shess@chromium.org</owner>
  <summary>
    Number of rows in visits table in History DB. Metrics are logged on
    initialization of the History DB on 1% of starts.
  </summary>
</histogram>

<histogram name="History.WeeklyHostCount">
  <owner>shess@chromium.org</owner>
  <summary>
    Unique hostnames in History database urls table with last-visit times in the
    last 7 days. Metrics are logged on initialization of the History DB on 0.3%
    of starts.
  </summary>
</histogram>

<histogram name="History.WeeklyURLCount">
  <owner>shess@chromium.org</owner>
  <summary>
    Unique URLs in History database urls table with last-visit times in the last
    7 days. Metrics are logged on initialization of the History DB on 0.3% of
    starts.
  </summary>
</histogram>

<histogram name="History.WeeklyVisitCount">
  <owner>shess@chromium.org</owner>
  <summary>
    Number of rows in History visits table with visit times in the last 7 days.
    Metrics are logged on initialization of the History DB on 1% of starts.
  </summary>
</histogram>

<histogram name="HistoryPage.ClickPosition">
  <owner>rpop@google.com</owner>
  <summary>
    Number of entries that the clicked entry is older than in History page. Last
    bucket is any entry of that value or higher.
  </summary>
</histogram>

<histogram name="HistoryPage.ClickPositionSubset">
  <owner>rpop@google.com</owner>
  <summary>
    Subset of the Click Position histogram. Contains only the first smaller
    subset of entries on the page. Number of entries that the clicked entry is
    older than in History page. Last bucket is entries of that value or higher.
  </summary>
</histogram>

<histogram name="HistoryPage.OtherDevicesMenu" enum="OtherSessionsActions">
  <owner>mad@chromium.org</owner>
  <owner>rpop@google.com</owner>
  <summary>
    Histogram for usage of the section in the history page that allows the user
    to access tabs from other devices.
  </summary>
</histogram>

<histogram name="HistoryPage.RemoveEntryPosition">
  <owner>rpop@google.com</owner>
  <summary>
    Number of entries that the deleted entry is older than in History page. Last
    bucket is any entry of that value or higher. Confirmed removal is not
    guaranteed, just an initiation of 'Remove selected items'.
  </summary>
</histogram>

<histogram name="HistoryPage.RemoveEntryPositionSubset">
  <owner>rpop@google.com</owner>
  <summary>
    Subset of Remove Entry Position histogram. Contains only the first smaller
    subset of entries on the page. Number of entries that the deleted entry is
    older than in History page. Last bucket is any entry of that value or
    higher. Confirmed removal is not guaranteed, just an initiation of 'Remove
    selected items'.
  </summary>
</histogram>

<histogram name="Hotword.AudioLoggingEnabled" enum="BooleanEnabled">
  <owner>rlp@chromium.org</owner>
  <summary>
    The state of the hotword audio logging preference. This value is emitted
    each time the hotword availability is requested by the extension if the user
    is also opted in to hotword voice search. This check typically happens each
    time a hotword search is initiated.
  </summary>
</histogram>

<histogram name="Hotword.Enabled" enum="HotwordPrefState">
  <owner>rlp@chromium.org</owner>
  <summary>
    The state of the hotword preference. This value is emitted during
    HotwordService initialization which happens during Profile initialization.
  </summary>
</histogram>

<histogram name="Hotword.ExtensionAvailability" enum="HotwordAvailability">
  <owner>rlp@chromium.org</owner>
  <summary>
    Whether the external component hotword extension exists (i.e., not pending
    download, disabled, etc.). This value is emitted each time the hotword
    availability is requested by the extension which typically happens each time
    a hotword search is initiated.
  </summary>
</histogram>

<histogram name="Hotword.HotwordError" enum="HotwordError">
  <owner>rlp@chromium.org</owner>
  <summary>
    Errors reported by the hotword service when determining if hotwording is
    available. Non-errors are also reported so that errors can be seen as a
    percentage of total requests.
  </summary>
</histogram>

<histogram name="Hotword.HotwordMediaStreamResult"
    enum="HotwordMediaStreamResult">
  <owner>amistry@chromium.org</owner>
  <owner>rlp@chromium.org</owner>
  <owner>somast@chromium.org</owner>
  <summary>
    Success or error when attempting to open a MediaStream for the microphone.
    At most one success or error will be logged for an attempt to open a stream.
  </summary>
</histogram>

<histogram name="Hotword.HotwordNaClMessageTimeout"
    enum="HotwordNaClMessageTimeout">
  <owner>amistry@chromium.org</owner>
  <owner>rlp@chromium.org</owner>
  <owner>somast@chromium.org</owner>
  <summary>
    Timeout occured while waiting for a message from the NaCl hotword detector
    plugin. This value is the message that was expected to be received from the
    plugin.
  </summary>
</histogram>

<histogram name="Hotword.HotwordNaClPluginLoadResult"
    enum="HotwordNaClPluginLoadResult">
  <owner>amistry@chromium.org</owner>
  <owner>rlp@chromium.org</owner>
  <owner>somast@chromium.org</owner>
  <summary>
    Success or error when attempting to load the NaCl hotword detector plugin.
  </summary>
</histogram>

<histogram name="Hotword.HotwordTriggerSource" enum="HotwordTriggerSource">
  <owner>amistry@chromium.org</owner>
  <owner>rlp@chromium.org</owner>
  <owner>somast@chromium.org</owner>
  <summary>
    Location of hotword trigger. Emitted every time the hotword is triggered by
    the user saying 'Ok Google'.
  </summary>
</histogram>

<histogram name="Hotword.SharedModuleReinstallLanguage" enum="LanguageCode">
  <owner>amistry@chromium.org</owner>
  <owner>rlp@chromium.org</owner>
  <owner>somast@chromium.org</owner>
  <summary>
    Language, switched to by the user, that triggered a hotword shared module
    reinstall.
  </summary>
</histogram>

<histogram name="HttpCache.AccessToDone" units="ms">
  <owner>gavinp@chromium.org</owner>
  <summary>
    For every http cache transaction with a pattern (see HttpCache.Pattern), the
    time from the first access to the disk cache until the transaction was done.
  </summary>
</histogram>

<histogram name="HttpCache.AsyncValidationDuration" units="ms">
  <obsolete>
    Deprecated as of 3/2015.
  </obsolete>
  <owner>ricea@chromium.org</owner>
  <summary>
    The time spent performing an asynchronous revalidation that was triggered by
    a Cache-Control: stale-while-revalidate directive. This is recorded when the
    asynchronous revalidation completes, either after the response was
    completely read or an error occurred. One entry is recorded for each
    asynchronous revalidation that is performed.
  </summary>
</histogram>

<histogram name="HttpCache.BeforeSend" units="ms">
  <owner>gavinp@chromium.org</owner>
  <summary>
    For http cache transactions in which a network request was sent, the time
    elapsed between beginning the request and sending it over the network; this
    is the time spent accessing the disk cache.
  </summary>
</histogram>

<histogram name="HttpCache.CantConditionalizeCause"
    enum="HttpCacheValidationCause">
  <owner>jkarlin@chromium.org</owner>
  <summary>
    For each request that results in an unconditionalizable network request, the
    cause for the request.
  </summary>
</histogram>

<histogram name="HttpCache.EntryLockWait" units="ms">
  <owner>jkarlin@chromium.org</owner>
  <owner>gavinp@chromium.org</owner>
  <summary>
    The time spent waiting for write lock on a disk cache entry.
  </summary>
</histogram>

<histogram name="HttpCache.ExternallyConditionalized"
    enum="ExternallyConditionalizedType">
  <owner>ricea@chromium.org</owner>
  <summary>
    Count of the number of external (ie. from Blink) conditionalized requests,
    and whether or not those requests could have been served from the browser
    cache.
  </summary>
</histogram>

<histogram name="HttpCache.OfflineStatus" enum="OfflineStatus">
  <obsolete>
    Deprecated 4/2015.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Result of a main page HttpCacheTransaction if offline mode had been enabled.
  </summary>
</histogram>

<histogram name="HttpCache.Pattern" enum="HttpCachePattern">
  <owner>gavinp@chromium.org</owner>
  <summary>For each http cache transaction, the recorded pattern.</summary>
</histogram>

<histogram name="HttpCache.PercentBeforeSend" units="%">
  <owner>gavinp@chromium.org</owner>
  <summary>
    For http cache transactions in which a network request was sent, the
    percentage of total request time that elapsed before sending the request
    over the network; this is the time spent accessing the disk cache.
  </summary>
</histogram>

<histogram name="HttpCache.ReadErrorNonRestartable" enum="NetErrorCodes">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>Net error results from non-restartable cache read errors.</summary>
</histogram>

<histogram name="HttpCache.ReadErrorRestartable" enum="NetErrorCodes">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>Net error results from restartable cache read errors.</summary>
</histogram>

<histogram name="HttpCache.ValidationCause" enum="HttpCacheValidationCause">
  <owner>jkarlin@chromium.org</owner>
  <summary>For each validation attempt, the cause for the validation.</summary>
</histogram>

<histogram name="HttpCache.Vary" enum="VaryType">
  <obsolete>
    Deprecated as of 11/2014.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>The type of Vary header for a given GET response.</summary>
</histogram>

<histogram name="Import.ImporterType.AutoImport" enum="ImporterType">
  <owner>gab@chromium.org</owner>
  <summary>The importer used on first run Auto Import.</summary>
</histogram>

<histogram name="Import.ImporterType.BookmarksAPI" enum="ImporterType">
  <owner>gab@chromium.org</owner>
  <summary>The importer used on import from the bookmarks file API.</summary>
</histogram>

<histogram name="Import.ImporterType.ImportDataHandler" enum="ImporterType">
  <owner>gab@chromium.org</owner>
  <summary>
    The importer used on import from the chrome://settings/importData UI.
  </summary>
</histogram>

<histogram name="Import.ShowDialog.FromBookmarkBarView" units="seconds">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The amount of time from install time to time that user opens import dialog
    from BookmarkBarView.
  </summary>
</histogram>

<histogram name="Import.ShowDialog.FromFloatingBookmarkBarView" units="seconds">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The amount of time from install time to time that user opens import dialog
    from NTP floating BookmarkBarView.
  </summary>
</histogram>

<histogram name="Import_ShowDlg.FromBookmarkBarView" units="seconds">
  <obsolete>
    Deprecated and replaced by Import.ShowDialog.FromBookmarkBarView
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The amount of time from install time to time that user opens import dialog
    from BookmarkBarView.
  </summary>
</histogram>

<histogram name="Import_ShowDlg.FromFloatingBookmarkBarView" units="seconds">
  <obsolete>
    Deprecated and replaced by Import.ShowDialog.FromFloatingBookmarkBarView
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The amount of time from install time to time that user opens import dialog
    from NTP floating BookmarkBarView.
  </summary>
</histogram>

<histogram name="ImportantFile.TempFileFailures" enum="TempFileFailure">
  <owner>rvargas@chromium.org</owner>
  <summary>
    Count of various failures in ImportantFileWrite when manipulating a temp
    file to write to before moving it into place (replacing another file).
  </summary>
</histogram>

<histogram name="IncognitoModePrefs.WindowsParentalControlsInitThread"
    enum="ThreadType">
  <owner>robliao@chromium.org</owner>
  <summary>
    The thread used to initialize the Windows parental controls.
  </summary>
</histogram>

<histogram name="IncognitoModePrefs.WindowsParentalControlsInitTime" units="ms">
  <owner>robliao@chromium.org</owner>
  <summary>
    The amount of time that elapsed during a run of
    PlatformParentalControlsValue::IsParentalControlActivityLoggingOnImpl on
    Windows 7 and above.
  </summary>
</histogram>

<histogram name="InertialSensor.AccelerometerAndroidAvailable"
    enum="BooleanAvailable">
  <owner>timvolodine@chromium.org</owner>
  <summary>
    Whether the Sensor.TYPE_LINEAR_ACCELERATION was available at the start of
    Device Motion.
  </summary>
</histogram>

<histogram name="InertialSensor.AccelerometerIncGravityAndroidAvailable"
    enum="BooleanAvailable">
  <owner>timvolodine@chromium.org</owner>
  <summary>
    Whether the Sensor.TYPE_ACCELEROMETER was available at the start of Device
    Motion.
  </summary>
</histogram>

<histogram name="InertialSensor.AccelerometerWindowsAvailable"
    enum="BooleanAvailable">
  <owner>timvolodine@chromium.org</owner>
  <summary>
    Whether the SENSOR_TYPE_ACCELEROMETER_3D was available at the start of
    Device Motion on the Windows platform.
  </summary>
</histogram>

<histogram name="InertialSensor.DeviceOrientationSensorAndroid"
    enum="DeviceOrientationSensorTypeAndroid">
  <owner>timvolodine@chromium.org</owner>
  <summary>
    Provides a histogram of the base sensors (if any) that are used at the start
    of the Device Orientation API. Currently Sensor.TYPE_GAME_ROTATION_VECTOR is
    the default sensor for orientation, if it's not available fall-back options
    are provided by using either Sensor.TYPE_ROTATION_VECTOR or a combination of
    Sensor.TYPE_ACCELEROMETER and Sensor.TYPE_MAGNETIC_FIELD.
  </summary>
</histogram>

<histogram name="InertialSensor.GyrometerWindowsAvailable"
    enum="BooleanAvailable">
  <owner>timvolodine@chromium.org</owner>
  <summary>
    Whether the SENSOR_TYPE_GYROMETER_3D was available at the start of Device
    Motion on the Windows platform.
  </summary>
</histogram>

<histogram name="InertialSensor.GyroscopeAndroidAvailable"
    enum="BooleanAvailable">
  <owner>timvolodine@chromium.org</owner>
  <summary>
    Whether the Sensor.TYPE_GYROSCOPE was available at the start of Device
    Motion.
  </summary>
</histogram>

<histogram name="InertialSensor.InclinometerWindowsAvailable"
    enum="BooleanAvailable">
  <owner>timvolodine@chromium.org</owner>
  <summary>
    Whether the SENSOR_TYPE_INCLINOMETER_3D was available at the start of Device
    Orientation on the Windows platform.
  </summary>
</histogram>

<histogram name="InertialSensor.MotionDefaultAvailable" enum="BooleanAvailable">
  <owner>timvolodine@chromium.org</owner>
  <summary>
    This histogram counts the number of Device Motion API invocations in the
    default implementation (Linux and CrOS). The default implementation does not
    provide any sensors so the result is always false.
  </summary>
</histogram>

<histogram name="InertialSensor.MotionMacAvailable" enum="BooleanAvailable">
  <owner>timvolodine@chromium.org</owner>
  <summary>
    Whether the sudden motion sensor was available at the start of Device Motion
    on the MacOS platform.
  </summary>
</histogram>

<histogram name="InertialSensor.OrientationDefaultAvailable"
    enum="BooleanAvailable">
  <owner>timvolodine@chromium.org</owner>
  <summary>
    This histogram counts the number of Device Orientation API invocations in
    the default implementation (Linux and CrOS). The default implementation does
    not provide any sensors so the result is always false.
  </summary>
</histogram>

<histogram name="InertialSensor.OrientationMacAvailable"
    enum="BooleanAvailable">
  <owner>timvolodine@chromium.org</owner>
  <summary>
    Whether the sudden motion sensor was available at the start of Device
    Orientation on the MacOS platform.
  </summary>
</histogram>

<histogram name="InertialSensor.RotationVectorAndroidAvailable"
    enum="BooleanAvailable">
  <obsolete>
    Deprecated 11/2014 (crbug.com/347507). Replaced by
    InertialSensor.DeviceOrientationSensorAndroid.
  </obsolete>
  <owner>timvolodine@chromium.org</owner>
  <summary>
    Whether the Sensor.TYPE_ROTATION_VECTOR was available at the start of Device
    Orientation.
  </summary>
</histogram>

<histogram name="InfoBar.Shown" enum="InfoBarIdentifier">
  <owner>dfalcantara@chromium.org</owner>
  <owner>rkaplow@chromium.org</owner>
  <summary>
    Records how many times a particular infobar was shown to the user. On
    Android, the infobar may be partially hidden due to stacking.
  </summary>
</histogram>

<histogram name="InputMethod.ActiveCount">
  <owner>shuchen@chromium.org</owner>
  <summary>
    The number of active input methods. Recorded when the user logs in to Chrome
    OS or each cold start of Chrome on Android. The active input methods are
    selected by user in the language settings page on Chrome OS and in system
    language settings on Android.
  </summary>
</histogram>

<histogram name="InputMethod.AutoCorrectLevel" enum="IMECorrectionLevel">
  <owner>shuchen@chromium.org</owner>
  <summary>The auto-correction level for suggestion engine.</summary>
</histogram>

<histogram name="InputMethod.Category" enum="InputMethodCategory">
  <owner>shuchen@chromium.org</owner>
  <summary>
    The breakdown of input method usage by input method category. Recorded when
    the system changes the current input method.
  </summary>
</histogram>

<histogram name="InputMethod.Commit.Index">
  <owner>shuchen@chromium.org</owner>
  <summary>
    The suggestion index (1-based) of the suggestion list item which user
    chooses to commit.
  </summary>
</histogram>

<histogram name="InputMethod.Commit.Type" enum="IMECommitType">
  <obsolete>
    Deprecated 03/2015, and replaced by InputMethod.Commit.Type2.
  </obsolete>
  <owner>shuchen@chromium.org</owner>
  <summary>
    The suggestion accuracy type which the user chooses to commit.
  </summary>
</histogram>

<histogram name="InputMethod.Commit.Type2" enum="IMECommitType2">
  <owner>shuchen@chromium.org</owner>
  <summary>
    The suggestion accuracy type which the user chooses to commit.
  </summary>
</histogram>

<histogram name="InputMethod.CommitLength">
  <owner>shuchen@chromium.org</owner>
  <summary>The number of characters committed with composition text.</summary>
</histogram>

<histogram name="InputMethod.ID" enum="InputMethodID">
  <obsolete>
    This is deprecated since M46, InputMethod.ID2 is used since then.
  </obsolete>
  <owner>shuchen@chromium.org</owner>
  <summary>
    The breakdown of input method usage by input method IDs. Recorded when the
    user presses keys on physical or on-screen keyboard.
  </summary>
</histogram>

<histogram name="InputMethod.ID2" enum="InputMethodID2">
  <owner>shuchen@chromium.org</owner>
  <summary>
    The breakdown of input method usage by input method IDs. Recorded when the
    user presses keys on physical or on-screen keyboard.
  </summary>
</histogram>

<histogram name="InputMethod.ImeSwitch" enum="IMESwitchType">
  <owner>shuchen@chromium.org</owner>
  <summary>The trigger type of input method switches by user.</summary>
</histogram>

<histogram name="InputMethod.MatchesSystemLanguage" enum="BooleanMatched">
  <owner>aurimas@chromium.org</owner>
  <summary>
    Whether the currently selected keyboard language matches the system
    language. Recorded once with every cold start of Chrome for Android.
  </summary>
</histogram>

<histogram name="InputMethod.PkCommit.Index">
  <owner>shuchen@chromium.org</owner>
  <summary>
    The suggestion index (1-based) of the suggestion list item which user
    chooses to commit for physical keyboard autocorrect.
  </summary>
</histogram>

<histogram name="InputMethod.PkCommit.Type" enum="IMECommitType2">
  <owner>shuchen@chromium.org</owner>
  <summary>
    The suggestion accuracy type which the user chooses to commit for physical
    keyboard autocorrect.
  </summary>
</histogram>

<histogram name="InputMethod.RegisterProxyView" enum="IMERegisterProxyView">
  <owner>changwan@chromium.org</owner>
  <summary>The result of registering proxy view to InputMethodManager.</summary>
</histogram>

<histogram name="InputMethod.VirtualKeyboard.BackspaceCount">
  <owner>shuchen@chromium.org</owner>
  <summary>
    The number of times the backspace key was pressed on the virtual keyboard,
    while the virtual keyboard was alive. Recorded when the virtual keyboard is
    closed.
  </summary>
</histogram>

<histogram name="InputMethod.VirtualKeyboard.BackspaceOnLayout"
    enum="IMEVKLayout">
  <owner>shuchen@chromium.org</owner>
  <summary>
    The layout type of the virtual keyboard, recorded when backspace is pressed.
  </summary>
</histogram>

<histogram name="InputMethod.VirtualKeyboard.BackwardsMovesPerSwipe"
    units="moves">
  <owner>rsadam@chromium.org</owner>
  <summary>
    ChromeOS histogram that counts the number of times the cursor was moved to
    the previous word by swiping backwards on the selection track. The count is
    initialized when the user starts swiping from any side of the virtual
    keyboard, incremented based on how far they swipe backwards on the selection
    track, and recorded when they release their finger.
  </summary>
</histogram>

<histogram name="InputMethod.VirtualKeyboard.CharactersBetweenBackspaces">
  <owner>rsadam@chromium.org</owner>
  <summary>
    Counts the length of text typed by the virtual keyboard between each
    backspace. This metric provides a rough approximation of an error rate for
    the virtual keyboard.
  </summary>
</histogram>

<histogram name="InputMethod.VirtualKeyboard.CharactersCommitted">
  <owner>rsadam@chromium.org</owner>
  <summary>
    The total number of characters committed. Recorded when the virtual keyboard
    is closed.
  </summary>
</histogram>

<histogram name="InputMethod.VirtualKeyboard.Duration" units="seconds">
  <owner>shuchen@chromium.org</owner>
  <summary>How long the virtual keyboard was visible.</summary>
</histogram>

<histogram name="InputMethod.VirtualKeyboard.GestureTypingEvent"
    enum="IMEGestureTypingEvent">
  <owner>stevet@chromium.org</owner>
  <summary>Text input events related to gesture typing.</summary>
</histogram>

<histogram name="InputMethod.VirtualKeyboard.InitLatency" units="ms">
  <owner>shuchen@chromium.org</owner>
  <summary>
    The on-screen keyboard initialization latency in milliseconds.
  </summary>
</histogram>

<histogram name="InputMethod.VirtualKeyboard.Layout" enum="IMEVKLayout">
  <owner>shuchen@chromium.org</owner>
  <summary>
    The layout of the on-screen keyboard. Logged when the specific layout is
    shown.
  </summary>
</histogram>

<histogram name="InputMethod.VirtualKeyboard.LayoutSwitch">
  <owner>shuchen@chromium.org</owner>
  <summary>
    The count of layout switching actions while virtual keyboard is alive.
    Recorded when the virtual keyboard window is hidden or destroyed.
  </summary>
</histogram>

<histogram name="InputMethod.VirtualKeyboard.MovesPerSwipe" units="moves">
  <owner>rsadam@chromium.org</owner>
  <summary>
    ChromeOS histogram that counts the number of times the cursor was moved to
    the next word by swiping forward on the selection track. The count is
    initialized when the user starts swiping from any side of the virtual
    keyboard, incremented based on how far they swipe forwards on the selection
    track, and recorded when they release their finger.
  </summary>
</histogram>

<histogram name="InputMethod.VirtualKeyboard.TapCount">
  <owner>stevet@chromium.org</owner>
  <summary>
    The number of times the virtual keyboard was tapped while the virtual
    keyboard was alive. Recorded when the virtual keyboard is closed.
  </summary>
</histogram>

<histogram name="InputMethod.VirtualKeyboard.WordsDeletedPerSwipe"
    units="words">
  <owner>rsadam@chromium.org</owner>
  <summary>
    ChromeOS histogram that tracks the total number of words that were deleted
    by swiping forward on the deletion track. The count is initialized when the
    user starts swiping on the backspace key, incremented based on how far they
    swipe forwards on the deletion track, and recorded when they release their
    finger.
  </summary>
</histogram>

<histogram name="InputMethod.VirtualKeyboard.WordsPerMinute">
  <owner>rsadam@chromium.org</owner>
  <summary>
    The number of words typed per minute. Recorded when the virtual keyboard is
    closed.
  </summary>
</histogram>

<histogram name="InputMethod.VirtualKeyboard.WordsRestoredPerSwipe"
    units="words">
  <owner>rsadam@chromium.org</owner>
  <summary>
    ChromeOS histogram that tracks the total number of words that were restored
    by swiping backwards on the deletion track. The count is initialized when
    the user starts swiping on the backspace key, incremented based on how far
    they swipe backwards on the deletion track, and recorded when they release
    their finger.
  </summary>
</histogram>

<histogram name="Installer.AttemptsCount.Total" units="count">
  <owner>zeuthen@chromium.org</owner>
  <summary>
    The number of update attempts until the update has been applied. This is
    reported every time the device has completed an update.
  </summary>
</histogram>

<histogram name="Installer.DevModeErrorCodes" enum="UpdateEngineErrorCode">
  <owner>zeuthen@chromium.org</owner>
  <summary>Errors from update_engine process when running in dev mode.</summary>
</histogram>

<histogram name="Installer.DownloadOverheadPercentage" units="%">
  <owner>zeuthen@chromium.org</owner>
  <summary>
    The overhead in downloading extra bytes due to errors/interruptions.
    Expressed as a percentage of the bytes that are actually needed to be
    downloaded for the update to be successful.
  </summary>
</histogram>

<histogram name="Installer.DownloadSourcesUsed"
    enum="UpdateEngineDownloadSources">
  <owner>zeuthen@chromium.org</owner>
  <summary>
    The combinations of protocol and source server that were used to complete a
    successful update.
  </summary>
</histogram>

<histogram name="Installer.FullPayloadAttemptNumber" units="count">
  <owner>zeuthen@chromium.org</owner>
  <summary>
    The number of update attempts with a full update payload until the update
    has been applied. This is reported on every update attempt.
  </summary>
</histogram>

<histogram name="Installer.InstallDateProvisioningSource"
    enum="UpdateEngineInstallDateProvisioningSource">
  <owner>zeuthen@chromium.org</owner>
  <summary>
    The source used to provision the install-date-days value sent to Omaha with
    every request. This is reported when OOBE completes (M34 or later) or when
    upgrading to a version with install-date-days support.
  </summary>
</histogram>

<histogram name="Installer.NormalErrorCodes" enum="UpdateEngineErrorCode">
  <owner>zeuthen@chromium.org</owner>
  <summary>
    Errors from update_engine process when running in normal mode.
  </summary>
</histogram>

<histogram name="Installer.OSAgeDays" units="days">
  <owner>zeuthen@chromium.org</owner>
  <summary>
    The age of the OS, defined as the age of the /etc/lsb-release file. This is
    reported on every update check but at most once a day.
  </summary>
</histogram>

<histogram name="Installer.PayloadAttemptNumber" units="count">
  <owner>zeuthen@chromium.org</owner>
  <summary>
    The number of update attempts until the update has been applied. This is
    reported on every update attempt.
  </summary>
</histogram>

<histogram name="Installer.PayloadFormat" enum="UpdateEnginePayloadFormat">
  <owner>zeuthen@chromium.org</owner>
  <summary>
    The type of update payload used to update the device. The difference between
    &quot;Full&quot; and &quot;Forced Full&quot; is that in the latter, the
    request sent to Omaha included a directive saying that a delta payload
    wasn't accepted. A &quot;Full&quot; payload is one where a delta payload was
    accepted but Omaha provided a full payload. This is reported every time the
    device has completed an update.
  </summary>
</histogram>

<histogram name="Installer.RebootToNewPartitionAttempt" units="count">
  <owner>zeuthen@chromium.org</owner>
  <summary>
    The number of consecutive times a device has failed to boot an update that
    successfully applied. This metric is reported every time the firmware fails
    to boot the slot with the update and fell back to the slot it originally
    updated from.
  </summary>
</histogram>

<histogram name="Installer.SuccessfulMBsDownloadedFrom" units="MB">
  <owner>zeuthen@chromium.org</owner>
  <summary>
    Number of MBs downloaded from during an update that completed successfully.
  </summary>
</histogram>

<histogram name="Installer.TimeToRebootMinutes" units="Minutes">
  <owner>zeuthen@chromium.org</owner>
  <summary>
    Wall-clock duration between when an update has successfully completed (and
    the user is presented with the &quot;reboot arrow&quot;) and when the system
    has booted into the new update. This is reported every time the device is
    rebooted after an update has been applied.
  </summary>
</histogram>

<histogram name="Installer.TotalMBsDownloadedFrom" units="MB">
  <owner>zeuthen@chromium.org</owner>
  <summary>
    Total number of MBs downloaded since the last successful update. This also
    includes all the bytes downloaded during any prior failed attempts.
  </summary>
</histogram>

<histogram name="Installer.UpdateDurationMinutes" units="Minutes">
  <owner>zeuthen@chromium.org</owner>
  <summary>
    Absolute wall-clock time duration it took for the update to complete from
    the time an update first began.  It includes not just the time the device
    was up, but also includes the time the device spent sleeping.
  </summary>
</histogram>

<histogram name="Installer.UpdateDurationUptimeMinutes" units="Minutes">
  <owner>zeuthen@chromium.org</owner>
  <summary>
    Uptime duration it took for the update to complete from the time an update
    first began.  It does not include the time the device spent sleeping, but it
    does include the uptime spent in waiting for the hourly update checks to
    happen.
  </summary>
</histogram>

<histogram name="Installer.UpdateNumReboots" units="count">
  <owner>zeuthen@chromium.org</owner>
  <summary>
    Number of times the device was rebooted by the user since an update began
    and until it completed successfully.
  </summary>
</histogram>

<histogram name="Installer.UpdatesAbandonedCount" units="count">
  <owner>zeuthen@chromium.org</owner>
  <summary>
    The number of update attempts that didn't complete because a newer update
    was detected during the update operation. This is reported every time the
    device has completed an update.
  </summary>
</histogram>

<histogram name="Installer.UpdatesAbandonedEventCount" units="count">
  <owner>zeuthen@chromium.org</owner>
  <summary>
    The number of consecutive different abandoned update payloads since the last
    successful update. This is reported every time an update payload is
    abandoned because a newer update payload is available.
  </summary>
</histogram>

<histogram name="Installer.UpdateURLSwitches" units="count">
  <owner>zeuthen@chromium.org</owner>
  <summary>
    Number of times the download URLs were switched due to failures.
  </summary>
</histogram>

<histogram name="InstallSigner.InvalidCount">
  <obsolete>
    Deprecated 4/2015. It appears the code at some point changed to use the
    histogram name 'ExtensionInstallSigner.InvalidCount' and we forgot to update
    this histogram name.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    This is a count of the number of ids that we asked to be signed which the
    server response indicated were not in the webstore.
  </summary>
</histogram>

<histogram name="InstallSigner.InvalidSignature">
  <obsolete>
    Deprecated 1/2014 (crbug.com/333934). Replaced by
    ExtensionInstallSigner.ResultWasValid.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The extensions install signer got a well-formed result from the server but
    the signature check on it failed.
  </summary>
</histogram>

<histogram name="InstallVerifier.CallbackInvalidSignature">
  <obsolete>
    Deprecated 1/2014 (crbug.com/333934). Replaced by
    ExtensionInstallVerifier.GetSignatureResult.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The extension install verifier tried to get a new signature and received a
    response but it wasn't properly signed.
  </summary>
</histogram>

<histogram name="InstallVerifier.CallbackNoSignature">
  <obsolete>
    Deprecated 1/2014 (crbug.com/333934). Replaced by
    ExtensionInstallVerifier.GetSignatureResult.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The extension install verifier tried to get a new signature but was unable
    to (network error contacting the server, response from server was malformed,
    etc.).
  </summary>
</histogram>

<histogram name="InstallVerifier.CallbackValidSignature">
  <obsolete>
    Deprecated 1/2014 (crbug.com/333934). Replaced by
    ExtensionInstallVerifier.GetSignatureResult.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The extension install verifier got a new signature from the server that was
    valid.
  </summary>
</histogram>

<histogram name="InstallVerifier.InitGoodSignature">
  <obsolete>
    Deprecated 1/2014 (crbug.com/333934). Replaced by
    ExtensionInstallVerifier.InitResult.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The extension install verifier found a valid signature at startup, and this
    is a count of the number of signed ids it contained.
  </summary>
</histogram>

<histogram name="InstallVerifier.InitInvalidSignature">
  <obsolete>
    Deprecated 1/2014 (crbug.com/333934). Replaced by
    ExtensionInstallVerifier.InitResult.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The extension install verifier found a signature in the prefs at startup,
    and it parsed properly, but it was invalid (some ids may have been
    added/removed, could not verify it was signed with the correct private key,
    etc.).
  </summary>
</histogram>

<histogram name="InstallVerifier.InitNoSignature">
  <obsolete>
    Deprecated 1/2014 (crbug.com/333934). Replaced by
    ExtensionInstallVerifier.InitResult.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The extension install verifier did not find any signature in the prefs at
    startup.
  </summary>
</histogram>

<histogram name="InstallVerifier.InitUnparseablePref">
  <obsolete>
    Deprecated 1/2014 (crbug.com/333934). Replaced by
    ExtensionInstallVerifier.InitResult.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The extension install verifier found a signature in the prefs at startup,
    but it wasn't parseable (missing/wrong format of required keys, etc.).
  </summary>
</histogram>

<histogram name="InstallVerifier.SignatureFailedButNotEnforcing">
  <obsolete>
    Deprecated 1/2014 (crbug.com/333934). Replaced by
    ExtensionInstallVerifier.MustRemainDisabled.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The extension install verifier would have disabled an extension but is not
    in enforcement mode.
  </summary>
</histogram>

<histogram name="InstanceID.DeleteToken.CompleteTime" units="ms">
  <owner>jianli@chromium.org</owner>
  <summary>
    Length of time taken to complete the DeleteToken request successfully. If
    the request is retried multiple times, the length of time is counted for the
    last successful retry.
  </summary>
</histogram>

<histogram name="InstanceID.DeleteToken.RequestStatus"
    enum="GCMUnregistrationRequestStatus">
  <owner>juyik@chromium.org</owner>
  <summary>Status code of the outcome of DeleteToken request.</summary>
</histogram>

<histogram name="InstanceID.DeleteToken.RetryCount">
  <owner>jianli@chromium.org</owner>
  <summary>Number of retries before DeleteToken succeeds.</summary>
</histogram>

<histogram name="InstanceID.Enabled" enum="BooleanEnabled">
  <owner>jianli@chromium.org</owner>
  <summary>
    Whether the Instance ID API is enabled. Checked when a chrome.instanceID
    function is called.
  </summary>
</histogram>

<histogram name="InstanceID.GetToken.CompleteTime" units="ms">
  <owner>jianli@chromium.org</owner>
  <summary>
    Length of time taken to complete the GetToken request successfully. If the
    request is retried multiple times, the length of time is counted for the
    last successful retry.
  </summary>
</histogram>

<histogram name="InstanceID.GetToken.RequestStatus"
    enum="GCMUnregistrationRequestStatus">
  <owner>juyik@chromium.org</owner>
  <summary>Status code of the outcome of GetToken request.</summary>
</histogram>

<histogram name="InstanceID.GetToken.RetryCount">
  <owner>jianli@chromium.org</owner>
  <summary>Number of retries before GetToken succeeds.</summary>
</histogram>

<histogram name="InstanceID.RestoredIDCount">
  <owner>jianli@chromium.org</owner>
  <summary>
    Number of Instance IDs restored from the persistent store at startup.
  </summary>
</histogram>

<histogram name="InstanceID.RestoredTokenCount">
  <owner>jianli@chromium.org</owner>
  <summary>
    Number of InstanceID tokens restored from the persistent store at startup.
  </summary>
</histogram>

<histogram name="Instant.InstantControllerEvent" enum="InstantControllerEvent">
  <obsolete>
    Deprecated 04/2016 as doesn't have data nor owner.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Records various events of interest in the InstantController. E.g. When URLs
    are blacklisted.
  </summary>
</histogram>

<histogram name="Instant.SessionsStorageNamespace"
    enum="InstantSessionStorageNamespace">
  <obsolete>
    Deprecated 04/2016 as doesn't have data nor owner.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    How often an Instant preview is committed onto a different tab than it was
    created from.
  </summary>
</histogram>

<histogram name="Instant.TimeToFirstShow" units="ms">
  <obsolete>
    Deprecated 04/2016 as doesn't have data nor owner.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The time between the first Omnibox interaction and when the Instant preview
    shows. If the instant preview was already showing when the user interacted
    with the omnibox, this histogram is not recorded.
  </summary>
</histogram>

<histogram name="InstantExtended.CacheableNTPLoad"
    enum="InstantExtended_CacheableNTPLoad">
  <owner>beaudoin@chromium.org</owner>
  <summary>
    Records a histogram for how often the Cacheable NTP fails to load.
  </summary>
</histogram>

<histogram name="InstantExtended.FallbackToLocalOverlay"
    enum="InstantExtended_FallbackCause">
  <obsolete>
    Depcreated as of 10/2013. No longer relevant since the HTML overlay was
    abandoned.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Records the cause for falling back to a local overlay at the time of
    fallback.
  </summary>
</histogram>

<histogram name="InstantExtended.InstantNavigation"
    enum="InstantExtended_InstantNavigation">
  <obsolete>
    Deprecated as of 10/2013. This histogram is no longer relevant since the
    HTML overlay went away.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Records a histogram for instant extended (Local NTP and Online NTP) and
    non-extended navigations.
  </summary>
</histogram>

<histogram name="InstantExtended.NewOptInState"
    enum="InstantExtended_NewOptInState">
  <obsolete>
    Deprecated as of 11/2013.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Records, on startup, whether the user has chosen to opt-in to or opt-out of
    InstantExtended via chrome://flags.
  </summary>
</histogram>

<histogram name="InstantExtended.OptInState" enum="InstantExtended_OptInState">
  <obsolete>
    Deprecated 2013-06. As of m30 use InstantExtended.NewOptInState.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Records, on startup, whether the user has chosen to opt-in to or opt-out of
    InstantExtended via chrome://flags.
  </summary>
</histogram>

<histogram name="InstantExtended.PercentageMatchQuerytoQuery" units="%">
  <obsolete>
    Deprecated 2013-07. Please see
    InstantExtended.PercentageMatchV2_QuerytoQuery instead.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Records the number of matching characters at the start of the user's text as
    a percentage of average length between the old and new text when the user
    navigates from a search query to another search query.
  </summary>
</histogram>

<histogram name="InstantExtended.PercentageMatchQuerytoURL" units="%">
  <obsolete>
    Deprecated 2013-07. Please see InstantExtended.PercentageMatchV2_QuerytoURL
    instead.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Records the number of matching characters at the start of the user's text as
    a percentage of average length between the old and new text when the user
    navigates from a search query to a url. Example: Accidental search for
    google.con, then navigation to google.com.
  </summary>
</histogram>

<histogram name="InstantExtended.PercentageMatchURLtoQuery" units="%">
  <obsolete>
    Deprecated 2013-07. Please see InstantExtended.PercentageMatchV2_URLtoQuery
    instead.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Records the number of matching characters at the start of the user's text as
    a percentage of average length between the old and new text when the user
    navigates from a url to a search query.
  </summary>
</histogram>

<histogram name="InstantExtended.PercentageMatchURLtoURL" units="%">
  <obsolete>
    Deprecated 2013-07. Please see InstantExtended.PercentageMatchV2_URLtoURL
    instead.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Records the number of matching characters at the start of the user's text as
    a percentage of average length between the old and new text when the user
    navigates from a url to another url.
  </summary>
</histogram>

<histogram name="InstantExtended.PercentageMatchV2_QuerytoQuery" units="%">
  <owner>mpearson@chromium.org</owner>
  <summary>
    Records the number of matching characters at the start of the user's text as
    a percentage of average length between the old and new text when the user
    navigates from a search query to another search query.
  </summary>
</histogram>

<histogram name="InstantExtended.PercentageMatchV2_QuerytoURL" units="%">
  <owner>mpearson@chromium.org</owner>
  <summary>
    Records the number of matching characters at the start of the user's text as
    a percentage of average length between the old and new text when the user
    navigates from a search query to a url. Example: Accidental search for
    google.con, then navigation to google.com.
  </summary>
</histogram>

<histogram name="InstantExtended.PercentageMatchV2_URLtoQuery" units="%">
  <owner>mpearson@chromium.org</owner>
  <summary>
    Records the number of matching characters at the start of the user's text as
    a percentage of average length between the old and new text when the user
    navigates from a url to a search query.
  </summary>
</histogram>

<histogram name="InstantExtended.PercentageMatchV2_URLtoURL" units="%">
  <owner>mpearson@chromium.org</owner>
  <summary>
    Records the number of matching characters at the start of the user's text as
    a percentage of average length between the old and new text when the user
    navigates from a url to another url.
  </summary>
</histogram>

<histogram name="InstantExtended.PrefValue" enum="BooleanEnabled">
  <obsolete>
    Deprecated 2013-06. This preference has not been exposed or used for months,
    and we do not plan to use it in the future.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Records, on startup, the value of the &quot;Allow your search engine to
    provide Instant result&quot; preference setting for the first profile
    loaded.
  </summary>
</histogram>

<histogram name="InstantSearchClicks.PreviewScrollState"
    enum="InstantSearchClicks_PreviewScrollState">
  <obsolete>
    Deprecated as of 7/2015.
  </obsolete>
  <owner>ksimbili@chromium.org</owner>
  <summary>
    Records the scroll state on the preview page when instant search clicks
    feature is triggered.
  </summary>
</histogram>

<histogram name="InstantSearchClicks.ReasonForSwap"
    enum="InstantSearchClicks_ReasonForSwap">
  <obsolete>
    Deprecated as of 7/2015.
  </obsolete>
  <owner>ksimbili@chromium.org</owner>
  <summary>
    Records the reason that triggered the page swap when instant search clicks
    feature is triggered.
  </summary>
</histogram>

<histogram name="InstantSearchClicks.TimeInPreview" units="ms">
  <obsolete>
    Deprecated as of 7/2015.
  </obsolete>
  <owner>ksimbili@chromium.org</owner>
  <summary>
    The time spent by the user in preview page before swapping to original or
    navigating out of preview page.
  </summary>
</histogram>

<histogram name="InstantSearchClicks.TimeToSwap" units="ms">
  <obsolete>
    Deprecated as of 7/2015.
  </obsolete>
  <owner>ksimbili@chromium.org</owner>
  <summary>
    The time it took for swap to trigger for all swaps. The is the time between
    preview page load start to preview page swap with the original page.
  </summary>
</histogram>

<histogram name="InterProcessTimeTicks.BrowserAhead" units="ms">
  <owner>ppi@chromium.org</owner>
  <summary>
    Estimated additive skew between processes, recorded if the browser process
    is ahead (higher TimeTicks value) than the renderer process.
  </summary>
</histogram>

<histogram name="InterProcessTimeTicks.BrowserBehind" units="ms">
  <owner>ppi@chromium.org</owner>
  <summary>
    Estimated additive skew between processes, recorded if the browser process
    is behind (lower TimeTicks value) than the renderer process.
  </summary>
</histogram>

<histogram name="InterProcessTimeTicks.IsSkewAdditive" enum="Boolean">
  <owner>ppi@chromium.org</owner>
  <summary>
    True iff the conversion from the browser process TimeTicks to renderer
    process TimeTicks is done by adding a constant, without scaling.
  </summary>
</histogram>

<histogram name="interstitial.authority_invalid_time" units="ms">
  <obsolete>
    Removed on 8/1/13.
  </obsolete>
  <owner>felt@chromium.org</owner>
  <summary>
    The time between the SSL interstitial display and the user decision, which
    may be either accept or deny.  This is only recorded for overridable SSL
    warnings with a CERT_AUTHORITY_INVALID warning. Timing begins when user
    first focuses on the page.
  </summary>
</histogram>

<histogram name="interstitial.captive_portal"
    enum="CaptivePortalBlockingPageEvent">
  <owner>meacer@chromium.org</owner>
  <summary>
    User action when the user is shown a captive portal error page.
  </summary>
</histogram>

<histogram name="interstitial.common_name_invalid_time" units="ms">
  <obsolete>
    Removed on 8/1/13.
  </obsolete>
  <owner>felt@chromium.org</owner>
  <summary>
    The time between the SSL interstitial display and the user decision, which
    may be either accept or deny.  This is only recorded for overridable SSL
    warnings with a CERT_COMMON_NAME_INVALID warning. Timing begins when user
    first focuses on the page.
  </summary>
</histogram>

<histogram name="interstitial.date_invalid_time" units="ms">
  <obsolete>
    Removed on 8/1/13.
  </obsolete>
  <owner>felt@chromium.org</owner>
  <summary>
    The time between the SSL interstitial display and the user decision, which
    may be either accept or deny.  This is only recorded for overridable SSL
    warnings with a CERT_DATE_INVALID warning.  Timing begins when user first
    focuses on the page.
  </summary>
</histogram>

<histogram name="interstitial.decision" enum="SecurityInterstitialDecision">
  <owner>felt@chromium.org</owner>
  <summary>
    User decision when presented with a security interstitial. As of M44,
    subresource interstitials were split into their own entries. As of M52,
    social_engineering_ads* and social_engineering_landing* interstitial reasons
    are split into their own entries from phishing*.
  </summary>
</histogram>

<histogram name="interstitial.decision.repeat_visit"
    enum="SecurityInterstitialDecision">
  <owner>felt@chromium.org</owner>
  <summary>
    User decision when presented with a security interstitial, on a site that
    the user had previously visited.  As of M44, subresource interstitials were
    split into their own entries. As of M52, social_engineering_ads* and
    social_engineering_landing* interstitial reasons are split into their own
    entries from phishing*.
  </summary>
</histogram>

<histogram name="interstitial.interaction"
    enum="SecurityInterstitialInteraction">
  <owner>felt@chromium.org</owner>
  <summary>
    User interactions with a security interstitial.  As of M44, subresource
    interstitials were split into their own entries. As of M52,
    social_engineering_ads* and social_engineering_landing* interstitial reasons
    are split into their own entries from phishing*.
  </summary>
</histogram>

<histogram name="interstitial.ssl" enum="SSLResponseTypesV2">
  <obsolete>
    Replaced by interstitial.ssl_overridable.* and
    interstitial.ssl_nonoverridable.* in Jan 2015 (M42).
  </obsolete>
  <owner>felt@chromium.org</owner>
  <summary>
    User action when the user is shown a SSL interstitial. SHOW_ALL and MORE
    refer to the total number of SSL errors; all of the other numbers pertain to
    the number of actions related to SSL errors that are overridable. The counts
    do not sum to 100%; SHOW_ALL is a superset of SHOW_OVERRIDABLE, which in
    turn will be a supserset of the PROCEED/DONT_PROCEED variables.
    SHOW_UNDERSTAND is only being used by an experimental field trial. The
    interstitials due to captive portals are now recorded in the
    &quot;SSLCaptivePortal&quot;.
  </summary>
</histogram>

<histogram name="interstitial.ssl.captive_portal" enum="SSLCaptivePortal">
  <owner>meacer@chromium.org</owner>
  <summary>
    Record possible states of captive portals. This histogram is emitted
    (possibly multiple times to different buckets) whenever a ssl interstitial
    page is displayed and captive portal detection is enabled. The captive
    portal technique forces a client on a network to see a special web page
    (usually for authentication purposes) before using the internet normally.
  </summary>
</histogram>

<histogram name="interstitial.ssl.cause.nonoverridable" enum="SSLErrorCauses">
  <owner>felt@chromium.org</owner>
  <summary>
    Possible non-attack causes of the non-overridable SSL interstitial. Many
    errors are not reported in this histogram and new errors may be added over
    time, therefore one should not look at the breakdown of this histogram (one
    bucket divided by the sum) because that will be inaccurate. Instead, one
    should look at each bucket count divided by the count of the ssl errors of
    that type. E.g. WWW mismatch is recorded only when the ssl error is
    CERT_COMMON_NAME_INVALID, so one should look at the bucket count of WWW
    mismatch divided by the bucket count of CERT_COMMON_NAME_INVALID in the
    histogram interstitial.ssl_error_type.
  </summary>
</histogram>

<histogram name="interstitial.ssl.cause.overridable" enum="SSLErrorCauses">
  <owner>felt@chromium.org</owner>
  <summary>
    Possible non-attack causes of the overridable SSL interstitial. Many errors
    are not reported in this histogram and new errors may be added over time,
    therefore one should not look at the breakdown of this histogram (one bucket
    divided by the sum) because that will be inaccurate. Instead, one should
    look at each bucket count divided by the count of the ssl errors of that
    type. E.g. WWW mismatch is recorded only when the ssl error is
    CERT_COMMON_NAME_INVALID, so one should look at the bucket count of WWW
    mismatch divided by the bucket count of CERT_COMMON_NAME_INVALID in the
    histogram interstitial.ssl_error_type.
  </summary>
</histogram>

<histogram name="interstitial.ssl.clockstate.build_time" enum="ClockStates">
  <owner>mab@chromium.org</owner>
  <summary>
    State of the system clock, as inferred from the build timestamp, when an SSL
    CERT_INVALID_DATE error is seen.
  </summary>
</histogram>

<histogram name="interstitial.ssl.clockstate.network" enum="ClockStates">
  <owner>mab@chromium.org</owner>
  <summary>
    State of the system clock, relative to network time, when an SSL
    CERT_INVALID_DATE error is seen.
  </summary>
</histogram>

<histogram name="interstitial.ssl.connection_type"
    enum="ResourcePrefetchPredictorNetworkType">
  <owner>felt@chromium.org</owner>
  <summary>
    The histogram shows the connection types associated with SSL warnings. E.g.,
    do more warnings occur on WiFi?
  </summary>
</histogram>

<histogram name="interstitial.ssl.did_user_revoke_decisions"
    enum="BooleanRevoked">
  <owner>jww@chromium.org</owner>
  <summary>
    Specifies when a user enters the page info menu whether or not the user
    pressed the SSL decisions revoke button. This can only by done if the user
    is in the &quot;Remember Certificate Error Decisions&quot; experiment. This
    is logged when the page info UI is closed.
  </summary>
</histogram>

<histogram name="interstitial.ssl.expiration_and_decision.nonoverridable"
    enum="SSLIsExpiredAndDecision">
  <owner>jww@chromium.org</owner>
  <summary>
    Records when a user has made a decision to proceed on a nonoverridable SSL
    interstitial. Also records whether a prior decision had been made but the
    decision expired.
  </summary>
</histogram>

<histogram name="interstitial.ssl.expiration_and_decision.overridable"
    enum="SSLIsExpiredAndDecision">
  <owner>jww@chromium.org</owner>
  <summary>
    Records when a user has made a decision to proceed on an overridable SSL
    interstitial. Also records whether a prior decision had been made but the
    decision expired.
  </summary>
</histogram>

<histogram name="interstitial.ssl.good_cert_seen" enum="SSLGoodCertSeenEvent">
  <owner>jww@chromium.org</owner>
  <summary>
    Emitted when a good certificate is seen, specifying whether the user already
    gave an exception for a bad certificate for the same host.
  </summary>
</histogram>

<histogram name="interstitial.ssl.severity_score.authority_invalid" units="%">
  <obsolete>
    Deprecated Jan 2015 (M42).
  </obsolete>
  <owner>felt@chromium.org</owner>
  <summary>
    The likelihood of a |CERT_AUTHORITY_INVALID| error being an attack.
  </summary>
</histogram>

<histogram name="interstitial.ssl.severity_score.common_name_invalid" units="%">
  <obsolete>
    Deprecated Jan 2015 (M42).
  </obsolete>
  <owner>felt@chromium.org</owner>
  <summary>
    The likelihood of a |CERT_COMMON_NAME_INVALID| error being an attack.
  </summary>
</histogram>

<histogram name="interstitial.ssl.severity_score.date_invalid" units="%">
  <obsolete>
    Deprecated Jan 2015 (M42).
  </obsolete>
  <owner>felt@chromium.org</owner>
  <summary>
    The likelihood of a |CERT_DATE_INVALID| error being an attack.
  </summary>
</histogram>

<histogram name="interstitial.ssl_accept_time" units="ms">
  <obsolete>
    Removed on 8/1/13.
  </obsolete>
  <owner>felt@chromium.org</owner>
  <summary>
    The time between the SSL interstitial display and the user decision, when
    the user accepts the SSL warning.  This is only recorded for overridable SSL
    warnings.  Timing begins when user first focuses on the page.
  </summary>
</histogram>

<histogram name="interstitial.ssl_error_handler" enum="SSLErrorHandlerEvent">
  <owner>meacer@chromium.org</owner>
  <summary>The type of action that the SSL error handler takes.</summary>
</histogram>

<histogram name="interstitial.ssl_error_type" enum="SSLErrorTypes">
  <owner>felt@chromium.org</owner>
  <summary>
    The type of SSL error that the user encounters.  This is recorded for all
    SSL warnings, regardless of whether they are overridable.
  </summary>
</histogram>

<histogram name="interstitial.ssl_reject_time" units="ms">
  <obsolete>
    Removed on 8/1/13.
  </obsolete>
  <owner>felt@chromium.org</owner>
  <summary>
    The time between the SSL interstitial display and the user decision, when
    the user rejects the SSL warning.  This is only recorded for overridable SSL
    warnings.  Timing begins when user first focuses on the page.
  </summary>
</histogram>

<histogram name="Invalidations.GCMUpstreamRequest"
    enum="GCMUpstreamMessageStatus">
  <owner>nyquist@chromium.org</owner>
  <owner>khushalsagar@chromium.org</owner>
  <summary>
    Status of sending outgoing invalidation message through GCM upsteam.
  </summary>
</histogram>

<histogram name="Invalidations.NetworkChannel"
    enum="InvalidationNetworkChannel">
  <owner>pavely@chromium.org</owner>
  <summary>Network channel used for invalidations.</summary>
</histogram>

<histogram name="IOS.ShareExtension.ReceivedEntriesCount" units="files">
  <owner>olivierrobin@chromium.org</owner>
  <summary>
    The number of items received simultaneously in Chrome from the IOS share
    extension.
  </summary>
</histogram>

<histogram name="IOS.ShareExtension.ReceivedEntry"
    enum="IOSShareExtensionReceivedEntryType">
  <owner>olivierrobin@chromium.org</owner>
  <summary>Type of the item received from the iOS share extension.</summary>
</histogram>

<histogram name="IOS.ShareExtension.ReceivedEntryDelay" units="ms">
  <owner>olivierrobin@chromium.org</owner>
  <summary>
    The delay in milliseconds between the item creation in the extension and its
    processing in Chrome.
  </summary>
</histogram>

<histogram name="IPC.AttachmentBrokerPrivileged.BrokerAttachmentError"
    enum="IPCAttachmentBrokerPrivilegedBrokerAttachmentError">
  <owner>erikchen@chromium.org</owner>
  <summary>
    Errors that the privileged attachment broker encounters while trying to
    broker attachments.
  </summary>
</histogram>

<histogram name="IPC.AttachmentBrokerUnprivileged.BrokerAttachmentError"
    enum="IPCAttachmentBrokerUnprivilegedBrokerAttachmentError">
  <owner>erikchen@chromium.org</owner>
  <summary>
    Errors that an unprivileged attachment broker encounters while trying to
    broker attachments.
  </summary>
</histogram>

<histogram name="JSDialogs.CountOfJSDialogMessageCharacters">
  <owner>avi@chromium.org</owner>
  <summary>
    The count of the number of characters in JavaScript dialog messages.
  </summary>
</histogram>

<histogram name="JSDialogs.CountOfJSDialogMessageNewlines">
  <owner>avi@chromium.org</owner>
  <summary>
    The count of the number of newlines in JavaScript dialog messages. (This
    does not count breaks inserted by the UI toolkit in wrapping the messages.)
  </summary>
</histogram>

<histogram name="JSDialogs.CountOfOnBeforeUnloadMessageCharacters">
  <obsolete>
    Deprecated 2016-02.
  </obsolete>
  <owner>avi@chromium.org</owner>
  <summary>
    The count of the number of characters in onbeforeunload messages.
  </summary>
</histogram>

<histogram name="JSDialogs.CountOfOnBeforeUnloadMessageNewlines">
  <obsolete>
    Deprecated 2016-02.
  </obsolete>
  <owner>avi@chromium.org</owner>
  <summary>
    The count of the number of newlines in onbeforeunload messages. (This does
    not count breaks inserted by the UI toolkit in wrapping the messages.)
  </summary>
</histogram>

<histogram
    name="JSDialogs.FineTiming.TimeBetweenDialogClosedAndNextDialogCreated"
    units="ms">
  <owner>joenotcharles@chromium.org</owner>
  <summary>
    Fine-grained (in msec) time between closing a Javascript dialog and opening
    another, to track very frequent dialogs.
  </summary>
</histogram>

<histogram
    name="JSDialogs.FineTiming.TimeBetweenDialogCreatedAndNextDialogCreated"
    units="ms">
  <owner>joenotcharles@chromium.org</owner>
  <summary>
    Fine-grained (in msec) time between opening a Javascript dialog and opening
    another, to track very frequent dialogs.
  </summary>
</histogram>

<histogram
    name="JSDialogs.FineTiming.TimeBetweenDialogCreatedAndSameDialogClosed"
    units="ms">
  <owner>joenotcharles@chromium.org</owner>
  <summary>
    Fine-grained (in msec) time between opening a Javascript dialog and closing
    it, to track very short-lived dialogs.
  </summary>
</histogram>

<histogram name="JSDialogs.OnBeforeUnloadStayVsLeave" enum="StayVsLeave">
  <owner>avi@chromium.org</owner>
  <summary>
    For onbeforeunload dialogs, the user's choice between staying on the page
    and leaving it.
  </summary>
</histogram>

<histogram name="Keyboard.KeystrokeDeltas" units="ms">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The time between keystrokes in Aura text fields. The only keystrokes that
    are measured are ones that produce a printable character and are not over 5
    seconds apart.
  </summary>
</histogram>

<histogram name="Kiosk.LaunchType" enum="KioskLaunchType">
  <owner>xiyuan@chromium.org</owner>
  <owner>blumberg@chromium.org</owner>
  <summary>
    Records kiosk launches, whether it is an enterprise or consumer kiosk and
    whether it is an auto launch or manual launch.
  </summary>
</histogram>

<histogram name="LanguageUsage.AcceptLanguage" enum="LanguageCode">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>Accept languages.</summary>
</histogram>

<histogram name="LanguageUsage.ApplicationLanguage" enum="LanguageCode">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>Application languages used for UI.</summary>
</histogram>

<histogram name="Launch.HomeScreen" enum="LaunchFromHomeScreen">
  <owner>dfalcantara@chromium.org</owner>
  <summary>
    Records how Chrome handled a launch from an Android Home screen shortcut.
  </summary>
</histogram>

<histogram name="Launch.HomeScreenSource" enum="LaunchFromHomeScreenSource">
  <owner>dominickn@chromium.org</owner>
  <summary>
    Records the source of an Android homescreen launch intent used to launch
    Chrome.
  </summary>
</histogram>

<histogram name="Launch.IntentFlags" enum="LaunchIntentFlags">
  <owner>dfalcantara@chromium.org</owner>
  <summary>
    Records flags (and combinations of flags) that were attached to the Intent
    that started ChromeLauncherActivity.
  </summary>
</histogram>

<histogram name="Launch.InvalidIntent" enum="BooleanHit">
  <owner>dfalcantara@chromium.org</owner>
  <summary>
    Records whether or not an invalid Android Intent was fired to launch Chrome.
    (http://crbug.com/445136)
  </summary>
</histogram>

<histogram name="Layout.MicroSecondsPerComplexText" units="microseconds">
  <owner>benjhayden@chromium.org</owner>
  <summary>
    For layouts that considered at least 100 nodes, at least half of which were
    complex text fragments, the average number of microseconds spent laying out
    each node.
  </summary>
</histogram>

<histogram name="Layout.MicroSecondsPerFloat" units="microseconds">
  <owner>benjhayden@chromium.org</owner>
  <summary>
    For layouts that considered at least 100 nodes, at least half of which were
    floats, the average number of microseconds spent laying out each node.
  </summary>
</histogram>

<histogram name="Layout.MicroSecondsPerNode" units="microseconds">
  <owner>benjhayden@chromium.org</owner>
  <summary>
    For layouts that considered at least 100 nodes, the average number of
    microseconds spent laying out each node.
  </summary>
</histogram>

<histogram name="Layout.MicroSecondsPerPositioned" units="microseconds">
  <owner>benjhayden@chromium.org</owner>
  <summary>
    For layouts that considered at least 100 nodes, at least half of which were
    fixed or absolute positioned, the average number of microseconds spent
    laying out each node.
  </summary>
</histogram>

<histogram name="Layout.MicroSecondsPerSimpleText" units="microseconds">
  <owner>benjhayden@chromium.org</owner>
  <summary>
    For layouts that considered at least 100 nodes, at least half of which were
    simple text fragments, the average number of microseconds spent laying out
    each node.
  </summary>
</histogram>

<histogram name="Layout.MicroSecondsPerTD" units="microseconds">
  <owner>benjhayden@chromium.org</owner>
  <summary>
    For layouts that considered at least 100 nodes, at least half of which were
    table cells, the average number of microseconds spent laying out each node.
  </summary>
</histogram>

<histogram name="Layout.ScrollAnchor.AdjustedScrollOffset" enum="BooleanHit">
  <owner>skobes@chromium.org</owner>
  <summary>
    Records the number of times ScrollAnchor adjusts the scroll offset.
  </summary>
</histogram>

<histogram name="Layout.ScrollAnchor.TimeToFindAnchor" units="microseconds">
  <owner>ymalik@chromium.org</owner>
  <summary>The time it took to find a suitable anchor element.</summary>
</histogram>

<histogram name="LevelDB.Open" enum="LevelDBStatus">
  <owner>cmumford@chromium.org</owner>
  <summary>The result of an open attempt of a leveldb.</summary>
</histogram>

<histogram name="LevelDBEnv.All.SafeThreadAccess" units="accesses">
  <obsolete>
    Deprecated 2013-10. No thread-unsafety was found.
  </obsolete>
  <owner>dgrogan@chromium.org</owner>
  <summary>
    Linux and CrOS use unlocked_stdio(3). If it is used unsafely, record it
    here. If there is no record of unsafety after chrome 29 has been in the
    stable channel for a few weeks then revert this change.
  </summary>
</histogram>

<histogram name="LevelDBEnv.IDB.IOError" enum="LevelDBIOErrorMethods">
  <owner>dgrogan@chromium.org</owner>
  <summary>
    Methods where leveldb's Chromium environment has IO errors when being used
    by IndexedDB.
  </summary>
</histogram>

<histogram name="LevelDBEnv.IDB.IOError." enum="PlatformFileError">
  <owner>dgrogan@chromium.org</owner>
  <summary>
    PlatformFileErrors encountered by a single leveldb env method.
  </summary>
</histogram>

<histogram name="LevelDBEnv.IDB.IOError.BFE" enum="PlatformFileError">
  <owner>cmumford@chromium.org</owner>
  <summary>
    Errors (base::File::Error) encountered by a single leveldb env method.
  </summary>
</histogram>

<histogram name="LevelDBEnv.IDB.IOError.NewLogger" enum="OSAgnosticErrno">
  <owner>dgrogan@chromium.org</owner>
  <obsolete>
    Deprecated 2015-05. As of M43 use LevelDBEnv.IDB.IOError.BFE.NewLogger.
  </obsolete>
  <summary>Errno of errors encountered in NewLogger.</summary>
</histogram>

<histogram name="LevelDBEnv.IDB.IOError.NewSequentialFile"
    enum="OSAgnosticErrno">
  <owner>dgrogan@chromium.org</owner>
  <obsolete>
    Deprecated 2015-05. As of M43 use
    LevelDBEnv.IDB.IOError.BFE.NewSequentialFile.
  </obsolete>
  <summary>Errno of errors encountered in NewSequentialFile.</summary>
</histogram>

<histogram name="LevelDBEnv.IDB.IOError.RandomAccessFile"
    enum="PlatformFileError">
  <obsolete>
    Deprecated 2013-04. As of m28 use
    LevelDBEnv.IDB.IOError.NewRandomAccessFile.
  </obsolete>
  <owner>dgrogan@chromium.org</owner>
  <summary>File errors in leveldb IDBEnv's NewRandomAccessFile method.</summary>
</histogram>

<histogram name="LevelDBEnv.IDB.IOError.WritableFileAppend"
    enum="OSAgnosticErrno">
  <owner>dgrogan@chromium.org</owner>
  <obsolete>
    Deprecated 2015-05. As of M43 use
    LevelDBEnv.IDB.IOError.BFE.WritableFileAppend.
  </obsolete>
  <summary>Errno of errors encountered in WritableFileAppend.</summary>
</histogram>

<histogram name="LevelDBEnv.IDB.IOError.WritableFileFlush"
    enum="OSAgnosticErrno">
  <owner>dgrogan@chromium.org</owner>
  <obsolete>
    Deprecated 2015-05. As of M43 use
    LevelDBEnv.IDB.IOError.BFE.WritableFileFlush.
  </obsolete>
  <summary>Errno of errors encountered in WritableFileFlush.</summary>
</histogram>

<histogram name="LevelDBEnv.IDB.LockFileAncestorsNotFound" units="directories">
  <owner>dgrogan@chromium.org</owner>
  <summary>
    Number of directories missing when IDB LevelDBEnv tries to create a Lock
    file.
  </summary>
</histogram>

<histogram name="LevelDBEnv.IDB.MaxFDs" units="files">
  <owner>dgrogan@chromium.org</owner>
  <summary>
    File descriptor limit recorded every time LevelDB calls NewRandomAccessFile
    for IndexedDB.
  </summary>
</histogram>

<histogram name="LevelDBEnv.IDB.MissingFiles" units="files">
  <owner>dgrogan@chromium.org</owner>
  <summary>
    Number of backup files found without corresponding ldb files. As measured by
    GetChildren when used in IndexedDB.
  </summary>
</histogram>

<histogram name="LevelDBEnv.IDB.RetryRecoveredFromErrorIn"
    enum="PlatformFileError">
  <owner>dgrogan@chromium.org</owner>
  <summary>
    When IDB LevelDBEnv successfully retries an operation that had failed,
    record the error from the most recent failed attempt.
  </summary>
</histogram>

<histogram name="LevelDBEnv.IDB.Table" enum="BooleanSuccess">
  <owner>dgrogan@chromium.org</owner>
  <summary>
    Success indicates a successful backup or restore operation for .ldb table
    files when used in IndexedDB.
  </summary>
</histogram>

<histogram name="LevelDBEnv.IDB.TimeTo" units="ms">
  <obsolete>
    Deprecated 2013-04. As of m28 use LevelDBEnv.IDB.TimeUntilSuccessFor.
  </obsolete>
  <owner>dgrogan@chromium.org</owner>
  <summary>
    Time IDB LevelDBEnv slept before successfully completing this operation. 0
    means success on the first try.
  </summary>
</histogram>

<histogram name="LevelDBEnv.IDB.TimeUntilSuccessFor" units="ms">
  <owner>dgrogan@chromium.org</owner>
  <summary>
    Time IDB LevelDBEnv slept before successfully completing this operation. 0
    means success on the first try.
  </summary>
</histogram>

<histogram name="LevelDBEnv.IOError" enum="LevelDBIOErrorMethods">
  <owner>dgrogan@chromium.org</owner>
  <summary>Methods where leveldb's Chromium environment has IO errors.</summary>
</histogram>

<histogram name="LevelDBEnv.IOError." enum="PlatformFileError">
  <owner>dgrogan@chromium.org</owner>
  <obsolete>
    Deprecated 2015-05. As of M43 use LevelDBEnv.IOError.BFE.
  </obsolete>
  <summary>PlatformFileErrors encountered by a single leveldb method.</summary>
</histogram>

<histogram name="LevelDBEnv.IOError.BFE" enum="PlatformFileError">
  <owner>cmumford@chromium.org</owner>
  <summary>
    Errors (base::File::Error) encountered by a single leveldb method.
  </summary>
</histogram>

<histogram name="LevelDBEnv.IOError.NewLogger" enum="OSAgnosticErrno">
  <owner>dgrogan@chromium.org</owner>
  <obsolete>
    Deprecated 2015-05. As of M43 use LevelDBEnv.IOError.BFE.NewLogger.
  </obsolete>
  <summary>Errno of errors encountered in NewLogger.</summary>
</histogram>

<histogram name="LevelDBEnv.IOError.NewSequentialFile" enum="OSAgnosticErrno">
  <owner>dgrogan@chromium.org</owner>
  <obsolete>
    Deprecated 2015-05. As of M43 use LevelDBEnv.IOError.BFE.NewSequentialFile.
  </obsolete>
  <summary>Errno of errors encountered in NewSequentialFile.</summary>
</histogram>

<histogram name="LevelDBEnv.IOError.RandomAccessFile" enum="PlatformFileError">
  <obsolete>
    Deprecated 2013-04. As of m28 use LevelDBEnv.IOError.NewRandomAccessFile.
  </obsolete>
  <owner>dgrogan@chromium.org</owner>
  <summary>
    File errors in leveldb ChromiumEnv's NewRandomAccessFile method.
  </summary>
</histogram>

<histogram name="LevelDBEnv.IOError.WritableFileAppend" enum="OSAgnosticErrno">
  <owner>dgrogan@chromium.org</owner>
  <obsolete>
    Deprecated 2015-05. As of M43 use LevelDBEnv.IOError.BFE.WritableFileAppend.
  </obsolete>
  <summary>Errno of errors encountered in WritableFileAppend.</summary>
</histogram>

<histogram name="LevelDBEnv.IOError.WritableFileFlush" enum="OSAgnosticErrno">
  <owner>dgrogan@chromium.org</owner>
  <obsolete>
    Deprecated 2015-05. As of M43 use LevelDBEnv.IOError.BFE.WritableFileFlush.
  </obsolete>
  <summary>Errno of errors encountered in WritableFileFlush.</summary>
</histogram>

<histogram name="LevelDBEnv.LockFileAncestorsNotFound" units="directories">
  <owner>dgrogan@chromium.org</owner>
  <summary>
    Number of directories missing when Non-IDB LevelDBEnv tries to create a Lock
    file.
  </summary>
</histogram>

<histogram name="LevelDBEnv.MaxFDs" units="files">
  <owner>dgrogan@chromium.org</owner>
  <summary>
    File descriptor limit recorded every time LevelDB calls NewRandomAccessFile
    for clients other than IndexedDB.
  </summary>
</histogram>

<histogram name="LevelDBEnv.MissingFiles" units="files">
  <owner>dgrogan@chromium.org</owner>
  <summary>
    Number of backup files found without corresponding ldb files. As measured by
    GetChildren when used in LevelDB clients other than IndexedDB.
  </summary>
</histogram>

<histogram name="LevelDBEnv.RetryRecoveredFromErrorIn" enum="PlatformFileError">
  <owner>dgrogan@chromium.org</owner>
  <summary>
    When Non-IDB LevelDBEnv successfully retries an operation that had failed,
    record the error from the most recent failed attempt.
  </summary>
</histogram>

<histogram name="LevelDBEnv.ServiceWorker.IOError" enum="LevelDBIOErrorMethods">
  <owner>nhiroki@chromium.org</owner>
  <summary>
    Methods where leveldb's Chromium environment has IO errors when being used
    by ServiceWorker.
  </summary>
</histogram>

<histogram name="LevelDBEnv.ServiceWorker.IOError." enum="PlatformFileError">
  <owner>nhiroki@chromium.org</owner>
  <summary>
    PlatformFileErrors encountered by a single leveldb env method.
  </summary>
</histogram>

<histogram name="LevelDBEnv.ServiceWorker.IOError.BFE" enum="PlatformFileError">
  <owner>nhiroki@chromium.org</owner>
  <summary>
    Errors (base::File::Error) encountered by a single leveldb env method.
  </summary>
</histogram>

<histogram name="LevelDBEnv.ServiceWorker.LockFileAncestorsNotFound"
    units="directories">
  <owner>nhiroki@chromium.org</owner>
  <summary>
    Number of directories missing when ServiceWorker LevelDBEnv tries to create
    a Lock file.
  </summary>
</histogram>

<histogram name="LevelDBEnv.ServiceWorker.MaxFDs" units="files">
  <owner>nhiroki@chromium.org</owner>
  <summary>
    File descriptor limit recorded every time LevelDB calls NewRandomAccessFile
    for ServiceWorker.
  </summary>
</histogram>

<histogram name="LevelDBEnv.ServiceWorker.MissingFiles" units="files">
  <owner>nhiroki@chromium.org</owner>
  <summary>
    Number of backup files found without corresponding ldb files. As measured by
    GetChildren when used in ServiceWorker.
  </summary>
</histogram>

<histogram name="LevelDBEnv.ServiceWorker.RetryRecoveredFromErrorIn"
    enum="PlatformFileError">
  <owner>nhiroki@chromium.org</owner>
  <summary>
    When ServiceWorker LevelDBEnv successfully retries an operation that had
    failed, record the error from the most recent failed attempt.
  </summary>
</histogram>

<histogram name="LevelDBEnv.ServiceWorker.Table" enum="BooleanSuccess">
  <owner>nhiroki@chromium.org</owner>
  <summary>
    Success indicates a successful backup or restore operation for .ldb table
    files when used in ServiceWorker.
  </summary>
</histogram>

<histogram name="LevelDBEnv.ServiceWorker.TimeUntilSuccessFor" units="ms">
  <owner>nhiroki@chromium.org</owner>
  <summary>
    Time ServiceWorker LevelDBEnv slept before successfully completing this
    operation. 0 means success on the first try.
  </summary>
</histogram>

<histogram name="LevelDBEnv.Table" enum="BooleanSuccess">
  <owner>dgrogan@chromium.org</owner>
  <summary>
    Success indicates a successful backup or restore operation for .ldb table
    files when used by LevelDB clients other than IndexedDB.
  </summary>
</histogram>

<histogram name="LevelDBEnv.TimeTo" units="ms">
  <obsolete>
    Deprecated 2013-04. As of m28 use LevelDBEnv.TimeUntilSuccessFor.
  </obsolete>
  <owner>dgrogan@chromium.org</owner>
  <summary>
    Time Non-IDB LevelDBEnv slept before successfully completing this operation.
    0 means success on the first try.
  </summary>
</histogram>

<histogram name="LevelDBEnv.TimeUntilSuccessFor" units="ms">
  <owner>dgrogan@chromium.org</owner>
  <summary>
    Time Non-IDB LevelDBEnv slept before successfully completing this operation.
    0 means success on the first try.
  </summary>
</histogram>

<histogram name="LibraryLoader.NativeLibraryHack" enum="BooleanUsage">
  <obsolete>
    Deprecated as of 11/2014, removed from code.
  </obsolete>
  <owner>feng@chromium.org</owner>
  <summary>
    A boolean that indicates whether the workaround of a Sony framework bug was
    used. The metric is Android-specific, and is logged when the browser starts.
    See more details at http://crbug.com/311644.
  </summary>
</histogram>

<histogram name="LibraryLoader.PercentageOfResidentCodeBeforePrefetch"
    units="%">
  <owner>lizeb@chromium.org</owner>
  <summary>
    Percentage of the native library code pages resident in memory. Recorded
    immediately before the library prefetching kicks in, only on Android.
  </summary>
</histogram>

<histogram name="LibraryLoader.PrefetchStatus" enum="BooleanSuccess">
  <owner>lizeb@chromium.org</owner>
  <summary>
    Indicates whether the forking of a child process to prefetch the native
    library succeeded. This metric is Android-specific, and is logged when the
    browser starts.
  </summary>
</histogram>

<histogram name="Linux.GlibcVersion" enum="LinuxGlibcVersion">
  <owner>thestig@chromium.org</owner>
  <summary>
    The version of glibc used. (Linux only) Logged on each start up.
  </summary>
</histogram>

<histogram name="Linux.SandboxStatus" enum="LinuxSandboxStatus">
  <owner>rickyz@chromium.org</owner>
  <summary>
    The Linux sandbox status. This describes what sandboxing features are
    enabled (such as the suid/namespace sandboxes, various namespaces, seccomp
    bpf, ...). Emitted once at startup.
  </summary>
</histogram>

<histogram name="Linux.WindowManager" enum="LinuxWindowManagerName">
  <owner>pkotwicz@chromium.org</owner>
  <summary>
    The window manager used. (Linux only) Logged on each start up.
  </summary>
</histogram>

<histogram name="LocalDiscovery.ClientRestartAttempts">
  <owner>noamsml@chromium.org</owner>
  <owner>vitalybuka@chromium.org</owner>
  <summary>Records number of attempts to start local discovery.</summary>
</histogram>

<histogram name="LocalDiscovery.DetectorRestartTime" units="ms">
  <owner>noamsml@chromium.org</owner>
  <owner>vitalybuka@chromium.org</owner>
  <summary>Time between detector restarts.</summary>
</histogram>

<histogram name="LocalDiscovery.DetectorTriggerTime" units="ms">
  <owner>noamsml@chromium.org</owner>
  <owner>vitalybuka@chromium.org</owner>
  <summary>Time before detector trigger notifications.</summary>
</histogram>

<histogram name="LocalDiscovery.DevicesPage" enum="DevicesPageEvents">
  <owner>noamsml@chromium.org</owner>
  <owner>vitalybuka@chromium.org</owner>
  <summary>Records events related to devices page.</summary>
</histogram>

<histogram name="LocalDiscovery.FirewallAccessTime" units="ms">
  <owner>noamsml@chromium.org</owner>
  <owner>vitalybuka@chromium.org</owner>
  <summary>
    Windows only histogram that reports request time spend accessing firewall
    rules. It's logged once per browser process lifetime, when local discovery
    is used first time.
  </summary>
</histogram>

<histogram name="LocalDiscovery.IsFirewallReady" enum="BooleanEnabled">
  <owner>noamsml@chromium.org</owner>
  <owner>vitalybuka@chromium.org</owner>
  <summary>
    Windows only histogram that reports, whether a firewall is set, so we can
    bind inbound sockets. It's logged once per browser process lifetime, when
    local discovery is used first time.
  </summary>
</histogram>

<histogram name="LocalDiscovery.PrivetNotificationsEvent"
    enum="PrivetNotificationsEvent">
  <owner>noamsml@chromium.org</owner>
  <owner>vitalybuka@chromium.org</owner>
  <summary>Records events related to local discovery notifications.</summary>
</histogram>

<histogram name="LocalStorage.BrowserLocalStorageSizeInKB" units="KB">
  <owner>michaeln@chromium.org</owner>
  <summary>
    Size of the HTML5 LocalStorage DB in KB in the browser-side cache.
  </summary>
</histogram>

<histogram name="LocalStorage.BrowserTimeToPrimeLocalStorage">
  <owner>michaeln@chromium.org</owner>
  <summary>
    Time to load HTML5 LocalStorage into the browser-side cache.
  </summary>
</histogram>

<histogram name="LocalStorage.CommitDelay" units="ms">
  <owner>michaeln@chromium.org</owner>
  <summary>
    Delay between a page making changes and those changes being written to the
    DB.
  </summary>
</histogram>

<histogram name="LocalStorage.MojoSizeInKB" units="KB">
  <owner>jam@chromium.org</owner>
  <summary>
    Size of the HTML5 LocalStorage DB in KB in the renderer-side cache using
    Mojo implementation.
  </summary>
</histogram>

<histogram name="LocalStorage.MojoTimeToPrime" units="ms">
  <owner>jam@chromium.org</owner>
  <summary>
    Time (in ms) to load HTML5 LocalStorage into the renderer-side cache using
    Mojo implementation.
  </summary>
</histogram>

<histogram name="LocalStorage.MojoTimeToPrimeFor" units="ms">
  <owner>jam@chromium.org</owner>
  <summary>
    Time (in ms) to load HTML5 LocalStorage into the renderer-side cache using
    Mojo implementation, split by size.
  </summary>
</histogram>

<histogram name="LocalStorage.RendererLocalStorageSizeInKB" units="KB">
  <owner>michaeln@chromium.org</owner>
  <summary>
    Size of the HTML5 LocalStorage DB in KB in the renderer-side cache.
  </summary>
</histogram>

<histogram name="LocalStorage.RendererTimeToPrimeLocalStorage">
  <owner>michaeln@chromium.org</owner>
  <summary>
    Time to load HTML5 LocalStorage into the renderer-side cache.
  </summary>
</histogram>

<histogram name="LocalStorage.TimeToPrimeLocalStorage">
  <owner>michaeln@chromium.org</owner>
  <summary>
    Time to load HTML5 LocalStorage into the renderer-side cache. Note that the
    name is not 'Renderer' prefixed for continuity with the old naming.
  </summary>
</histogram>

<histogram name="Login.ConsumerNewUsersAllowed" enum="LoginConsumerWhitelist">
  <owner>cmasone@chromium.org</owner>
  <owner>sumit@chromium.org</owner>
  <summary>
    Chrome OS histogram tracking, per consumer sign-in, whether the device owner
    is allowing arbitrary accounts to be used on the device, or only those on a
    specific whitelist.
  </summary>
</histogram>

<histogram name="Login.CustomFlags" enum="LoginCustomFlags">
  <owner>alemate@chromium.org</owner>
  <summary>
    A set of chrome flags that required browser restart on Chrome OS user sign
    in.
  </summary>
</histogram>

<histogram name="Login.FailureReason" enum="LoginFailureReason">
  <owner>achuith@chromium.org</owner>
  <summary>Chrome OS login failure reason.</summary>
</histogram>

<histogram name="Login.LeastUsedAccountDays" units="days">
  <owner>achuith@chromium.org</owner>
  <owner>omrilio@chromium.org</owner>
  <summary>
    Chrome OS histogram that keeps track of the days since the least frequently
    used account signed in. Reported on every boot and once a day after that.
  </summary>
</histogram>

<histogram name="Login.NewUserPriorityPrefsSyncResult"
    enum="NewUserPriorityPrefsSyncResult">
  <owner>dzhioev@chromeos.org</owner>
  <summary>Records whether a new user's priority prefs sync timed out.</summary>
</histogram>

<histogram name="Login.NewUserPriorityPrefsSyncTime" units="ms">
  <owner>dzhioev@chromeos.org</owner>
  <summary>
    Time spent waiting for priority preferences to sync after new user sign in.
    The operation will time out after 10s.
  </summary>
</histogram>

<histogram name="Login.OfflineFailure.IsKnownUser" enum="LoginIsKnownUser">
  <owner>glevin@chromium.org</owner>
  <summary>
    On offline login failure, records whether it is for an existing user.
  </summary>
</histogram>

<histogram name="Login.OfflineSuccess.Attempts">
  <owner>glevin@chromium.org</owner>
  <summary>
    On offline login success, records number of attempts, including success.
  </summary>
</histogram>

<histogram name="Login.PasswordChangeFlow" enum="LoginPasswordChangeFlow">
  <owner>xiyuan@chromium.org</owner>
  <owner>omrilio@chromium.org</owner>
  <summary>
    Records the UI flow after a possible password change is detected.
  </summary>
</histogram>

<histogram name="Login.PolicyFilesStatePerBoot" enum="LoginPolicyFilesState">
  <owner>cmasone@chromium.org</owner>
  <summary>The state of Chrome OS owner key and device policy files.</summary>
</histogram>

<histogram name="Login.PromptToCompleteLoginTime" units="ms">
  <owner>achuith@chromium.org</owner>
  <summary>
    Time from first display of the login prompt until the user completes signing
    in.
  </summary>
</histogram>

<histogram name="Login.ReauthReason" enum="LoginReauthReasons">
  <owner>achuith@chromium.org</owner>
  <summary>
    Tracks the reason why a user was sent through the GAIA re-auth flow.
  </summary>
</histogram>

<histogram name="Login.StateKeyGenerationStatus"
    enum="LoginStateKeyGenerationStatus">
  <owner>mnissler@chromium.org</owner>
  <summary>Result of a state key generation operation.</summary>
</histogram>

<histogram name="Login.SuccessReason" enum="LoginSuccessReason">
  <owner>achuith@chromium.org</owner>
  <summary>Chrome OS login success reason.</summary>
</histogram>

<histogram name="Login.TokenCheckResponseTime" units="ms">
  <owner>glevin@chromium.org</owner>
  <summary>
    Time between sending a request to, and receiving a reply from, GAIA token
    endpoint to validate TokenInfo.
  </summary>
</histogram>

<histogram name="Login.TokenObtainResponseTime" units="ms">
  <owner>glevin@chromium.org</owner>
  <summary>
    Time between sending a request to, and receiving a reply from, GAIA token
    endpoint to obtain TokenInfo.
  </summary>
</histogram>

<histogram name="Login.UsersActiveWeekly" units="users">
  <owner>alemate@chromium.org</owner>
  <owner>achuith@chromium.org</owner>
  <summary>
    Chrome OS histogram that keeps track of number of users who have logged in
    in the last 7 days. Reported on every boot and once a day after that.
  </summary>
</histogram>

<histogram name="Login.UsersActiveWeekly.Percent" units="%">
  <owner>alemate@chromium.org</owner>
  <owner>achuith@chromium.org</owner>
  <summary>
    Chrome OS histogram that keeps track of percentage of local users who have
    logged in in the last 7 days. Reported on every boot and once a day after
    that.
  </summary>
</histogram>

<histogram name="Login.UserType" enum="LoginUserType">
  <owner>cmasone@chromium.org</owner>
  <summary>
    Chrome OS histogram that keeps track of the way a user logs in and whether
    Chrome OS is running normal or developer mode.
  </summary>
</histogram>

<histogram name="ManagedUsers.ChromeOS.PasswordChange"
    enum="ManagedUserPasswordChange">
  <owner>achuith@chromium.org</owner>
  <summary>
    Chrome OS histogram that keeps track of supervised user password change
    result.
  </summary>
</histogram>

<histogram name="ManagedUsers.FilteringResult"
    enum="SupervisedUserSafetyFilterResult">
  <owner>treib@chromium.org</owner>
  <owner>pam@chromium.org</owner>
  <summary>
    The counts of results from supervised user URL filtering. Each entry
    includes the outcome of the filter (i.e. allowed, blocked, or unknown) and
    the page transition type (how the user got there, e.g. typed URL, clicked
    link).
  </summary>
</histogram>

<histogram name="ManagedUsers.SafeSitesDelay" units="ms">
  <owner>treib@chromium.org</owner>
  <owner>pam@chromium.org</owner>
  <summary>
    The extra page load delays introduced by network requests due to the
    supervised user SafeSites feature, measured once per page load.
  </summary>
</histogram>

<histogram name="ManagedUsers.SafetyFilter"
    enum="SupervisedUserSafetyFilterResult">
  <owner>treib@chromium.org</owner>
  <owner>pam@chromium.org</owner>
  <summary>
    The counts of results from the supervised user safety filter. Each entry
    includes the outcome of the filter (i.e. allowed, blocked, or unknown) and
    the page transition type (how the user got there, e.g. typed URL, clicked
    link). This only includes URL requests that were handled by the SafeSites
    filter (both online and the static blacklist).
  </summary>
</histogram>

<histogram name="ManagedUsers.Whitelist.Count" units="whitelists">
  <owner>bauerb@chromium.org</owner>
  <owner>treib@chromium.org</owner>
  <owner>pam@chromium.org</owner>
  <summary>
    The number of whitelists installed for a supervised user. Recorded at every
    profile startup.
  </summary>
</histogram>

<histogram name="ManagedUsers.Whitelist.JsonParseDuration" units="ms">
  <owner>bauerb@chromium.org</owner>
  <owner>treib@chromium.org</owner>
  <owner>pam@chromium.org</owner>
  <summary>
    The total amount of time taken to parse the JSON contents of a whitelist out
    of process.
  </summary>
</histogram>

<histogram name="ManagedUsers.Whitelist.ReadDuration" units="ms">
  <owner>bauerb@chromium.org</owner>
  <owner>treib@chromium.org</owner>
  <owner>pam@chromium.org</owner>
  <summary>
    The amount of time taken to read a whitelist file from disk.
  </summary>
</histogram>

<histogram name="ManagedUsers.Whitelist.TotalLoadDuration" units="ms">
  <owner>bauerb@chromium.org</owner>
  <owner>treib@chromium.org</owner>
  <owner>pam@chromium.org</owner>
  <summary>
    The total amount of time taken to load a whitelist from disk and parse it,
    including jumps to the blocking thread.
  </summary>
</histogram>

<histogram name="Manifest.FetchResult" enum="ManifestFetchResultType">
  <owner>mlamouri@chromium.org</owner>
  <summary>
    Tracks whether the Manifest fetch succeed and why it failed if it failed.
  </summary>
</histogram>

<histogram name="Manifest.HasProperty" enum="Boolean">
  <owner>mlamouri@chromium.org</owner>
  <summary>
    Tracks which properties of a Manifest were present when it was parsed. If a
    property can't be parsed, it will be recorded as not present. These
    histograms will only be used if the Manifest was correctly fetched and
    parsed and the parsed manifest is not empty.
  </summary>
</histogram>

<histogram name="Manifest.IsEmpty" enum="Boolean">
  <owner>mlamouri@chromium.org</owner>
  <summary>Tracks whether the parsed Manifest is the empty Manifest.</summary>
</histogram>

<histogram name="Manifest.ParseSuccess" enum="Boolean">
  <owner>mlamouri@chromium.org</owner>
  <summary>
    Tracks the Manifest parsing result. A failure will be recorded if the
    Manifest was incorrectly structured. This doesn't take into account parse
    failures for each individual properties.
  </summary>
</histogram>

<histogram name="Media.AcceleratedCompositingActive" enum="BooleanSuccess">
  <obsolete>
    Deprecated as of July 21, 2014.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Whether accelerated compositing was used for HTML5 media rendering.
  </summary>
</histogram>

<histogram name="Media.Android.IsHttpLiveStreamingMedia" enum="MediaUrlType">
  <owner>qinmin@chromium.org</owner>
  <summary>
    Android: Records whether a regular media URL is HLS (HTTP Live Streaming)
    media or not.
  </summary>
</histogram>

<histogram name="Media.Android.IsHttpLiveStreamingMediaPredictionResult"
    enum="MediaTypePredictionResult">
  <owner>sandersd@chromium.org</owner>
  <summary>
    Android: Records which HLS prediction based on the original URL was best.
  </summary>
</histogram>

<histogram name="Media.Android.MediaPlayerSuccess" enum="MediaPlayerExitStatus">
  <owner>timav@chromium.org</owner>
  <summary>Android: Whether MediaPlayer exited without errors.</summary>
</histogram>

<histogram name="Media.Android.NumMediaServerCrashes">
  <owner>qinmin@chromium.org</owner>
  <summary>
    Android: Number of consecutive media server crashes monitored before it is
    reset to 0. Reset happens if there are no crashes in a minute, or if user
    hits the &quot;try again&quot; button on the media throttle info bar.
  </summary>
</histogram>

<histogram name="Media.Android.ThrottleInfobarResponse"
    enum="ThrottleInfobarResponse">
  <owner>qinmin@chromium.org</owner>
  <summary>
    Android: The distribution of responses to the media throttle infobar prompt.
  </summary>
</histogram>

<histogram name="Media.Audible.ConcurrentTabsTime" units="ms">
  <owner>mlamouri@chromium.org</owner>
  <summary>
    Records how long more than one tab is audible at the same time. The
    concurrent tabs might change during this period. The time recorded starts
    when the browser goes from one to two audbile tabs and stops when it is back
    below two.
  </summary>
</histogram>

<histogram name="Media.Audible.ConcurrentTabsWhenStarting">
  <owner>mlamouri@chromium.org</owner>
  <summary>
    Records how many tabs were audible when a new tab started to be audible.
  </summary>
</histogram>

<histogram name="Media.Audible.MaxConcurrentTabsInSession">
  <owner>mlamouri@chromium.org</owner>
  <summary>
    Records how many tabs are audible at the same time during the session. It is
    recording the maximum audible tab count everytime it increases. In other
    words, a session with N concurrent audible tabs will record entries from 1
    through N exactly once.
  </summary>
</histogram>

<histogram name="Media.Audio.ActualInputBufferFrameSizeMac">
  <owner>henrika@chromium.org</owner>
  <summary>
    Size (in audio frames) of native I/O buffers that is set by the audio
    manager when calling AUAudioInputStream::Open(). I.e., it is the actual
    buffer size and it can differ from the one that the client requested. Only
    sampled when Media.Audio.InputStartupSuccessMac reports 'Failure'.
  </summary>
</histogram>

<histogram name="Media.Audio.AudioUnitRenderHasWorkedMac"
    enum="BooleanEverWorked">
  <owner>henrika@chromium.org</owner>
  <summary>
    Stored in combination with Media.Audio.RenderFailsWhenBufferSizeChangesMac.
    It is set to true if calls to AudioUnitRender has ever worked, i.e., we did
    not start to see kAudioUnitErr_CannotDoInCurrentContext error messages
    directly from start but there has been at least on successful call to
    AudioUnitRender.
  </summary>
</histogram>

<histogram name="Media.Audio.AutomaticGainControlMac" enum="BooleanEnabled">
  <owner>henrika@chromium.org</owner>
  <summary>
    Indicates if the Automatic Gain Control (AGC) is enabled or not. Only
    sampled when Media.Audio.InputStartupSuccessMac reports 'Failure'.
  </summary>
</histogram>

<histogram name="Media.Audio.Capture.FramesProvided" units="frames">
  <owner>grunell@chromium.org</owner>
  <summary>
    The number of captured audio frames that is provided by the operating system
    in each callback. Typically, Chrome will want to use a 10 ms buffer (e.g.
    480 frames for a sample rate of 48 kHz), but the OS may decide to capture
    e.g. 256 frames of audio at a time. If the desired frame size is used, the
    emitted value is special-cased to be 0. This histogram then shows how
    frequent it is that the desired number of frames is used and if not, the
    number of frames used in practice. The number of frames per callback is
    normally constant or very rarely changed throughout the lifetime of the
    audio stream. The first value that differs from the desired value is stored
    and logged when an audio input stream is closed. Any further differences
    during the lifetime will be ignored.
  </summary>
</histogram>

<histogram name="Media.Audio.Capture.Glitches" units="glitches">
  <owner>grunell@chromium.org</owner>
  <summary>
    The number of glitches that were detected at the OS level while an audio
    stream was active. A glitch is detected if the OS has to skip providing a
    set of frames. This value is logged when an audio input stream is closed.
  </summary>
</histogram>

<histogram name="Media.Audio.Capture.LargestGlitchMs" units="ms">
  <owner>grunell@chromium.org</owner>
  <summary>
    The length in milliseconds of the largest audio glitch that was detected at
    the OS level. This value is logged when an audio input stream that has
    suffered glitches is closed.
  </summary>
</histogram>

<histogram name="Media.Audio.Capture.LostFramesInMs" units="ms">
  <owner>grunell@chromium.org</owner>
  <summary>
    The combined length in milliseconds of audio glitches that was detected at
    the OS level. This is useful to know in particular for audio processing such
    as echo cancellation. This value is logged when an audio input stream that
    has suffered glitches is closed.
  </summary>
</histogram>

<histogram name="Media.Audio.InputBufferSizeWasChangedAudioWorkedMac"
    enum="BooleanChanged">
  <owner>henrika@chromium.org</owner>
  <summary>
    Indicates if the size of the audio unit's IO buffer was changed when
    starting an input audio stream. Sampled each time an AUAudioInputStream
    instance is closed, i.e., we know that input audio has started as it should
    when this value is stored. Can be compared with
    Media.Audio.InputBufferSizeWasChangedMac which is only added when input
    audio fails to start.
  </summary>
</histogram>

<histogram name="Media.Audio.InputBufferSizeWasChangedMac"
    enum="BooleanSuccess">
  <owner>henrika@chromium.org</owner>
  <summary>
    Indicates if the size of the audio unit's IO buffer was changed when
    starting an input audio stream. Only sampled when
    Media.Audio.InputStartupSuccessMac reports 'Failure'.
  </summary>
</histogram>

<histogram name="Media.Audio.InputDevicePropertyChangedMac"
    enum="AudioDevicePropertyResult">
  <owner>henrika@chromium.org</owner>
  <summary>
    Lists device properties that have been changed during an audio input stream
    session. We update a map of different property changes during a session and
    all these values are recorded when an AUAudioInputStream object is closed,
    hence multiple enum values can be emitted when the histogram is stored.
  </summary>
</histogram>

<histogram name="Media.Audio.InputDevicePropertyChangedStartupFailedMac"
    enum="AudioDevicePropertyResult">
  <owner>henrika@chromium.org</owner>
  <summary>
    Lists device properties that have been changed during an audio input stream
    session. Only sampled when Media.Audio.InputStartupSuccessMac reports
    'Failure' and multiple enum values can be emitted each time that happens.
  </summary>
</histogram>

<histogram name="Media.Audio.InputRestartAttemptsMac">
  <owner>henrika@chromium.org</owner>
  <summary>
    Counts the total number of times an attempt to restart input audio has been
    done. The value is stored once when a stream is closed and updated when it
    has been detected that input audio callbacks are not generated as expected.
  </summary>
</histogram>

<histogram name="Media.Audio.InputStartupSuccessMac" enum="BooleanSuccess">
  <owner>henrika@chromium.org</owner>
  <summary>
    Indicates if audio capturing did start after stream startup was requested.
    Sampled once 5 seconds after a stream has been asked to start.
  </summary>
</histogram>

<histogram name="Media.Audio.InputStartWasDeferredAudioWorkedMac"
    enum="BooleanDeferred">
  <owner>henrika@chromium.org</owner>
  <summary>
    Indicates if audio capturing started with a small delay or not. Sampled each
    time an AUAudioInputStream instance is closed, i.e., we know that input
    audio has started as it should when this value is stored. Can be compared
    with Media.Audio.InputStartWasDeferredMac which is only added when input
    audio fails to start.
  </summary>
</histogram>

<histogram name="Media.Audio.InputStartWasDeferredMac" enum="BooleanDeferred">
  <owner>henrika@chromium.org</owner>
  <summary>
    Indicates if audio capturing started with a small delay or not. Only sampled
    when Media.Audio.InputStartupSuccessMac reports 'Failure'.
  </summary>
</histogram>

<histogram name="Media.Audio.IsOnBatteryPowerMac" enum="BooleanOnBattery">
  <owner>henrika@chromium.org</owner>
  <summary>
    Indicates if the Mac OSX device is on battery power or not. Only sampled
    when Media.Audio.InputStartupSuccessMac reports 'Failure'.
  </summary>
</histogram>

<histogram name="Media.Audio.LogicalProcessorsMac">
  <owner>henrika@chromium.org</owner>
  <summary>
    The number of logical processors/cores available on the Mac OSX device. Only
    sampled when Media.Audio.InputStartupSuccessMac reports 'Failure'.
  </summary>
</histogram>

<histogram name="Media.Audio.NumberOfBasicInputStreamsMac">
  <owner>henrika@chromium.org</owner>
  <summary>
    Number of created default input audio streams. Only sampled when
    Media.Audio.InputStartupSuccessMac reports 'Failure'.
  </summary>
</histogram>

<histogram name="Media.Audio.NumberOfLowLatencyInputStreamsMac">
  <owner>henrika@chromium.org</owner>
  <summary>
    Number of created low-latency input audio streams. Only sampled when
    Media.Audio.InputStartupSuccessMac reports 'Failure'.
  </summary>
</histogram>

<histogram name="Media.Audio.NumberOfOutputStreamsMac">
  <owner>henrika@chromium.org</owner>
  <summary>
    Number of created output audio streams. Only sampled when
    Media.Audio.InputStartupSuccessMac reports 'Failure'.
  </summary>
</histogram>

<histogram name="Media.Audio.PhysicalProcessorsMac">
  <owner>henrika@chromium.org</owner>
  <summary>
    The number of physical processors/cores available on the Mac OSX device.
    Only sampled when Media.Audio.InputStartupSuccessMac reports 'Failure'.
  </summary>
</histogram>

<histogram name="Media.Audio.Render.FramesRequested" units="frames">
  <owner>tommi@chromium.org</owner>
  <summary>
    The number of frames audio is actually rendered at if the number is
    different from the desired number of frames.  If the desired frame size is
    used, this value will be 0. Typically, Chrome will want to use a 10ms buffer
    (e.g. 480 frames for a sample rate of 48kHz), but we might have to render
    audio 256 frames at a time. This histogram gives us an indication as to how
    frequent that is and what buffer sizes are used in practice. This value is
    logged when an audio output stream is stopped.
  </summary>
</histogram>

<histogram name="Media.Audio.Render.Glitches" units="glitches">
  <owner>tommi@chromium.org</owner>
  <summary>
    The number of glitches that were detected at the OS level while an audio
    stream was active. A glitch is detected if the OS has to skip rendering a
    set of frames. This value is logged when an audio output stream is stopped.
  </summary>
</histogram>

<histogram name="Media.Audio.Render.LargestGlitchMs" units="ms">
  <owner>tommi@chromium.org</owner>
  <summary>
    The length in milliseconds of the largest glitch that was detected at the OS
    level. This value is logged when an audio output stream that has suffered
    glitches is stopped.
  </summary>
</histogram>

<histogram name="Media.Audio.Render.LostFramesInMs" units="ms">
  <owner>tommi@chromium.org</owner>
  <summary>
    The combined length in milliseconds of audio glitches. This is useful to
    know in particular for audio processing such as echo cancellation. This
    value is logged when an audio output stream that has suffered glitches is
    stopped.
  </summary>
</histogram>

<histogram name="Media.Audio.RenderFailsWhenBufferSizeChangesMac"
    enum="BooleanChanged">
  <owner>henrika@chromium.org</owner>
  <summary>
    True if a call to AudioUnitRender failed with an error code of
    kAudioUnitErr_CannotDoInCurrentContext (-10863) and the call was preceded
    with a change in the native I/O buffer size. This value is logged while
    input audio is active but it should be a very rare event.
  </summary>
</histogram>

<histogram name="Media.Audio.RequestedInputBufferFrameSizeMac">
  <owner>henrika@chromium.org</owner>
  <summary>
    Size (in audio frames) the client has asked for when creating an
    AUAudioInputStream object. It might not be able to fulfill this request. The
    actual size is given by Media.Audio.ActualInputBufferFrameSizeMac. Only
    sampled when Media.Audio.InputStartupSuccessMac reports 'Failure'.
  </summary>
</histogram>

<histogram name="Media.Audio.ResumeEventsMac">
  <owner>henrika@chromium.org</owner>
  <summary>
    Counts the number of times the system has resumed from power suspension.
    Counting is reset each time Chrome restarts. Only sampled when
    Media.Audio.InputStartupSuccessMac reports 'Failure'.
  </summary>
</histogram>

<histogram name="Media.Audio.UptimeMac" units="hours">
  <owner>henrika@chromium.org</owner>
  <summary>
    Reports the system uptime in hours for Mac OS X devices. Only sampled when
    Media.Audio.InputStartupSuccessMac reports 'Failure'.
  </summary>
</histogram>

<histogram name="Media.AudioBitsPerChannel">
  <owner>dalecurtis@chromium.org</owner>
  <summary>Bits per channel of HTML5 audio sample data.</summary>
</histogram>

<histogram name="Media.AudioCapturerAudioGlitches" enum="AudioGlitchResult">
  <owner>grunell@chromium.org</owner>
  <summary>
    Whether there is input audio glitches due to dropped input audio data or
    not. Sampled when a low-latency input audio stream is destructed.
  </summary>
</histogram>

<histogram name="Media.AudioCapturerDroppedData" units="%">
  <owner>grunell@chromium.org</owner>
  <summary>
    The percentage of input audio data that was dropped at the browser/renderer
    boundary due to for example buffer overflow in the writer side buffer or in
    the socket. Reported at the destruction of low-latency audio input stream.
  </summary>
</histogram>

<histogram name="Media.AudioCapturerMissedReadDeadline" units="%">
  <owner>grunell@chromium.org</owner>
  <summary>
    The percentage of input audio data blocks that had to be buffered because
    there was not room in the shared memory ring buffer on the browser/renderer
    boundary. This happens if the reading side hasn't read data in time.
    Reported at the destruction of low-latency audio input stream.
  </summary>
</histogram>

<histogram name="Media.AudioCapturerRepetition" units="ms">
  <owner>minyue@chromium.org</owner>
  <summary>
    Captures bit-exact audio repetitions with pre-defined look back time. As
    soon as a repetition is detected, its look back time is reported. Ideally,
    no reports should be generated.
  </summary>
</histogram>

<histogram name="Media.AudioChannelLayout" enum="ChannelLayout">
  <owner>dalecurtis@chromium.org</owner>
  <summary>Audio channel layout in HTML5 media.</summary>
</histogram>

<histogram name="Media.AudioCodec" enum="AudioCodec">
  <owner>dalecurtis@chromium.org</owner>
  <summary>Audio codec used in HTML5 media.</summary>
</histogram>

<histogram name="Media.AudioInputCbErrorMac" units="OSStatus">
  <owner>henrika@chromium.org</owner>
  <summary>
    Error codes that AudioUnitRender() returns in AUAudioInputStream on Mac.
  </summary>
</histogram>

<histogram name="Media.AudioInputController" units="ms">
  <owner>dalecurtis@chromium.org</owner>
  <summary>Measures the time taken for AudioInputController::</summary>
</histogram>

<histogram name="Media.AudioInputControllerCaptureStartupSuccess"
    enum="CaptureStartupResult">
  <owner>dalecurtis@chromium.org</owner>
  <summary>
    Whether capture started successfully after an input stream startup was
    requested.
  </summary>
</histogram>

<histogram name="Media.AudioInputControllerSessionSilenceReport"
    enum="AudioInputSilenceReport">
  <owner>grunell@chromium.org</owner>
  <summary>The silence report for an audio input device session.</summary>
</histogram>

<histogram name="Media.AudioInputDeviceManager" units="ms">
  <owner>dalecurtis@chromium.org</owner>
  <summary>Measures the time taken for AudioInputDeviceManager::</summary>
</histogram>

<histogram name="Media.AudioOutputController" units="ms">
  <owner>dalecurtis@chromium.org</owner>
  <summary>Measures the time taken for AudioOutputController::</summary>
</histogram>

<histogram name="Media.AudioOutputControllerDataNotReady" units="ms">
  <owner>dalecurtis@chromium.org</owner>
  <summary>
    Time spent waiting in AudioOutputController::WaitTillDataReady() if the data
    was not initially available.
  </summary>
</histogram>

<histogram name="Media.AudioOutputControllerPlaybackStartupSuccess"
    enum="BooleanSuccess">
  <owner>dalecurtis@chromium.org</owner>
  <summary>
    Whether playback started successfully after stream startup was requested.
  </summary>
</histogram>

<histogram name="Media.AudioRendererAudioGlitches" enum="AudioGlitchResult">
  <owner>henrika@chromium.org</owner>
  <summary>
    Captures if render-side audio glitches are detected or not. Sampled when a
    low-latency output audio stream is destructed.
  </summary>
</histogram>

<histogram name="Media.AudioRendererEvents" enum="AudioRendererEvents">
  <obsolete>
    Deprecated Mar 2016 in favor of a new PipelineStatus code.
  </obsolete>
  <owner>scherkus@chromium.org</owner>
  <summary>Captures statistics for various AudioRendererImpl events.</summary>
</histogram>

<histogram name="Media.AudioRendererIpcStreams">
  <owner>grunell@chromium.org</owner>
  <summary>
    The maximum number of simultaneous audio render streams over IPC created in
    AudioRendererHost for a render process. Logged at render process shutdown.
  </summary>
</histogram>

<histogram name="Media.AudioRendererIpcStreamsTotal">
  <owner>grunell@chromium.org</owner>
  <summary>
    The maximum number of simultaneous audio render streams over IPC created in
    AudioRendererHost for all render processes. Logged at render process
    shutdown.
  </summary>
</histogram>

<histogram name="Media.AudioRendererMissedDeadline" units="%">
  <owner>dalecurtis@chromium.org</owner>
  <summary>
    Percentage of AudioSyncReader::Read() calls where the renderer missed its
    realtime deadline.
  </summary>
</histogram>

<histogram name="Media.AudioSampleFormat" enum="AudioSampleFormat">
  <owner>dalecurtis@chromium.org</owner>
  <summary>
    Audio sample format in HTML5 media. Logged when Audio Decoder initializes.
  </summary>
</histogram>

<histogram name="Media.AudioSamplesPerSecond" enum="AudioSampleRate">
  <owner>dalecurtis@chromium.org</owner>
  <summary>Audio samples per second in HTML5 media.</summary>
</histogram>

<histogram name="Media.AudioSamplesPerSecondUnexpected" units="Hz">
  <owner>dalecurtis@chromium.org</owner>
  <summary>
    Audio samples per second in HTML5 media (atypical values, in Hz).
  </summary>
</histogram>

<histogram name="Media.AudioThreadStatus" enum="AudioThreadStatus">
  <owner>dalecurtis@chromium.org</owner>
  <summary>
    State of the audio thread. A value of &quot;started&quot; is emitted once
    the hang monitor has been initialized. If the thread is detected as hung
    later, a value of &quot;hung&quot; is emitted. If the hung thread later
    recovers a value of &quot;recovered&quot; is emitted.
  </summary>
</histogram>

<histogram name="Media.AudioTrackProcessingStates"
    enum="AudioTrackProcessingStates">
  <owner>grunell@chromium.org</owner>
  <summary>
    State of the media stream audio track processing, sampled once during the
    life time of a MediaStreamAudioProcessor.
  </summary>
</histogram>

<histogram name="Media.AVDA.InputQueueTime" units="ms">
  <owner>watk@chromium.org</owner>
  <obsolete>
    Deprecated 03/2016. No longer needed.
  </obsolete>
  <summary>
    The time that a bitstream buffer spends in AVDA's pending bitstream buffer
    queue before it is fed to MediaCodec.
  </summary>
</histogram>

<histogram name="Media.AVDA.MissingFormatChanged" enum="BooleanFormatChanged">
  <owner>liberato@chromium.org</owner>
  <summary>
    Number of times that AVDA stopped decoding because MediaCodec failed to
    provide a FORMAT_CHANGED message before sending decoded frames back.  True
    counts indicate instances where FORMAT_CHANGE was missed, while false
    instances indicate any MediaCodec initialization by AVDA.
  </summary>
</histogram>

<histogram name="Media.AvdaCodecImage.WaitTimeForFrame" units="ms">
  <owner>liberato@chromium.org</owner>
  <summary>
    Time spent waiting for a frame to become available in a SurfaceTexture after
    requesting that MediaCodec renders it.
  </summary>
</histogram>

<histogram name="Media.CacheUseful" enum="BooleanSuccess">
  <owner>scherkus@chromium.org</owner>
  <summary>
    Whether a media response might be used to satisfy a future request.
  </summary>
</histogram>

<histogram name="Media.ChromeCast.DelayedAndDroppedFramesPer5Sec"
    units="frames/5s">
  <owner>mfoltz@chromium.org</owner>
  <summary>
    The average number of delayed and dropped frames for the ChromeCast
    application.  Reported every 5 seconds.
  </summary>
</histogram>

<histogram name="Media.ChromeCast.DisplayedFramesPerSecond" units="frames/s">
  <obsolete>
    Deprecated 07/2015 in issue 508534.
  </obsolete>
  <owner>mfoltz@chromium.org</owner>
  <summary>
    The average number of displayed frames for the ChromeCast application.
    Reported every 5 seconds.
  </summary>
</histogram>

<histogram name="Media.ChromeCast.TimeToBufferAv" units="ms">
  <owner>mfoltz@chromium.org</owner>
  <summary>
    Time needed to pre-buffer A/V data before the actual playback for the
    ChromeCast application.
  </summary>
</histogram>

<histogram name="Media.ChromeCast.TimeToBufferAvAfterAbort" units="ms">
  <owner>mfoltz@chromium.org</owner>
  <summary>
    Time needed to buffer A/V data after an abort for the ChromeCast
    application.
  </summary>
</histogram>

<histogram name="Media.ChromeCast.TimeToBufferAvAfterUnderrun" units="ms">
  <owner>mfoltz@chromium.org</owner>
  <summary>
    Time needed to buffer A/V data after an underrun for the ChromeCast
    application.
  </summary>
</histogram>

<histogram name="Media.Controls.Show" enum="MediaControlsShowReason">
  <owner>mlamouri@chromium.org</owner>
  <summary>
    Record whether the default media controls where shown and why every time
    they could be shown.
  </summary>
</histogram>

<histogram name="Media.CrosBeamformingDeviceState"
    enum="CrosBeamformingDeviceState">
  <owner>ajm@chromium.org</owner>
  <summary>
    The state of the user selected virtual beamforming audio device on CrOS.
    It's logged whenever the format of the audio input stream is queried, which
    at least happens on stream startup, but could happen at other times as well.
  </summary>
</histogram>

<histogram name="Media.DetectedAudioCodec" enum="FFmpegCodecs">
  <obsolete>
    Deprecated Sep 15 2015 in favor of Media.DetectedAudioCodecHash
  </obsolete>
  <owner>jrummell@chromium.org</owner>
  <summary>Audio codec used in HTML5 media.</summary>
</histogram>

<histogram name="Media.DetectedAudioCodecHash" enum="FFmpegCodecHashes">
  <owner>jrummell@chromium.org</owner>
  <summary>
    Audio codec used in HTML5 media. Reporting corrected in M51 to include all
    detected audio codecs, not just those up to and including the first one
    supported.
  </summary>
</histogram>

<histogram name="Media.DetectedContainer" enum="MediaContainers">
  <owner>jrummell@chromium.org</owner>
  <summary>
    Container used for HTML5 media. Views that include pre-M34 data will
    categorize dash (38) and smooth streaming (39) in the &quot;Other&quot;
    bucket.
  </summary>
</histogram>

<histogram name="Media.DetectedTrackCount.Audio">
  <owner>wolenetz@chromium.org</owner>
  <summary>
    Number of detected audio tracks in HTML5 media. Not all may be usable by the
    player.
  </summary>
</histogram>

<histogram name="Media.DetectedTrackCount.Text">
  <owner>wolenetz@chromium.org</owner>
  <summary>
    Number of detected text tracks in HTML5 media. Not all may be usable by the
    player.
  </summary>
</histogram>

<histogram name="Media.DetectedTrackCount.Video">
  <owner>wolenetz@chromium.org</owner>
  <summary>
    Number of detected video tracks in HTML5 media. Not all may be usable by the
    player.
  </summary>
</histogram>

<histogram name="Media.DetectedVideoCodec" enum="FFmpegCodecs">
  <obsolete>
    Deprecated Sep 15 2015 in favor of Media.DetectedVideoCodecHash
  </obsolete>
  <owner>jrummell@chromium.org</owner>
  <summary>Video codec used in HTML5 media.</summary>
</histogram>

<histogram name="Media.DetectedVideoCodecHash" enum="FFmpegCodecHashes">
  <owner>jrummell@chromium.org</owner>
  <summary>
    Video codec used in HTML5 media. Reporting corrected in M51 to include all
    detected video codecs, not just those up to and including the first one
    supported.
  </summary>
</histogram>

<histogram name="Media.DevicePermissionActions" enum="DevicePermissionActions">
  <obsolete>
    Removed 10/2015 in favor of Permissions.Action.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Measures the actions taken in the media infobar, which prompts the users for
    device permission.
  </summary>
</histogram>

<histogram name="Media.DroppedFrameCount">
  <owner>prabhur@chromium.org</owner>
  <summary>
    Count of dropped frames between pipeline start and stop. Media pipeline
    starts/stops when an HTML5 video is loaded/unloaded respectively in the
    browser.
  </summary>
</histogram>

<histogram name="Media.Duration" units="ms">
  <owner>scherkus@chromium.org</owner>
  <summary>Duration in milliseconds of HTML5 media (when known).</summary>
</histogram>

<histogram name="Media.EME.CdmFileIO.FileSizeKBOnError" units="KB">
  <owner>xhwang@chromium.org</owner>
  <summary>
    Size in KB of the last file successfully read by the CDM through CDM FileIO
    before a specific error happens. This is reported only when the error
    happens, which should be rare.
  </summary>
</histogram>

<histogram name="Media.EME.CdmFileIO.FileSizeKBOnFirstRead" units="KB">
  <owner>xhwang@chromium.org</owner>
  <summary>
    Size in KB of the first file successfully read by the CDM through CDM
    FileIO. This is recorded once per CDM instance.
  </summary>
</histogram>

<histogram name="Media.EME.ClearKey" enum="CdmPromiseResult">
  <owner>sandersd@chromium.org</owner>
  <summary>
    Result of promises for Clear Key key systems that were handled by Chromium
    code.
  </summary>
</histogram>

<histogram name="Media.EME.ClearKey.addKey" enum="MediaKeyException">
  <obsolete>
    Deprecated 02/2016 with removal of prefixed EME.
  </obsolete>
  <owner>xhwang@chromium.org</owner>
  <summary>addKey result using the Clear Key key system.</summary>
</histogram>

<histogram name="Media.EME.ClearKey.cancelKeyRequest" enum="MediaKeyException">
  <obsolete>
    Deprecated 02/2016 with removal of prefixed EME.
  </obsolete>
  <owner>xhwang@chromium.org</owner>
  <summary>cancelKeyRequest result using the Clear Key key system.</summary>
</histogram>

<histogram name="Media.EME.ClearKey.CreateCdmTime" units="ms">
  <owner>xhwang@chromium.org</owner>
  <summary>
    The time it takes to create the CDM instance for Clear Key key system.
  </summary>
</histogram>

<histogram name="Media.EME.ClearKey.generateKeyRequest"
    enum="MediaKeyException">
  <obsolete>
    Deprecated 02/2016 with removal of prefixed EME.
  </obsolete>
  <owner>xhwang@chromium.org</owner>
  <summary>generateKeyRequest result using the Clear Key key system.</summary>
</histogram>

<histogram name="Media.EME.ClearKey.KeyAdded">
  <obsolete>
    Deprecated 02/2016 with removal of prefixed EME.
  </obsolete>
  <owner>xhwang@chromium.org</owner>
  <summary>KeyAdded event count using the Clear Key key system.</summary>
</histogram>

<histogram name="Media.EME.ClearKey.KeyError" enum="MediaKeyError">
  <obsolete>
    Deprecated 02/2016 with removal of prefixed EME.
  </obsolete>
  <owner>xhwang@chromium.org</owner>
  <summary>KeyError event count using the Clear Key key system.</summary>
</histogram>

<histogram name="Media.EME.KeySystemSupport.Widevine"
    enum="MediaKeySystemSupportStatus">
  <obsolete>
    Deprecated 02/2016 with removal of prefixed EME.
  </obsolete>
  <owner>xhwang@chromium.org</owner>
  <summary>
    Key system support query status and result. Each enum value will be reported
    at most once per renderer process.
  </summary>
</histogram>

<histogram name="Media.EME.NeedKey">
  <owner>xhwang@chromium.org</owner>
  <summary>EME NeedKey event count.</summary>
</histogram>

<histogram name="Media.EME.OutputProtection" enum="MediaOutputProtectionStatus">
  <owner>xhwang@chromium.org</owner>
  <summary>
    Output protection query status and result. One query and one positive (no
    unprotected external links) result (if any) are reported per CDM instance.
  </summary>
</histogram>

<histogram name="Media.EME.RequestMediaKeySystemAccess"
    enum="RequestMediaKeySystemAccessStatus">
  <owner>sandersd@chromium.org</owner>
  <summary>
    Key system support query status and result, as reported by
    RequestMediaKeySystemAccess. Each value will be reported at most once per
    renderer process.
  </summary>
</histogram>

<histogram name="Media.EME.Unknown" enum="CdmPromiseResult">
  <owner>sandersd@chromium.org</owner>
  <summary>
    Result of promises for unknown key systems that were handled by Chromium
    code.
  </summary>
</histogram>

<histogram name="Media.EME.Unknown.addKey" enum="MediaKeyException">
  <obsolete>
    Deprecated 02/2016 with removal of prefixed EME.
  </obsolete>
  <owner>xhwang@chromium.org</owner>
  <summary>addKey result using an unknown key system.</summary>
</histogram>

<histogram name="Media.EME.Unknown.cancelKeyRequest" enum="MediaKeyException">
  <obsolete>
    Deprecated 02/2016 with removal of prefixed EME.
  </obsolete>
  <owner>xhwang@chromium.org</owner>
  <summary>cancelKeyRequest result using an unknown key system.</summary>
</histogram>

<histogram name="Media.EME.Unknown.CreateCdmTime" units="ms">
  <owner>xhwang@chromium.org</owner>
  <summary>
    The time it takes to create the CDM instance for an unknown key system.
  </summary>
</histogram>

<histogram name="Media.EME.Unknown.generateKeyRequest" enum="MediaKeyException">
  <obsolete>
    Deprecated 02/2016 with removal of prefixed EME.
  </obsolete>
  <owner>xhwang@chromium.org</owner>
  <summary>generateKeyRequest result using an unknown key system.</summary>
</histogram>

<histogram name="Media.EME.Unknown.KeyAdded">
  <obsolete>
    Deprecated 02/2016 with removal of prefixed EME.
  </obsolete>
  <owner>xhwang@chromium.org</owner>
  <summary>KeyAdded event count using an unknown key system.</summary>
</histogram>

<histogram name="Media.EME.Unknown.KeyError" enum="MediaKeyError">
  <obsolete>
    Deprecated 02/2016 with removal of prefixed EME.
  </obsolete>
  <owner>xhwang@chromium.org</owner>
  <summary>KeyError event count using an unknown key system.</summary>
</histogram>

<histogram name="Media.EME.Unknown.SystemCode" units="system code">
  <owner>xhwang@chromium.org</owner>
  <summary>System code count using an unknown key system.</summary>
</histogram>

<histogram name="Media.EME.Widevine" enum="CdmPromiseResult">
  <owner>sandersd@chromium.org</owner>
  <summary>
    Result of promises for Widevine key systems that were handled by Chromium
    code.
  </summary>
</histogram>

<histogram name="Media.EME.Widevine.addKey" enum="MediaKeyException">
  <obsolete>
    Deprecated 02/2016 with removal of prefixed EME.
  </obsolete>
  <owner>xhwang@chromium.org</owner>
  <summary>addKey result using the Widevine key system.</summary>
</histogram>

<histogram name="Media.EME.Widevine.cancelKeyRequest" enum="MediaKeyException">
  <obsolete>
    Deprecated 02/2016 with removal of prefixed EME.
  </obsolete>
  <owner>xhwang@chromium.org</owner>
  <summary>cancelKeyRequest result using the Widevine key system.</summary>
</histogram>

<histogram name="Media.EME.Widevine.CreateCdmTime" units="ms">
  <owner>xhwang@chromium.org</owner>
  <summary>
    The time it takes to create the CDM instance for the Widevine key system.
  </summary>
</histogram>

<histogram name="Media.EME.Widevine.generateKeyRequest"
    enum="MediaKeyException">
  <obsolete>
    Deprecated 02/2016 with removal of prefixed EME.
  </obsolete>
  <owner>xhwang@chromium.org</owner>
  <summary>generateKeyRequest result using the Widevine key system.</summary>
</histogram>

<histogram name="Media.EME.Widevine.KeyAdded">
  <obsolete>
    Deprecated 02/2016 with removal of prefixed EME.
  </obsolete>
  <owner>xhwang@chromium.org</owner>
  <summary>KeyAdded event count using the Widevine key system.</summary>
</histogram>

<histogram name="Media.EME.Widevine.KeyError" enum="MediaKeyError">
  <obsolete>
    Deprecated 02/2016 with removal of prefixed EME.
  </obsolete>
  <owner>xhwang@chromium.org</owner>
  <summary>KeyError event count using the Widevine key system.</summary>
</histogram>

<histogram name="Media.EME.Widevine.SystemCode" units="system code">
  <owner>xhwang@chromium.org</owner>
  <summary>System code count using the Widevine key system.</summary>
</histogram>

<histogram name="Media.EME.Widevine.VideoCapability.HasEmptyRobustness"
    enum="BooleanEmpty">
  <owner>xhwang@chromium.org</owner>
  <summary>
    Whether the robustness level of any video capability in the supported
    configuration passed into requestMediaKeySystemAccess() is empty. This is
    specific to the Widevine key system.
  </summary>
</histogram>

<histogram name="Media.FallbackHardwareAudioBitsPerChannel">
  <owner>dalecurtis@chromium.org</owner>
  <summary>
    Bits per channel of the hardware audio device which failed to open in low
    latency mode and required high latency fallback.
  </summary>
</histogram>

<histogram name="Media.FallbackHardwareAudioChannelCount">
  <owner>dalecurtis@chromium.org</owner>
  <summary>
    Channel count of the hardware audio device which failed to open in low
    latency mode and required high latency fallback.
  </summary>
</histogram>

<histogram name="Media.FallbackHardwareAudioChannelLayout" enum="ChannelLayout">
  <owner>dalecurtis@chromium.org</owner>
  <summary>
    Channel layout of the hardware audio device which failed to open in low
    latency mode and required high latency fallback.
  </summary>
</histogram>

<histogram name="Media.FallbackHardwareAudioSamplesPerSecond"
    enum="AudioSampleRate">
  <owner>dalecurtis@chromium.org</owner>
  <summary>
    Samples per second of the hardware audio device which failed to open in low
    latency mode and required high latency fallback.
  </summary>
</histogram>

<histogram name="Media.FallbackHardwareAudioSamplesPerSecondUnexpected"
    units="Hz">
  <owner>dalecurtis@chromium.org</owner>
  <summary>
    Samples per second of the hardware audio device (atypical values, in Hz)
    which failed to open in low latency mode and required high latency fallback.
  </summary>
</histogram>

<histogram name="Media.FallbackToHighLatencyAudioPath" enum="BooleanSuccess">
  <owner>dalecurtis@chromium.org</owner>
  <summary>
    Whether Chrome had to fallback to the high latency audio path or not.
  </summary>
</histogram>

<histogram name="Media.Fling.DelayedAndDroppedFramesPer5Sec" units="frames/5s">
  <obsolete>
    Deprecated 04/2016 as doesn't have data nor owner.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The average number of delayed and dropped frames for the Fling application.
    Reported every 5 seconds.
  </summary>
</histogram>

<histogram name="Media.Fling.DisplayedFramesPerSecond" units="frames/s">
  <obsolete>
    Deprecated 07/2015 in issue 508534.
  </obsolete>
  <owner>halliwell@chromium.org</owner>
  <summary>
    The average number of displayed frames for the Fling application.  Reported
    every 5 seconds.
  </summary>
</histogram>

<histogram name="Media.Fling.TimeToBufferAv" units="ms">
  <obsolete>
    Deprecated 04/2016 as doesn't have data nor owner.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Time needed to pre-buffer A/V data before the actual playback for the Fling
    application.
  </summary>
</histogram>

<histogram name="Media.Fling.TimeToBufferAvAfterAbort" units="ms">
  <obsolete>
    Deprecated 04/2016 as doesn't have data nor owner.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Time needed to buffer A/V data after an abort for the Fling application.
  </summary>
</histogram>

<histogram name="Media.Fling.TimeToBufferAvAfterUnderrun" units="ms">
  <obsolete>
    Deprecated 04/2016 as doesn't have data nor owner.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Time needed to buffer A/V data after an underrun for the Fling application.
  </summary>
</histogram>

<histogram name="Media.GPU.HasEverLostContext" enum="ContextProviderPhase">
  <owner>dcastagna@chromium.org</owner>
  <summary>
    Records when a context provider is acquired in media, and when it's released
    because a context loss has been detected.
  </summary>
</histogram>

<histogram name="Media.GpuVideoDecoderError" enum="VideoDecodeAcceleratorError">
  <owner>sandersd@chromium.org</owner>
  <summary>Counts of video decode errors reported to GpuVideoDecoder.</summary>
</histogram>

<histogram name="Media.GpuVideoDecoderInitializeStatus" enum="PipelineStatus">
  <owner>posciak@chromium.org</owner>
  <summary>Results of attempts to GpuVideoDecoder::Initialize().</summary>
</histogram>

<histogram name="Media.HardwareAudioBitsPerChannel">
  <owner>dalecurtis@chromium.org</owner>
  <summary>Bits per channel of the hardware audio device.</summary>
</histogram>

<histogram name="Media.HardwareAudioChannelCount">
  <owner>dalecurtis@chromium.org</owner>
  <summary>Channel count of the hardware audio device.</summary>
</histogram>

<histogram name="Media.HardwareAudioChannelLayout" enum="ChannelLayout">
  <owner>dalecurtis@chromium.org</owner>
  <summary>Channel layout of the hardware audio device.</summary>
</histogram>

<histogram name="Media.HardwareAudioSamplesPerSecond" enum="AudioSampleRate">
  <owner>dalecurtis@chromium.org</owner>
  <summary>Samples per second of the hardware audio device.</summary>
</histogram>

<histogram name="Media.HardwareAudioSamplesPerSecondUnexpected" units="Hz">
  <owner>dalecurtis@chromium.org</owner>
  <summary>
    Samples per second of the hardware audio device (atypical values, in Hz).
  </summary>
</histogram>

<histogram name="Media.InfoLoadDelay" units="ms">
  <owner>qinmin@chromium.org</owner>
  <summary>
    The time it takes to perform redirect tracking and a CORS access check while
    preparing to play a media file.
  </summary>
</histogram>

<histogram name="Media.Initialize.Windows" units="GetLastError">
  <obsolete>
    Deprecated 05/2015 in Issue 1141703002. FFmpeg is now statically linked.
  </obsolete>
  <owner>scherkus@chromium.org</owner>
  <summary>
    Errors returned by LoadLibraryEx on Windows while attempting to load
    ffmpegsumo.dll.
  </summary>
</histogram>

<histogram name="Media.InputErrorMac" units="OSStatus">
  <owner>tommi@chromium.org</owner>
  <summary>
    Error codes that we encounter while setting up an AUAudioInputStream on Mac.
  </summary>
</histogram>

<histogram name="Media.InputInvalidSampleRateMac" units="Hz">
  <obsolete>
    Deprecated and removed from code as of 02/2016.
  </obsolete>
  <owner>henrika@chromium.org</owner>
  <summary>
    Invalid input sample rate when calling AUAudioInputStream::Open on Mac.
  </summary>
</histogram>

<histogram name="Media.InputStreamDuration" units="ms">
  <owner>henrika@chromium.org</owner>
  <summary>
    Duration in milliseconds of low-latency audio input streams. Sampled when
    the stream is closed by the AudioInputController.
  </summary>
</histogram>

<histogram name="Media.LinuxAudioIO" enum="LinuxAudioIO">
  <owner>dalecurtis@chromium.org</owner>
  <summary>
    Audio IO layer used by the Linux OS, sampled once at startup of the browser.
  </summary>
</histogram>

<histogram name="Media.LoadType" enum="MediaLoadType">
  <owner>xhwang@chromium.org</owner>
  <summary>
    Load type of HTML5 media, such as URL, MediaSource and MediaStream.
  </summary>
</histogram>

<histogram name="Media.LocalRendererSinkStates" enum="LocalRendererSinkStates">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    State of the WebRtc local renderer, sampled once during the lifetime of a
    local renderer.
  </summary>
</histogram>

<histogram name="Media.MicrophoneMuted" enum="MicrophoneMuteResult">
  <owner>henrika@chromium.org</owner>
  <summary>
    Heuristically detects if the user has muted the microphone or not. Measured
    approximately four times per minute.
  </summary>
</histogram>

<histogram name="Media.MicrophoneVolume" units="%">
  <owner>henrika@chromium.org</owner>
  <summary>
    Level of the microphone volume measured in percent. This value can be larger
    than 100% on Linux. Measured approximately four times per minute.
  </summary>
</histogram>

<histogram name="Media.Midi.InputPorts" units="devices">
  <owner>toyoshim@chromium.org</owner>
  <summary>Connected input port numbers on the initialization.</summary>
</histogram>

<histogram name="Media.Midi.OutputPorts" units="devices">
  <owner>toyoshim@chromium.org</owner>
  <summary>Connected output port numbers on the initialization.</summary>
</histogram>

<histogram name="Media.Midi.ResultOnShutdown" enum="MidiResult">
  <owner>toyoshim@chromium.org</owner>
  <summary>The final status of MidiManager on browser shutdown.</summary>
</histogram>

<histogram name="Media.Midi.SysExMessageSizeUpTo1MB" units="bytes">
  <owner>toyoshim@chromium.org</owner>
  <summary>Reports sysex message size.</summary>
</histogram>

<histogram name="Media.Midi.Usage" enum="MidiUsage">
  <owner>toyoshim@chromium.org</owner>
  <summary>MidiManager usages to understand the API use case.</summary>
</histogram>

<histogram name="Media.MSE.AudioCodec" enum="MSECodec">
  <owner>acolwell@chromium.org</owner>
  <summary>
    Audio codec used in Media Source Extensions playback. Set when AddId() is
    called during playback.
  </summary>
</histogram>

<histogram name="Media.MSE.DetectedTrackCount.Audio">
  <owner>wolenetz@chromium.org</owner>
  <summary>
    Number of detected audio tracks in Media Source Extensions playback. Not all
    may be usable by the player.
  </summary>
</histogram>

<histogram name="Media.MSE.DetectedTrackCount.Text">
  <owner>wolenetz@chromium.org</owner>
  <summary>
    Number of detected text tracks in Media Source Extensions playback. Not all
    may be usable by the player. This count includes only explicitly signalled
    tracks in MSE initialization segments parsed from WebM or ISO BMFF
    bytestreams.
  </summary>
</histogram>

<histogram name="Media.MSE.DetectedTrackCount.Video">
  <owner>wolenetz@chromium.org</owner>
  <summary>
    Number of detected video tracks in Media Source Extensions playback. Not all
    may be usable by the player.
  </summary>
</histogram>

<histogram name="Media.MSE.LateAudioFrames"
    units="late frames per million frames">
  <owner>qinmin@chromium.org</owner>
  <owner>timav@chromium.org</owner>
  <summary>
    Relative number of late audio frames wrt total number of audio frames in MSE
    playback, multiplied by one million. The audio frame is considered late if
    it might cause an underrun, i.e. comes from decoder when audio buffer is
    already depleted.
  </summary>
</histogram>

<histogram name="Media.MSE.LateVideoFrames"
    units="late frames per million frames">
  <owner>qinmin@chromium.org</owner>
  <owner>timav@chromium.org</owner>
  <summary>
    Relative number of late video frames wrt total number of video frames in MSE
    playback, multiplied by one million. The video frame is late if it missed
    its presentation time as determined by PTS when it comes from decoder. The
    rendering policy (i.e. render or skip) does not affect it.
  </summary>
</histogram>

<histogram name="Media.MSE.NumberOfTracks">
  <owner>acolwell@chromium.org</owner>
  <summary>
    Number of tracks specified to AddId() for Media Source Extensions playback.
    May be called multiple times per element if playback is dynamically altered.
  </summary>
</histogram>

<histogram name="Media.MSE.Playback" enum="BooleanSuccess">
  <obsolete>
    Renamed to Media.LoadType.
  </obsolete>
  <owner>acolwell@chromium.org</owner>
  <summary>
    Whether Media Source Extensions is specified for playback of Media elements.
    Sampled when media pipeline starts.
  </summary>
</histogram>

<histogram name="Media.MSE.PlaybackDuration" units="ms">
  <owner>qinmin@chromium.org</owner>
  <owner>timav@chromium.org</owner>
  <summary>
    Duration of an uninterrupted MSE playback. This is the time interval between
    the playback starts or resumes and the moment when user stops the playback
    by pressing pause, initiating a seek etc. Measured in media time in
    milliseconds.
  </summary>
</histogram>

<histogram name="Media.MSE.Starvations" units="starvations per million frames">
  <owner>qinmin@chromium.org</owner>
  <owner>timav@chromium.org</owner>
  <summary>
    Relative number of starvations wrt total number of frames in MSE playback,
    multiplied by one million. Starvation happens when the player interrupts the
    regular playback and asks for more data, conditions are player-specific.
  </summary>
</histogram>

<histogram name="Media.MSE.VideoCodec" enum="MSECodec">
  <owner>acolwell@chromium.org</owner>
  <summary>
    Video codec used in Media Source Extensions playback. Set when AddId() is
    called during playback.
  </summary>
</histogram>

<histogram name="Media.Netflix.AudioBitrate" units="kbps">
  <obsolete>
    Deprecated 04/2016 as doesn't have data nor owner.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The audio bit rate as reported by the Netflix application.  May be reported
    multiple times as network conditions change during playback.
  </summary>
</histogram>

<histogram name="Media.Netflix.AudioNumChannels" units="channels">
  <obsolete>
    Deprecated 04/2016 as doesn't have data nor owner.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The number of audio channels as reported by the Netflix application. May be
    reported multiple times as network conditions change during playback.
  </summary>
</histogram>

<histogram name="Media.Netflix.DelayedAndDroppedFramesPer5Sec"
    units="frames/5s">
  <obsolete>
    Deprecated 04/2016 as doesn't have data nor owner.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The average number of delayed and dropped frames for the Netflix
    application.  Reported every 5 seconds.
  </summary>
</histogram>

<histogram name="Media.Netflix.DisplayedFramesPerSecond" units="frames/s">
  <obsolete>
    Deprecated 07/2015 in issue 508534.
  </obsolete>
  <owner>halliwell@chromium.org</owner>
  <summary>
    The average number of displayed frames for the Netflix application. Reported
    every 5 seconds.
  </summary>
</histogram>

<histogram name="Media.Netflix.VideoBitrate" units="kbps">
  <obsolete>
    Deprecated 04/2016 as doesn't have data nor owner.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Video bit rate as reported by the Netflix application.  May be reported
    multiple times as network conditions change during playback.
  </summary>
</histogram>

<histogram name="Media.Netflix.VideoHeight" units="pixels">
  <obsolete>
    Deprecated 04/2016 as doesn't have data nor owner.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Video height as reported by the Netflix application.  May be reported
    multiple times as network conditions change during playback.
  </summary>
</histogram>

<histogram name="Media.Notification.Click" enum="MediaNotificationClickSource">
  <owner>mlamouri@chromium.org</owner>
  <owner>avayvod@chromium.org</owner>
  <owner>zqzhang@chromium.org</owner>
  <summary>
    The type of media notification the user clicked to go back to Chrome.
  </summary>
</histogram>

<histogram name="Media.PepperVideoDecoderError"
    enum="VideoDecodeAcceleratorError">
  <owner>ihf@chromium.org</owner>
  <owner>posciak@chromium.org</owner>
  <summary>Counts of video decode errors reported to plugin.</summary>
</histogram>

<histogram name="Media.PepperVideoDecoderPictureCount">
  <owner>ihf@chromium.org</owner>
  <owner>posciak@chromium.org</owner>
  <summary>
    Number of PictureBuffers/textures requested per hardware decoder creation.
    This value varies by platform and video. A user visible video may trigger
    multiple decoder creations (sometimes every 5 seconds) but would normally
    not hold more than 2 sets of buffers at any given time in memory.
  </summary>
</histogram>

<histogram name="Media.PepperVideoDecoderPictureHeight">
  <owner>ihf@chromium.org</owner>
  <owner>posciak@chromium.org</owner>
  <summary>
    Vertical video resolution rounded to the nearest bucket. (Corresponds
    roughly to the number in 720p.)
  </summary>
</histogram>

<histogram name="Media.PipelineStatus" enum="PipelineStatus">
  <owner>prabhur@chromium.org</owner>
  <owner>dalecurtis@chromium.org</owner>
  <summary>
    Status of the media pipeline at the end of its lifecycle suffixed by stream
    and video decoder type.
  </summary>
</histogram>

<histogram name="Media.PlayMovies.DelayedAndDroppedFramesPer5Sec"
    units="frames/5s">
  <obsolete>
    Deprecated 04/2016 as doesn't have data nor owner.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The average number of delayed and dropped frames for the PlayMovies
    application.  Reported every 5 seconds.
  </summary>
</histogram>

<histogram name="Media.PlayMovies.DisplayedFramesPerSecond" units="frames/s">
  <obsolete>
    Deprecated 07/2015 in issue 508534.
  </obsolete>
  <owner>halliwell@chromium.org</owner>
  <summary>
    The average number of displayed frames for the PlayMovies application.
    Reported every 5 seconds.
  </summary>
</histogram>

<histogram name="Media.RTCVideoDecoderError" enum="VideoDecodeAcceleratorError">
  <owner>posciak@chromium.org</owner>
  <summary>Counts of video decode errors reported to RTCVideoDecoder.</summary>
</histogram>

<histogram name="Media.RTCVideoDecoderInitDecodeStatus" enum="BooleanSuccess">
  <obsolete>
    Renamed to Media.RTCVideoDecoderInitDecodeSuccess.
  </obsolete>
  <owner>posciak@chromium.org</owner>
  <summary>Results of attempts to RTCVideoDecoder::InitDecode().</summary>
</histogram>

<histogram name="Media.RTCVideoDecoderInitDecodeSuccess" enum="BooleanSuccess">
  <owner>posciak@chromium.org</owner>
  <summary>
    Indicates whether we were successful in initializing hardware video decoder
    for use in the RTC pipeline.
  </summary>
</histogram>

<histogram name="Media.RTCVideoEncoderInitEncodeSuccess" enum="BooleanSuccess">
  <owner>posciak@chromium.org</owner>
  <summary>
    Indicates whether we were successful in initializing hardware video encoder
    for use in the RTC pipeline.
  </summary>
</histogram>

<histogram name="Media.RTCVideoEncoderProfile" enum="VideoCodecProfile">
  <owner>posciak@chromium.org</owner>
  <summary>Video codec profile used in RTC video encoder.</summary>
</histogram>

<histogram name="Media.Session.ActiveTime" units="ms">
  <owner>avayvod@chromium.org</owner>
  <owner>mlamouri@chromium.org</owner>
  <summary>
    Time during which a media session has been active, in other words, the time
    between an activation and deactivation, without counting time while it was
    suspended. If a session is activated after being deactivated, there will be
    two entries. For example, if a user plays a song but is interrupted by a
    phone call, it will only account for the song playing time.
  </summary>
</histogram>

<histogram name="Media.Session.Pause" enum="MediaSessionActionSource">
  <owner>avayvod@chromium.org</owner>
  <owner>mlamouri@chromium.org</owner>
  <summary>
    The number of times the user paused playback of a media session using other
    means than the pause button on the page.
  </summary>
</histogram>

<histogram name="Media.Session.Play" enum="MediaSessionActionSource">
  <owner>avayvod@chromium.org</owner>
  <owner>mlamouri@chromium.org</owner>
  <summary>
    The number of times the user started playback of a media session using other
    means than the play button on the page.
  </summary>
</histogram>

<histogram name="Media.Session.RequestAudioFocusResult" enum="BooleanSuccess">
  <owner>avayvod@chromium.org</owner>
  <owner>mlamouri@chromium.org</owner>
  <summary>
    Indicate whether the native requestAudioFocus() call was successful.
  </summary>
</histogram>

<histogram name="Media.Session.Stop" enum="MediaSessionActionSource">
  <owner>avayvod@chromium.org</owner>
  <owner>mlamouri@chromium.org</owner>
  <summary>
    The number of times the user stopped a media session using other means than
    the pause button on the page.
  </summary>
</histogram>

<histogram name="Media.Session.Suspended" enum="MediaSessionSuspendedSource">
  <owner>avayvod@chromium.org</owner>
  <owner>mlamouri@chromium.org</owner>
  <summary>
    The number of times a media session is suspended and why it has been
    suspended.
  </summary>
</histogram>

<histogram name="Media.TimeToPipelineStarted" units="ms">
  <obsolete>
    Removed from code 2014/6/18.
  </obsolete>
  <owner>scherkus@chromium.org</owner>
  <summary>
    Time in milliseconds from HTML5 media pipeline creation to playing event.
  </summary>
</histogram>

<histogram name="Media.TotalMBytes" units="MB">
  <owner>hajimehoshi@chromium.org</owner>
  <owner>kouhei@chromium.org</owner>
  <owner>scherkus@chromium.org</owner>
  <summary>Size of HTML5 media (when known), in MB.</summary>
</histogram>

<histogram name="Media.UncacheableReason" enum="UncacheableReason">
  <owner>scherkus@chromium.org</owner>
  <summary>
    Reasons a media response won't be used to satisfy a future request.
  </summary>
</histogram>

<histogram name="Media.URLScheme" enum="URLSchemeForHistogram">
  <owner>scherkus@chromium.org</owner>
  <summary>
    URL scheme used with HTML5 media. (each URL provides one sample)
  </summary>
</histogram>

<histogram name="Media.VAJDA.DecoderFailure" enum="VAJDADecoderFailure">
  <owner>kcwu@chromium.org</owner>
  <summary>
    Error codes reported by jpeg decode using VA-API hardware jpeg decoder.
  </summary>
</histogram>

<histogram name="Media.VAVDA.DecoderFailure" enum="VAVDADecoderFailure">
  <owner>posciak@chromium.org</owner>
  <summary>
    Error codes reported by video decode using VA-API hardware video decoder.
  </summary>
</histogram>

<histogram name="Media.VAVDAH264.DecoderFailure" enum="VAVDAH264DecoderFailure">
  <obsolete>
    Deprecated as of 4/2015, partially replaced by Media.VAVDA.DecoderFailure.
  </obsolete>
  <owner>posciak@chromium.org</owner>
  <summary>
    Error codes reported by video decode using VA-API hardware video decoder.
  </summary>
</histogram>

<histogram name="Media.VAVEA.EncoderFailure" enum="VAVEAEncoderFailure">
  <owner>posciak@chromium.org</owner>
  <summary>
    Error codes reported by video encode using VA-API hardware video encoder.
  </summary>
</histogram>

<histogram name="Media.VideoCapture.AspectRatio" units="%">
  <owner>mcasas@chromium.org</owner>
  <summary>
    Video Capture Device captured aspect ratio, as a rounded integer multiplied
    by 100. The collection is made in the VideoCaptureController upon reception
    of the first frame.
  </summary>
</histogram>

<histogram name="Media.VideoCapture.BlacklistedDevice"
    enum="BlacklistedVideoCaptureDeviceNames">
  <owner>mcasas@chromium.org</owner>
  <summary>
    Counts appearances of Blacklisted Video Capture devices during enumeration.
    This collection happens during first enumeration in the appropriate
    platforms' VideoCaptureDeviceFactory.
  </summary>
</histogram>

<histogram name="Media.VideoCapture.FrameRate" units="fps">
  <owner>mcasas@chromium.org</owner>
  <summary>
    Video Capture Device frame rate requested by VideoCaptureManager on
    AllocateAndStart(). The collection is made in the VideoCaptureController
    upon reception of the first frame.
  </summary>
</histogram>

<histogram name="Media.VideoCapture.FramesReceived" enum="BooleanReceived">
  <obsolete>
    Deprecated as of 10/2014 in issue 422822. Replaced by
    Media.VideoCaptureManager.Event and the two new values 3 and 4 in the enum
    VideoCaptureEvent.
  </obsolete>
  <owner>grunell@chromium.org</owner>
  <owner>mcasas@chromium.org</owner>
  <summary>
    Whether any frames were received during a video capture session. This metric
    is recorded when a video source is stopped.
  </summary>
</histogram>

<histogram name="Media.VideoCapture.Height" units="pixels">
  <owner>mcasas@chromium.org</owner>
  <summary>
    Video Capture Device captured frame height in pixels. The collection is made
    in the VideoCaptureController upon reception of the first frame.
  </summary>
</histogram>

<histogram name="Media.VideoCapture.MacBook.HardwareVersionWhenNoCamera"
    enum="MacBookVersions">
  <owner>perkj@chromium.org</owner>
  <summary>
    MacBook hardware version used when Chrome cannot enumerate a video device.
    This is used for tracking http://crbug.com/582931.
  </summary>
</histogram>

<histogram name="Media.VideoCapture.MacBook.NumberOfDevices" units="devices">
  <owner>perkj@chromium.org</owner>
  <summary>
    Number of video capture devices detected by Chrome during device
    enumeration. Zero devices indicate a problem since all MacBooks should have
    a built-in camera. This is used for tracking http://crbug.com/582931.
  </summary>
</histogram>

<histogram name="Media.VideoCapture.PixelFormat" enum="CapturePixelFormat">
  <obsolete>
    Deprecated 10/2014 in Issue 660493002.
  </obsolete>
  <owner>mcasas@chromium.org</owner>
  <summary>
    Pixel format provided by a Video Capture Device. The collection is made in
    the VideoCaptureController upon reception of the first frame.
  </summary>
</histogram>

<histogram name="Media.VideoCapture.Width" units="pixels">
  <owner>mcasas@chromium.org</owner>
  <summary>
    Video Capture Device captured frame width in pixels. The collection is made
    in the VideoCaptureController upon reception of the first frame.
  </summary>
</histogram>

<histogram name="Media.VideoCaptureApi.Mac" enum="CaptureApiMac">
  <owner>mcasas@chromium.org</owner>
  <summary>
    Video Capture and device enumeration/monitoring API used for Mac OS Lion or
    later. Collection is made only once when the flags are parsed and the
    appropriate library selected and/or loaded, successfully or not.
  </summary>
</histogram>

<histogram name="Media.VideoCaptureGpuJpegDecoder.InitDecodeSuccess"
    enum="BooleanSuccess">
  <owner>henryhsu@chromium.org</owner>
  <summary>
    Indicates whether we were successful in initializing hardware jpeg decoder
    for attempts to VideoCaptureGpuJpegDecoder::Initialize().
  </summary>
</histogram>

<histogram name="Media.VideoCaptureManager" units="ms">
  <owner>mcasas@chromium.org</owner>
  <summary>Measures the time taken for VideoCaptureManager::</summary>
</histogram>

<histogram name="Media.VideoCaptureManager.Event" enum="VideoCaptureEvent">
  <owner>grunell@chromium.org</owner>
  <owner>mcasas@chromium.org</owner>
  <summary>
    Counts video capture event, such as start and stop capture. Note that the
    ideal case is 50% start events and 50% normal stop events.
  </summary>
</histogram>

<histogram name="Media.VideoCodec" enum="VideoCodec">
  <owner>scherkus@chromium.org</owner>
  <summary>Video codec used in HTML5 media.</summary>
</histogram>

<histogram name="Media.VideoCodecProfile" enum="VideoCodecProfile">
  <owner>scherkus@chromium.org</owner>
  <summary>Video codec profile used in HTML5 media.</summary>
</histogram>

<histogram name="Media.VideoCodedAspectRatio" units="%">
  <owner>scherkus@chromium.org</owner>
  <summary>Coded aspect ratio of HTML5 video.</summary>
</histogram>

<histogram name="Media.VideoCodedWidth">
  <owner>scherkus@chromium.org</owner>
  <summary>Coded width of HTML5 video.</summary>
</histogram>

<histogram name="Media.VideoColorRange" enum="FFmpegColorRanges">
  <owner>scherkus@chromium.org</owner>
  <summary>
    Pixel format color range of HTML5 video. Emitted on video load.
  </summary>
</histogram>

<histogram name="Media.VideoDecoderFallback" enum="BooleanDidFallBack">
  <owner>watk@chromium.org</owner>
  <summary>
    Whether Chrome had to fall back to a secondary video decoder after the
    primary decoder failed reinitialization.
  </summary>
</histogram>

<histogram name="Media.VideoFormat" enum="VideoFormat">
  <obsolete>
    Replaced by Media.VideoFramePixelFormat 05/2015.
  </obsolete>
  <owner>mcasas@chromium.org</owner>
  <summary>Pixel format used in HTML5 video. Emitted on video load.</summary>
</histogram>

<histogram name="Media.VideoFrameColorSpace" enum="VideoFrameColorSpace">
  <owner>mcasas@chromium.org</owner>
  <owner>watk@chromium.org</owner>
  <summary>
    Color space or range used in HTML5 video. Emitted on video load.
  </summary>
</histogram>

<histogram name="Media.VideoFramePixelFormat" enum="VideoFramePixelFormat">
  <obsolete>
    Replaced by Media.VideoPixelFormatUnion 08/2015.
  </obsolete>
  <owner>mcasas@chromium.org</owner>
  <owner>watk@chromium.org</owner>
  <summary>Pixel format used in HTML5 video. Emitted on video load.</summary>
</histogram>

<histogram name="Media.VideoPixelFormat" enum="VideoPixelFormat">
  <obsolete>
    Replaced by Media.VideoFormat 05/2015.
  </obsolete>
  <owner>scherkus@chromium.org</owner>
  <summary>Pixel format used in HTML5 video. Emitted on video load.</summary>
</histogram>

<histogram name="Media.VideoPixelFormatUnion" enum="VideoPixelFormatUnion">
  <owner>mcasas@chromium.org</owner>
  <owner>emircan@chromium.org</owner>
  <summary>
    Pixel format used in capture and HTML5 video. Emitted on video load.
  </summary>
</histogram>

<histogram name="Media.VideoRenderer.CadenceChanges" units="changes">
  <owner>dalecurtis@chromium.org</owner>
  <summary>
    Indicates how many cadence changes have occurred during playback, a zero
    value is emitted at the beginning of playback. Subsequent values are emitted
    during video rendering for each cadence change (up to a maximum of 10).
  </summary>
</histogram>

<histogram name="Media.VideoRenderer.LowDelay" enum="Boolean">
  <owner>xhwang@chromium.org</owner>
  <summary>
    Indicates whether video is rendering in low delay mode. It's recorded when a
    video starts playing.
  </summary>
</histogram>

<histogram name="Media.VideoRotation" enum="VideoRotation">
  <owner>suderman@chromium.org</owner>
  <summary>Metadata rotation in mp4 videos. Emitted during demuxing.</summary>
</histogram>

<histogram name="Media.VideoTrackAdapter.FramesReceived" enum="BooleanReceived">
  <obsolete>
    Replaced by Media.VideoCapture.FramesReceived 09/2014.
  </obsolete>
  <owner>grunell@chromium.org</owner>
  <owner>mcasas@chromium.org</owner>
  <summary>
    If any frames were received during a video capture session. It's recorded
    when a video source is stopped.
  </summary>
</histogram>

<histogram name="Media.VideoVisibleAspectRatio" units="%">
  <owner>scherkus@chromium.org</owner>
  <summary>Visible aspect ratio of HTML5 video.</summary>
</histogram>

<histogram name="Media.VideoVisibleWidth">
  <owner>scherkus@chromium.org</owner>
  <summary>Visible width of HTML5 video.</summary>
</histogram>

<histogram name="Media.Vpx.VideoDecoderBuffersInUseByDecoder">
  <owner>dcastagna@chromium.org</owner>
  <summary>Number of frame buffers used by Vpx decoder.</summary>
</histogram>

<histogram name="Media.Vpx.VideoDecoderBuffersInUseByDecoderAndVideoFrame">
  <owner>dcastagna@chromium.org</owner>
  <summary>
    Number of frame buffers currently in use by both Vpx decoder and a
    VideoFrame.
  </summary>
</histogram>

<histogram name="Media.VTVDA.HardwareAccelerated"
    enum="BooleanHardwareAccelerated">
  <owner>sandersd@chromium.org</owner>
  <summary>
    Whether a VTDecompressionSession is internally using hardware accelerated
    decoding.
  </summary>
</histogram>

<histogram name="Media.VTVDA.InitializationFailureReason"
    enum="VTVDAInitializationFailureType">
  <owner>sandersd@chromium.org</owner>
  <summary>
    Count of VideoToolbox initialization failure reasons. Successful
    initializations are counted as a special failure type. The sum of successes
    and failures gives a lower bound on the number of attempted initializations.
  </summary>
</histogram>

<histogram name="Media.VTVDA.SessionFailureReason"
    enum="VTVDASessionFailureType">
  <owner>sandersd@chromium.org</owner>
  <summary>
    Count of VTVDA session failure reasons. Successful initializations are
    counted as a special failure type. Since only successfully initialized
    session can fail, failures rates are computed as a simple ratio.
  </summary>
</histogram>

<histogram name="Media.WindowsCoreAudioInput" enum="BooleanSuccess">
  <owner>henrika@chromium.org</owner>
  <summary>
    Whether Chrome is using Windows Core Audio for audio input or not. Updated
    on Windows only when a low-latency audio input stream is created.
  </summary>
</histogram>

<histogram name="Media.YouTube.DelayedAndDroppedFramesPer5Sec"
    units="frames/5s">
  <obsolete>
    Deprecated 04/2016 as doesn't have data nor owner.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The average number of delayed and dropped frames for the YouTube
    application.  Reported every 5 seconds.
  </summary>
</histogram>

<histogram name="Media.YouTube.DisplayedFramesPerSecond" units="frames/s">
  <obsolete>
    Deprecated 07/2015 in issue 508534.
  </obsolete>
  <owner>halliwell@chromium.org</owner>
  <summary>
    The average number of displayed frames for the YouTube application. Reported
    every 5 seconds.
  </summary>
</histogram>

<histogram name="Media.YouTube.TimeToBufferAv" units="ms">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Time needed to pre-buffer A/V data before the actual playback for the
    YouTube application.
  </summary>
</histogram>

<histogram name="Media.YouTube.TimeToBufferAvAfterAbort" units="ms">
  <obsolete>
    Deprecated 04/2016 as doesn't have data nor owner.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Time needed to buffer A/V data after an abort for the YouTube application.
  </summary>
</histogram>

<histogram name="Media.YouTube.TimeToBufferAvAfterUnderrun" units="ms">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Time needed to buffer A/V data after an underrun for the YouTube
    application.
  </summary>
</histogram>

<histogram name="MediaGalleries.ScanCancelTime" units="ms">
  <owner>vandebo@chromium.org</owner>
  <summary>If a media scan was cancelled, the duration (in ms) it ran.</summary>
</histogram>

<histogram name="MediaGalleries.ScanDirectoriesFound">
  <owner>vandebo@chromium.org</owner>
  <summary>
    The number of directories with media files found during a scan.
  </summary>
</histogram>

<histogram name="MediaGalleries.ScanFinishedTime" units="ms">
  <owner>vandebo@chromium.org</owner>
  <summary>
    Duration in milliseconds taken to do a media scan that ran to completion.
  </summary>
</histogram>

<histogram name="MediaGalleries.ScanGalleriesGranted" units="%">
  <owner>vandebo@chromium.org</owner>
  <summary>
    The percentage of galleries accepted (not deselected) from the scan result
    dialog.
  </summary>
</histogram>

<histogram name="MediaGalleries.ScanGalleriesPopulated">
  <owner>vandebo@chromium.org</owner>
  <summary>
    The number of galleries added or updated in preferences after a scan.
  </summary>
</histogram>

<histogram name="MediaGalleries.Usage" enum="MediaGalleriesUsageType">
  <owner>vandebo@chromium.org</owner>
  <summary>Various usage counts for media galleries.</summary>
</histogram>

<histogram name="MediaRouter.Icon.Click.Location"
    enum="MediaRouterDialogOpenOrigin">
  <owner>apacible@chromium.org</owner>
  <summary>Location the user clicked to open the Media Router dialog.</summary>
</histogram>

<histogram name="MediaRouter.Provider.Version" enum="MediaRouteProviderVersion">
  <owner>mfoltz@chromium.org</owner>
  <summary>
    Records how the major version of the Media Router component extension
    compares to the major version of the browser.
  </summary>
</histogram>

<histogram name="MediaRouter.Provider.WakeReason"
    enum="MediaRouteProviderWakeReason">
  <owner>mfoltz@chromium.org</owner>
  <summary>
    Reason that the Media Router woke the Media Route Provider event page.
  </summary>
</histogram>

<histogram name="MediaRouter.Provider.Wakeup" enum="MediaRouteProviderWakeup">
  <owner>mfoltz@chromium.org</owner>
  <summary>
    Records the outcome of waking the Media Router component's event page.
  </summary>
</histogram>

<histogram name="MediaRouter.Route.CreationOutcome"
    units="MediaRouterCreateRouteOutcome">
  <owner>apacible@chromium.org</owner>
  <summary>
    The number of times a Media Router create route response succeeds or fails.
    This breaks down the different failure types in to separate buckets.
  </summary>
</histogram>

<histogram name="MediaRouter.Ui.Action.CloseLatency" units="ms">
  <owner>apacible@chromium.org</owner>
  <summary>
    Duration in milliseconds taken from the user opening the Media Router dialog
    to the user closing the dialog. This is only recorded if closing the dialog
    is the first action the user takes.
  </summary>
</histogram>

<histogram name="MediaRouter.Ui.Action.StartLocal.Latency" units="ms">
  <owner>apacible@chromium.org</owner>
  <summary>
    Duration in milliseconds taken from the Media Router dialog showing the sink
    list and being populated with at least one device to the user selecting a
    device immediately after to create a new route.
  </summary>
</histogram>

<histogram name="MediaRouter.Ui.Action.StartLocalPosition"
    enum="MediaRouterSinkPositionLabel">
  <owner>apacible@chromium.org</owner>
  <summary>The index of the sink that was selected in the sink list.</summary>
</histogram>

<histogram name="MediaRouter.Ui.Action.StartLocalSessionSuccessful"
    enum="BooleanSuccess">
  <owner>apacible@chromium.org</owner>
  <summary>
    The number of times a session was successfully started versus failed.
  </summary>
</histogram>

<histogram name="MediaRouter.Ui.Action.StopRoute" enum="MediaRouteType">
  <owner>apacible@chromium.org</owner>
  <summary>The number of times a user stops different types of routes.</summary>
</histogram>

<histogram name="MediaRouter.Ui.Device.Count">
  <owner>apacible@chromium.org</owner>
  <summary>
    Counts the number of devices known and populated to the Media Router dialog
    three seconds after the dialog loads. Always expected to be non-negative.
  </summary>
</histogram>

<histogram name="MediaRouter.Ui.Dialog.LoadedWithData" units="ms">
  <owner>apacible@chromium.org</owner>
  <summary>
    Duration in milliseconds taken from the user click to open the Media Router
    dialog to initializing the dialog with data.
  </summary>
</histogram>

<histogram name="MediaRouter.Ui.Dialog.Paint" units="ms">
  <owner>apacible@chromium.org</owner>
  <summary>
    Duration in milliseconds taken from a user click to open the Media Router
    dialog to the initial paint.
  </summary>
</histogram>

<histogram name="MediaRouter.Ui.FirstAction" units="MediaRouterUserAction">
  <owner>apacible@chromium.org</owner>
  <summary>
    The first action taken by the user after opening the Media Router dialog.
  </summary>
</histogram>

<histogram name="MediaRouter.Ui.InitialState" enum="MediaRouterInitialViews">
  <owner>apacible@chromium.org</owner>
  <summary>
    The view that was shown when the Media Router dialog is initially opened.
  </summary>
</histogram>

<histogram name="MediaRouter.Ui.Navigate.SourceSelection"
    enum="MediaRouterSourceTypes">
  <owner>apacible@chromium.org</owner>
  <summary>
    The number of times the user selects a specific cast source type.
  </summary>
</histogram>

<histogram name="Memory.BackingStore">
  <owner>hajimehoshi@chromium.org</owner>
  <owner>kenjibaheux@google.com</owner>
  <owner>kouhei@chromium.org</owner>
  <summary>TBD.</summary>
</histogram>

<histogram name="Memory.Browser" units="KB">
  <owner>hajimehoshi@chromium.org</owner>
  <owner>kenjibaheux@google.com</owner>
  <owner>kouhei@chromium.org</owner>
  <summary>
    The private working set used by the browser process.  Recorded once per UMA
    ping.
  </summary>
</histogram>

<histogram name="Memory.CachedFontAndDC">
  <owner>hajimehoshi@chromium.org</owner>
  <owner>kenjibaheux@google.com</owner>
  <owner>kouhei@chromium.org</owner>
  <summary>TBD.</summary>
</histogram>

<histogram name="Memory.Chrome" units="KB">
  <owner>hajimehoshi@chromium.org</owner>
  <owner>kenjibaheux@google.com</owner>
  <owner>kouhei@chromium.org</owner>
  <summary>
    The private working set used by each chrome:// renderer process.  Each
    process provides one sample.  Recorded once per UMA ping.
  </summary>
</histogram>

<histogram name="Memory.ChromeProcessCount">
  <owner>hajimehoshi@chromium.org</owner>
  <owner>kenjibaheux@google.com</owner>
  <owner>kouhei@chromium.org</owner>
  <summary>
    The count of active chrome:// renderer processes.  Recorded once per UMA
    ping.
  </summary>
</histogram>

<histogram name="Memory.CompressibleStringCount"
    enum="CompressibleStringCountType">
  <owner>hajimehoshi@chromium.org</owner>
  <summary>
    This records the frequency with which JavaScript source strings are
    compressed and decompressed in foreground and background tabs.  Compressing
    runs 10 seconds after the tab goes background and decompressing runs when
    JavaScript source string is required (e.g. V8 starts to compile). This
    measurement is a preparation to introduce CompressibleString class for
    JavaScript source strings to reduce Blink memory usage.
  </summary>
</histogram>

<histogram name="Memory.DiscardableAllocationSize" units="KB">
  <owner>reveman@chromium.org</owner>
  <summary>
    The discardable memory allocation size in KB. Recorded each time a new
    discardable memory instance is created.
  </summary>
</histogram>

<histogram name="Memory.Extension" units="KB">
  <owner>hajimehoshi@chromium.org</owner>
  <owner>kenjibaheux@google.com</owner>
  <owner>kouhei@chromium.org</owner>
  <summary>
    The private working set used by each extension process.  Each process
    provides one sample.  Recorded once per UMA ping.
  </summary>
</histogram>

<histogram name="Memory.GlyphPagesPerLoad">
  <owner>hajimehoshi@chromium.org</owner>
  <owner>kenjibaheux@google.com</owner>
  <owner>kouhei@chromium.org</owner>
  <summary>
    The number of glyph pages present in the renderer when it commits a load.
    Since this is per-sub-process, you can get the average number of glyph pages
    in the system by multiplying this number with the average number of
    renderers. Note that this typically won't count the glyph pages added as a
    result of the load that just committed, since layout will happen after the
    commit. There are 512 bytes per glyph page, but this number also very
    closely approximates the number of glyph width map pages in the same
    renderer. The only difference is that if you have font fallback, it will
    make a new glyph page and no width page, but in most common cases there is
    no fallback). Width pages are 1K each (256 floats), so you could think of
    this value as being the number of &quot;1.5K units related to glyphs per
    renderer per page load&quot;.
  </summary>
</histogram>

<histogram name="Memory.Gpu" units="KB">
  <owner>hajimehoshi@chromium.org</owner>
  <owner>jamescook@chromium.org</owner>
  <owner>kenjibaheux@google.com</owner>
  <owner>kouhei@chromium.org</owner>
  <summary>
    The private working set used by the GPU process.  Recorded once per UMA
    ping.
  </summary>
</histogram>

<histogram name="Memory.Graphics" units="MB">
  <owner>hajimehoshi@chromium.org</owner>
  <owner>jamescook@chromium.org</owner>
  <owner>kenjibaheux@google.com</owner>
  <owner>kouhei@chromium.org</owner>
  <summary>
    System-wide graphics driver memory consumption.  Recorded on Chrome OS for
    platforms where it is exposed by the kernel (for example, Intel i915 and
    Exynos Mali).  Recorded once per UMA ping.
  </summary>
</histogram>

<histogram name="Memory.IPCChannelReader.ReceivedMessageSize" units="bytes">
  <obsolete>
    Obsolete as of 11/2015
  </obsolete>
  <owner>dskiba@chromium.org</owner>
  <summary>Size of messages received by IPC::ChannelReader.</summary>
</histogram>

<histogram name="Memory.NativeClient" units="KB">
  <owner>hajimehoshi@chromium.org</owner>
  <owner>kenjibaheux@google.com</owner>
  <owner>kouhei@chromium.org</owner>
  <summary>
    The private working set used by each Native Client loader process.  Each
    process provides one sample.  Recorded once per UMA ping.
  </summary>
</histogram>

<histogram name="Memory.NativeClientBroker" units="KB">
  <owner>hajimehoshi@chromium.org</owner>
  <owner>kenjibaheux@google.com</owner>
  <owner>kouhei@chromium.org</owner>
  <summary>
    The private working set used by each Native Client broker process.  Each
    process provides one sample.  Recorded once per UMA ping.
  </summary>
</histogram>

<histogram name="Memory.OOMKill.Contents.MemAllocatedMB" units="MB">
  <owner>oshima@chromium.org</owner>
  <summary>
    System-wide memory allocation right after a renderer was killed by
    oom-killer, roughly equivalent to the sum of memory allocated with malloc()
    in userspace plus graphics driver memory.
  </summary>
</histogram>

<histogram name="Memory.OOMKill.Contents.MemAvailableMB" units="MB">
  <owner>oshima@chromium.org</owner>
  <summary>
    System-wide file-backed memory plus free memory right after a renderer was
    killed by oom-killer, which should be smaller than or close to what the
    kernel uses to trigger low-memory notifications for tab discards. If this is
    higher than the kernel's threshold for tab discards, renderers may be killed
    due to reasons other than out-of-memory.
  </summary>
</histogram>

<histogram name="Memory.OOMKill.Contents.MemGraphicsMB" units="MB">
  <owner>oshima@chromium.org</owner>
  <summary>
    Graphics driver (GEM object) memory right after a renderer was killed by
    oom-killer.
  </summary>
</histogram>

<histogram name="Memory.OOMKill.Contents.MemShmemMB" units="MB">
  <owner>oshima@chromium.org</owner>
  <summary>
    System-wide shared memory right after a renderer was killed by oom-killer.
    Used primarily for shared buffers in the graphics system. Tracked because
    it's a historical source of leaks on Chrome OS.
  </summary>
</histogram>

<histogram name="Memory.OOMKill.Extensions.MemAllocatedMB" units="MB">
  <owner>oshima@chromium.org</owner>
  <summary>
    System-wide memory allocation right after a renderer was killed by
    oom-killer, roughly equivalent to the sum of memory allocated with malloc()
    in userspace plus graphics driver memory.
  </summary>
</histogram>

<histogram name="Memory.OOMKill.Extensions.MemAvailableMB" units="MB">
  <owner>oshima@chromium.org</owner>
  <summary>
    System-wide file-backed memory plus free memory right after a renderer was
    killed by oom-killer, which should be smaller than or close to what the
    kernel uses to trigger low-memory notifications for tab discards. If this is
    higher than the kernel's threshold for tab discards, renderers may be killed
    due to reasons other than out-of-memory.
  </summary>
</histogram>

<histogram name="Memory.OOMKill.Extensions.MemGraphicsMB" units="MB">
  <owner>oshima@chromium.org</owner>
  <summary>
    Graphics driver (GEM object) memory right after a renderer was killed by
    oom-killer.
  </summary>
</histogram>

<histogram name="Memory.OOMKill.Extensions.MemShmemMB" units="MB">
  <owner>oshima@chromium.org</owner>
  <summary>
    System-wide shared memory right after a renderer was killed by oom-killer.
    Used primarily for shared buffers in the graphics system. Tracked because
    it's a historical source of leaks on Chrome OS.
  </summary>
</histogram>

<histogram name="Memory.OtherProcessCount">
  <owner>hajimehoshi@chromium.org</owner>
  <owner>kenjibaheux@google.com</owner>
  <owner>kouhei@chromium.org</owner>
  <summary>
    The count of other various utility processes (nacl, gpu, sandbox, zygote,
    utility).  Recorded once per UMA ping.
  </summary>
</histogram>

<histogram name="Memory.PepperFlashPlugin" units="KB">
  <owner>thestig@chromium.org</owner>
  <summary>
    The private working set used by each Pepper Flash plugin process. Each
    plugin process provides one sample.  Recorded once per UMA ping.
  </summary>
</histogram>

<histogram name="Memory.PepperPlugin" units="KB">
  <owner>hajimehoshi@chromium.org</owner>
  <owner>kenjibaheux@google.com</owner>
  <owner>kouhei@chromium.org</owner>
  <summary>
    The private working set used by each Pepper plugin process.  Each plugin
    process provides one sample.  Recorded once per UMA ping.
  </summary>
</histogram>

<histogram name="Memory.PepperPluginBroker" units="KB">
  <owner>hajimehoshi@chromium.org</owner>
  <owner>kenjibaheux@google.com</owner>
  <owner>kouhei@chromium.org</owner>
  <summary>
    The private working set used by each Pepper plugin broker process.  Each
    process provides one sample.  Recorded once per UMA ping.
  </summary>
</histogram>

<histogram name="Memory.PepperPluginBrokerProcessCount">
  <owner>hajimehoshi@chromium.org</owner>
  <owner>kenjibaheux@google.com</owner>
  <owner>kouhei@chromium.org</owner>
  <summary>
    The count of Pepper plugin broker processes, recorded once per metrics
    services (UMA) update.  See MetricsReportingScheduler for details.
  </summary>
</histogram>

<histogram name="Memory.PepperPluginProcessCount">
  <owner>hajimehoshi@chromium.org</owner>
  <owner>kenjibaheux@google.com</owner>
  <owner>kouhei@chromium.org</owner>
  <summary>
    The count of active Pepper plugin processes.  Recorded once per UMA ping.
  </summary>
</histogram>

<histogram name="Memory.Plugin" units="KB">
  <obsolete>
    Deprecated due to NPAPI removal.
  </obsolete>
  <owner>hajimehoshi@chromium.org</owner>
  <owner>kenjibaheux@google.com</owner>
  <owner>kouhei@chromium.org</owner>
  <summary>
    The private working set used by each plugin process.  Each plugin process
    provides one sample.  Recorded once per UMA ping.
  </summary>
</histogram>

<histogram name="Memory.PluginProcessCount">
  <obsolete>
    Deprecated due to NPAPI removal.
  </obsolete>
  <owner>hajimehoshi@chromium.org</owner>
  <owner>kenjibaheux@google.com</owner>
  <owner>kouhei@chromium.org</owner>
  <summary>
    The count of active plugin processes.  Recorded once per UMA ping.
  </summary>
</histogram>

<histogram name="Memory.PressureLevel" enum="MemoryPressureLevel">
  <owner>chrisha@chromium.org</owner>
  <summary>
    The memory pressure level, which is recorded periodically. This shows the
    cumulative number of seconds that systems spend in each of the memory
    pressure states.
  </summary>
</histogram>

<histogram name="Memory.PressureLevelChanges" enum="MemoryPressureLevelChanges">
  <owner>chrisha@chromium.org</owner>
  <summary>
    The number of pressure level state changes for each possible pairwise state
    change.
  </summary>
</histogram>

<histogram name="Memory.ProcessCount">
  <owner>hajimehoshi@chromium.org</owner>
  <owner>kenjibaheux@google.com</owner>
  <owner>kouhei@chromium.org</owner>
  <summary>
    The count of all active processes.  Recorded once per UMA ping.
  </summary>
</histogram>

<histogram name="Memory.ProcessLimit">
  <owner>hajimehoshi@chromium.org</owner>
  <owner>kenjibaheux@google.com</owner>
  <owner>kouhei@chromium.org</owner>
  <summary>The current process limit.  Recorded once per UMA ping.</summary>
</histogram>

<histogram name="Memory.Renderer" units="KB">
  <owner>hajimehoshi@chromium.org</owner>
  <owner>kenjibaheux@google.com</owner>
  <owner>kouhei@chromium.org</owner>
  <summary>
    The private working set used by each renderer process.  Each renderer
    process provides one sample.  Recorded once per UMA ping.
  </summary>
</histogram>

<histogram name="Memory.RendererGrowthIn30Min" units="KB">
  <owner>hajimehoshi@chromium.org</owner>
  <owner>kenjibaheux@google.com</owner>
  <owner>kouhei@chromium.org</owner>
  <summary>
    Growth speed of the private working set used by each renderer process per 30
    minutes.  The usage and growth speed is recorded at most every 30 minutes,
    not every exact 30 minutes.  If the interval is longer than 30 minutes, it
    is normalized to a speed KB per 30 minutes.  Each renderer process provides
    one sample.  Recorded once per UMA log unless this is the first time the UMA
    log is recorded after startup of the renderer, 30 minutes have not passed
    from the last recording of the renderer or the usage goes down. If the usage
    goes down, the amount of the shrink will be recorded in the
    Memory.RendererShrinkIn30Min histogram.
  </summary>
</histogram>

<histogram name="Memory.RendererProcessCount">
  <owner>hajimehoshi@chromium.org</owner>
  <owner>kenjibaheux@google.com</owner>
  <owner>kouhei@chromium.org</owner>
  <summary>
    The count of active renderer processes.  Recorded once per UMA ping.
  </summary>
</histogram>

<histogram name="Memory.RendererShrinkIn30Min" units="KB">
  <owner>hajimehoshi@chromium.org</owner>
  <owner>kenjibaheux@google.com</owner>
  <owner>kouhei@chromium.org</owner>
  <summary>
    Shrink speed of the private working set used by each renderer process per 30
    minutes.  The usage and shrink speed is recorded at most every 30 minutes,
    not every exact 30 minutes.  If the interval is longer than 30 minutes, it
    is normalized to a speed KB per 30 minutes.  Each renderer process provides
    one sample.  Recorded once per UMA log unless this is the first time the UMA
    log is recorded after startup of the renderer, 30 minutes have not passed
    from the last recording of the renderer or the usage goes up. If the usage
    goes up, the amount of the growth will be recorded in the
    Memory.RendererGrowthIn30Min histogram.
  </summary>
</histogram>

<histogram name="Memory.SandboxHelper" units="KB">
  <owner>hajimehoshi@chromium.org</owner>
  <owner>kenjibaheux@google.com</owner>
  <owner>kouhei@chromium.org</owner>
  <summary>
    The private working set used by each sandbox helper process.  Each sandbox
    helper process provides one sample.  Recorded once per UMA ping.
  </summary>
</histogram>

<histogram name="Memory.ShmemDir.AmountOfFreeSpace" units="MB">
  <owner>reveman@chromium.org</owner>
  <summary>
    The amount of free space in temporary directory for shared memory files.
    Recorded each time a new discardable memory manager instance is created.
  </summary>
</histogram>

<histogram name="Memory.Stats.Win.AvailPageFile" units="MB">
  <obsolete>
    Deprecated in 595320 and replaced with Memory.Stats.Win.AvailPageFile2.
  </obsolete>
  <owner>georgesak@chromium.org</owner>
  <summary>
    Windows-only metric that represents the maximum amount of memory the current
    process can commit. This value is equal to or smaller than the system-wide
    available commit value.
  </summary>
</histogram>

<histogram name="Memory.Stats.Win.AvailPageFile2" units="MB">
  <owner>georgesak@chromium.org</owner>
  <summary>
    Windows-only metric that represents the maximum amount of memory the current
    process can commit. This value is equal to or smaller than the system-wide
    available commit value.
  </summary>
</histogram>

<histogram name="Memory.Stats.Win.AvailPhys" units="MB">
  <obsolete>
    Deprecated in 595320 and replaced with Memory.Stats.Win.AvailPhys2.
  </obsolete>
  <owner>georgesak@chromium.org</owner>
  <summary>
    Windows-only metric that represents the amount of physical memory currently
    available. This is the amount of physical memory that can be immediately
    reused without having to write its contents to disk first. It is the sum of
    the size of the standby, free, and zero lists.
  </summary>
</histogram>

<histogram name="Memory.Stats.Win.AvailPhys2" units="MB">
  <owner>georgesak@chromium.org</owner>
  <summary>
    Windows-only metric that represents the amount of physical memory currently
    available. This is the amount of physical memory that can be immediately
    reused without having to write its contents to disk first. It is the sum of
    the size of the standby, free, and zero lists.
  </summary>
</histogram>

<histogram name="Memory.Stats.Win.AvailVirtual" units="MB">
  <obsolete>
    Deprecated in 595320 and replaced with Memory.Stats.Win.AvailVirtual2.
  </obsolete>
  <owner>georgesak@chromium.org</owner>
  <summary>
    Windows-only metric that represents the amount of unreserved and uncommitted
    memory currently in the user-mode portion of the virtual address space of
    the calling process.
  </summary>
</histogram>

<histogram name="Memory.Stats.Win.AvailVirtual2" units="MB">
  <owner>georgesak@chromium.org</owner>
  <summary>
    Windows-only metric that represents the amount of unreserved and uncommitted
    memory currently in the user-mode portion of the virtual address space of
    the calling process.
  </summary>
</histogram>

<histogram name="Memory.Stats.Win.MemoryLoad" units="%">
  <owner>georgesak@chromium.org</owner>
  <summary>
    Windows-only metric that represents the approximate percentage of physical
    memory that was in use (0 indicates no memory use and 100 indicates full
    memory use).
  </summary>
</histogram>

<histogram name="Memory.Stats.Win.TotalPageFile" units="MB">
  <obsolete>
    Deprecated in 595320 and replaced with Memory.Stats.Win.TotalPageFile2.
  </obsolete>
  <owner>georgesak@chromium.org</owner>
  <summary>
    Windows-only metric that represents the current committed memory limit for
    the system or the current process, whichever is smaller.
  </summary>
</histogram>

<histogram name="Memory.Stats.Win.TotalPageFile2" units="MB">
  <owner>georgesak@chromium.org</owner>
  <summary>
    Windows-only metric that represents the current committed memory limit for
    the system or the current process, whichever is smaller.
  </summary>
</histogram>

<histogram name="Memory.Stats.Win.TotalPhys" units="MB">
  <obsolete>
    Deprecated in 595320 and replaced with Memory.Stats.Win.TotalPhys2.
  </obsolete>
  <owner>georgesak@chromium.org</owner>
  <summary>
    Windows-only metric that represents the amount of actual physical memory.
  </summary>
</histogram>

<histogram name="Memory.Stats.Win.TotalPhys2" units="MB">
  <owner>georgesak@chromium.org</owner>
  <summary>
    Windows-only metric that represents the amount of actual physical memory.
  </summary>
</histogram>

<histogram name="Memory.Stats.Win.TotalVirtual" units="MB">
  <obsolete>
    Deprecated in 595320 and replaced with Memory.Stats.Win.TotalVirtual2.
  </obsolete>
  <owner>georgesak@chromium.org</owner>
  <summary>
    Windows-only metric that represents the size of the user-mode portion of the
    virtual address space of the calling process. This value depends on the type
    of process, the type of processor, and the configuration of the operating
    system. For example, this value is approximately 2 GB for most 32-bit
    processes on an x86 processor and approximately 3 GB for 32-bit processes
    that are large address aware running on a system with 4-gigabyte tuning
    enabled.
  </summary>
</histogram>

<histogram name="Memory.Stats.Win.TotalVirtual2" units="MB">
  <owner>georgesak@chromium.org</owner>
  <summary>
    Windows-only metric that represents the size of the user-mode portion of the
    virtual address space of the calling process. This value depends on the type
    of process, the type of processor, and the configuration of the operating
    system. For example, this value is approximately 2 GB for most 32-bit
    processes on an x86 processor and approximately 3 GB for 32-bit processes
    that are large address aware running on a system with 4-gigabyte tuning
    enabled.
  </summary>
</histogram>

<histogram name="Memory.Swap.Browser" units="KB">
  <owner>hajimehoshi@chromium.org</owner>
  <owner>kenjibaheux@google.com</owner>
  <owner>kouhei@chromium.org</owner>
  <summary>
    The swap used by the browser process.  Recorded once per UMA ping if the
    system has swapped.
  </summary>
</histogram>

<histogram name="Memory.Swap.Chrome" units="KB">
  <owner>hajimehoshi@chromium.org</owner>
  <owner>kenjibaheux@google.com</owner>
  <owner>kouhei@chromium.org</owner>
  <summary>
    The swap used by each chrome:// renderer process.  Each process provides one
    sample.  Recorded once per UMA ping if the system has swapped.
  </summary>
</histogram>

<histogram name="Memory.Swap.CompressedDataSize" units="MB">
  <owner>hajimehoshi@chromium.org</owner>
  <owner>kenjibaheux@google.com</owner>
  <owner>kouhei@chromium.org</owner>
  <summary>
    The amount of memory that swap was compressed into. Recorded once per UMA
    ping if the system has swapped.
  </summary>
</histogram>

<histogram name="Memory.Swap.CompressionRatio">
  <owner>hajimehoshi@chromium.org</owner>
  <owner>kenjibaheux@google.com</owner>
  <owner>kouhei@chromium.org</owner>
  <summary>
    The ratio of swapped data original size to compressed size. Recorded once
    per UMA ping if the system has swapped.
  </summary>
</histogram>

<histogram name="Memory.Swap.Extension" units="KB">
  <owner>hajimehoshi@chromium.org</owner>
  <owner>kenjibaheux@google.com</owner>
  <owner>kouhei@chromium.org</owner>
  <summary>
    The swap used by each extension process.  Each process provides one sample.
    Recorded once per UMA ping if the system has swapped.
  </summary>
</histogram>

<histogram name="Memory.Swap.Gpu" units="KB">
  <owner>hajimehoshi@chromium.org</owner>
  <owner>kenjibaheux@google.com</owner>
  <owner>kouhei@chromium.org</owner>
  <summary>
    The swap used by the GPU process.  Recorded once per UMA ping if the system
    has swapped.
  </summary>
</histogram>

<histogram name="Memory.Swap.HaveSwapped" enum="BooleanSuccess">
  <owner>hajimehoshi@chromium.org</owner>
  <owner>kenjibaheux@google.com</owner>
  <owner>kouhei@chromium.org</owner>
  <summary>
    Indicates that the system has swapped memory out at least once since boot.
    Recorded once per UMA ping.
  </summary>
</histogram>

<histogram name="Memory.Swap.MemUsedTotal" units="MB">
  <owner>hajimehoshi@chromium.org</owner>
  <owner>kenjibaheux@google.com</owner>
  <owner>kouhei@chromium.org</owner>
  <summary>
    The amount of memory that is used by swap, including bookkeeping.  Recorded
    once per UMA ping if the system has swapped.
  </summary>
</histogram>

<histogram name="Memory.Swap.NativeClient" units="KB">
  <owner>hajimehoshi@chromium.org</owner>
  <owner>kenjibaheux@google.com</owner>
  <owner>kouhei@chromium.org</owner>
  <summary>
    The swap used by each Native Client loader process.  Each process provides
    one sample.  Recorded once per UMA ping if the system has swapped.
  </summary>
</histogram>

<histogram name="Memory.Swap.NativeClientBroker" units="KB">
  <owner>hajimehoshi@chromium.org</owner>
  <owner>kenjibaheux@google.com</owner>
  <owner>kouhei@chromium.org</owner>
  <summary>
    The swap used by each Native Client broker process.  Each process provides
    one sample.  Recorded once per UMA ping if the system has swapped.
  </summary>
</histogram>

<histogram name="Memory.Swap.NumReads">
  <owner>hajimehoshi@chromium.org</owner>
  <owner>kenjibaheux@google.com</owner>
  <owner>kouhei@chromium.org</owner>
  <summary>
    The number of reads from swap.  Recorded once per UMA ping  if the system
    has swapped.
  </summary>
</histogram>

<histogram name="Memory.Swap.NumWrites">
  <owner>hajimehoshi@chromium.org</owner>
  <owner>kenjibaheux@google.com</owner>
  <owner>kouhei@chromium.org</owner>
  <summary>
    The number of writes to swap.  Recorded once per UMA ping if the system has
    swapped.
  </summary>
</histogram>

<histogram name="Memory.Swap.OriginalDataSize" units="MB">
  <owner>hajimehoshi@chromium.org</owner>
  <owner>kenjibaheux@google.com</owner>
  <owner>kouhei@chromium.org</owner>
  <summary>
    The amount of memory that was swapped out.  Recorded once per UMA ping if
    the system has swapped.
  </summary>
</histogram>

<histogram name="Memory.Swap.PepperPlugin" units="KB">
  <owner>hajimehoshi@chromium.org</owner>
  <owner>kenjibaheux@google.com</owner>
  <owner>kouhei@chromium.org</owner>
  <summary>
    The swap used by each Pepper plugin process.  Each plugin process provides
    one sample.  Recorded once per UMA ping if the system has swapped.
  </summary>
</histogram>

<histogram name="Memory.Swap.PepperPluginBroker" units="KB">
  <owner>hajimehoshi@chromium.org</owner>
  <owner>kenjibaheux@google.com</owner>
  <owner>kouhei@chromium.org</owner>
  <summary>
    The swap used by each Pepper plugin broker process.  Each process provides
    one sample.  Recorded once per UMA ping if the system has swapped.
  </summary>
</histogram>

<histogram name="Memory.Swap.Plugin" units="KB">
  <obsolete>
    Deprecated due to NPAPI removal.
  </obsolete>
  <owner>hajimehoshi@chromium.org</owner>
  <owner>kenjibaheux@google.com</owner>
  <owner>kouhei@chromium.org</owner>
  <summary>
    The swap used by each plugin process.  Each plugin process provides one
    sample.  Recorded once per UMA ping if the system has swapped.
  </summary>
</histogram>

<histogram name="Memory.Swap.Renderer" units="KB">
  <owner>hajimehoshi@chromium.org</owner>
  <owner>kenjibaheux@google.com</owner>
  <owner>kouhei@chromium.org</owner>
  <summary>
    The swap used by each renderer process.  Each renderer process provides one
    sample.  Recorded once per UMA ping if the system has swapped.
  </summary>
</histogram>

<histogram name="Memory.Swap.SandboxHelper" units="KB">
  <owner>hajimehoshi@chromium.org</owner>
  <owner>kenjibaheux@google.com</owner>
  <owner>kouhei@chromium.org</owner>
  <summary>
    The swap used by each sandbox helper process.  Each sandbox helper process
    provides one sample.  Recorded once per UMA ping if the system has swapped.
  </summary>
</histogram>

<histogram name="Memory.Swap.Total" units="MB">
  <owner>hajimehoshi@chromium.org</owner>
  <owner>kenjibaheux@google.com</owner>
  <owner>kouhei@chromium.org</owner>
  <summary>
    The sum of all processes' swap. Recorded once per UMA ping if the system has
    swapped. See Memory.Swap.Total2 for the same metric with higher precision
    bucketing.
  </summary>
</histogram>

<histogram name="Memory.Swap.Total2" units="MiB">
  <owner>hajimehoshi@chromium.org</owner>
  <owner>kenjibaheux@google.com</owner>
  <owner>kouhei@chromium.org</owner>
  <owner>rkaplow@chromium.org</owner>
  <summary>
    The sum of all processes' swap. Recorded once per UMA ping if the system has
    swapped.
  </summary>
</histogram>

<histogram name="Memory.Swap.Utility" units="KB">
  <owner>hajimehoshi@chromium.org</owner>
  <owner>kenjibaheux@google.com</owner>
  <owner>kouhei@chromium.org</owner>
  <summary>
    The swap used by each utility process.  Each utility process provides one
    sample.  Recorded once per UMA ping if the system has swapped.
  </summary>
</histogram>

<histogram name="Memory.Swap.Worker" units="KB">
  <owner>hajimehoshi@chromium.org</owner>
  <owner>kenjibaheux@google.com</owner>
  <owner>kouhei@chromium.org</owner>
  <summary>
    The swap used by each worker process.  Each worker process provides one
    sample.  Recorded once per UMA ping if the system has swapped.
  </summary>
</histogram>

<histogram name="Memory.Total" units="MB">
  <owner>hajimehoshi@chromium.org</owner>
  <owner>kenjibaheux@google.com</owner>
  <owner>kouhei@chromium.org</owner>
  <summary>
    The sum of all processes. This is not aware of shared memory so it is just a
    rough estimate. Recorded once per UMA ping. See Memory.Total2 for the same
    metric with higher precision bucketing.
  </summary>
</histogram>

<histogram name="Memory.Total2" units="MiB">
  <owner>hajimehoshi@chromium.org</owner>
  <owner>kenjibaheux@google.com</owner>
  <owner>kouhei@chromium.org</owner>
  <owner>rkaplow@chromium.org</owner>
  <summary>
    The sum of all processes. This is not aware of shared memory so it is just a
    rough estimate. Recorded once per UMA ping.
  </summary>
</histogram>

<histogram name="Memory.Utility" units="KB">
  <owner>hajimehoshi@chromium.org</owner>
  <owner>kenjibaheux@google.com</owner>
  <owner>kouhei@chromium.org</owner>
  <summary>
    The private working set used by each utility process.  Each utility process
    provides one sample.  Recorded once per UMA ping.
  </summary>
</histogram>

<histogram name="Memory.Worker" units="KB">
  <owner>hajimehoshi@chromium.org</owner>
  <owner>kenjibaheux@google.com</owner>
  <owner>kouhei@chromium.org</owner>
  <summary>
    The private working set used by each worker process.  Each worker process
    provides one sample.  Recorded once per UMA ping.
  </summary>
</histogram>

<histogram name="Memory.WorkerProcessCount">
  <owner>hajimehoshi@chromium.org</owner>
  <owner>kenjibaheux@google.com</owner>
  <owner>kouhei@chromium.org</owner>
  <summary>TBD.</summary>
</histogram>

<histogram name="MemoryAndroid.DeviceMemoryClass">
  <owner>hajimehoshi@chromium.org</owner>
  <owner>kenjibaheux@google.com</owner>
  <owner>kouhei@chromium.org</owner>
  <owner>ppi@chromium.org</owner>
  <summary>
    Value of getMemoryClass() recorded once upon startup. This is an integer,
    device-specific constant correlated with the amount of memory available on
    Android device.
  </summary>
</histogram>

<histogram name="MemoryAndroid.EvictionReason" enum="AndroidEvictionReason">
  <owner>hajimehoshi@chromium.org</owner>
  <owner>kenjibaheux@google.com</owner>
  <owner>kouhei@chromium.org</owner>
  <owner>ppi@chromium.org</owner>
  <summary>
    Reasons behind evictions of individual tabs, recorded upon each tab
    eviction.
  </summary>
</histogram>

<histogram name="MemoryAndroid.LowMemoryLoadedTabCount">
  <owner>hajimehoshi@chromium.org</owner>
  <owner>kenjibaheux@google.com</owner>
  <owner>kouhei@chromium.org</owner>
  <owner>ppi@chromium.org</owner>
  <summary>
    Number of loaded (memory-resident) tabs when LowMemory notification is
    delivered.
  </summary>
</histogram>

<histogram name="MemoryAndroid.LowMemoryTimeBetween" units="ms">
  <owner>hajimehoshi@chromium.org</owner>
  <owner>kenjibaheux@google.com</owner>
  <owner>kouhei@chromium.org</owner>
  <owner>ppi@chromium.org</owner>
  <summary>
    Time between two consecutive LowMemory notification in one foreground
    session.
  </summary>
</histogram>

<histogram name="MemoryAndroid.LowRamDevice" enum="Boolean">
  <owner>mariakhomenko@chromium.org</owner>
  <summary>
    Whether Chrome is running in low ram mode. This histogram is reported on
    every upload by Android devices. A device is considered low-RAM if it has
    512MiB of RAM or lower (see SysUtils.detectLowEndDevice()).

    Note: The low-RAM determination has changed in M-49, it used to be given
    directly by the Android OS.
  </summary>
</histogram>

<histogram name="MemoryAndroid.NotificationBackground"
    enum="AndroidMemoryNotificationBackground">
  <owner>hajimehoshi@chromium.org</owner>
  <owner>kenjibaheux@google.com</owner>
  <owner>kouhei@chromium.org</owner>
  <owner>ppi@chromium.org</owner>
  <summary>
    Memory notifications delivered through system callbacks to Chrome while in
    the background.
  </summary>
</histogram>

<histogram name="MemoryAndroid.NotificationForeground"
    enum="AndroidMemoryNotificationForeground">
  <owner>hajimehoshi@chromium.org</owner>
  <owner>kenjibaheux@google.com</owner>
  <owner>kouhei@chromium.org</owner>
  <owner>ppi@chromium.org</owner>
  <summary>
    Memory notifications delivered through system callbacks to Chrome while in
    the foreground - we count LowMemory notification vs particular levels of
    TrimMemory foreground notification.
  </summary>
</histogram>

<histogram name="MemoryPurgeController.ReclaimedPartitionAllocInactiveTab"
    units="KB">
  <owner>bashi@chromium.org</owner>
  <summary>The amount of reclaimed memory after a tab became inactive.</summary>
</histogram>

<histogram name="MemoryWarning.EvictedTabTimeSinceActive" units="ms">
  <owner>lliabraa@chromium.org</owner>
  <summary>
    [iOS] When the OS sends a memory warning and the app evicts a tab, this
    histogram records the time since the evicted tab was active.
  </summary>
</histogram>

<histogram name="MemoryWarning.ProtectedTabTimeSinceActive" units="ms">
  <owner>lliabraa@chromium.org</owner>
  <summary>
    [iOS] When the OS sends a memory warning and the app protects a tab, this
    histogram records the time since the protected tab was active.
  </summary>
</histogram>

<histogram name="Mist.SwitchResult" enum="MistSwitchResult">
  <owner>benchan@chromium.org</owner>
  <summary>
    The result (e.g. success or the type of failure) of a modem interface switch
    operation performed by mist on Chrome OS.
  </summary>
</histogram>

<histogram name="MobileDownload.BytesDownloaded" units="KB">
  <owner>qinmin@chromium.org</owner>
  <summary>
    Android: Records the total data downloaded by completion status.
  </summary>
</histogram>

<histogram name="MobileDownload.DownloadResumption"
    enum="MobileDownloadResumption">
  <owner>qinmin@chromium.org</owner>
  <summary>
    Android: Records user interaction on the download resumption button.
  </summary>
</histogram>

<histogram name="MobileDownload.DownloadTime" units="ms">
  <owner>qinmin@chromium.org</owner>
  <summary>
    Android: Records the total time for a download by completion status.
  </summary>
</histogram>

<histogram name="MobileDownload.InterceptFailureReason"
    enum="MobileDownloadInterceptFailureReason">
  <owner>qinmin@chromium.org</owner>
  <summary>
    Android: Records the reason that Chrome fails to intercept a download and
    pass it to the Android DownloadManager.
  </summary>
</histogram>

<histogram name="MobileDownload.InterruptionsCount">
  <owner>qinmin@chromium.org</owner>
  <summary>
    Android: Records the total interruptions for a download by completion
    status.
  </summary>
</histogram>

<histogram name="MobileFre.SignInChoice" enum="MobileFreSignInChoice">
  <owner>aruslan@chromium.org</owner>
  <summary>
    Android: How the user left the sign-in part of the &quot;first run
    experience&quot; activity (M-38+).
  </summary>
</histogram>

<histogram name="MobileFullscreenVideo.DurationAfterPotraitRotation" units="ms">
  <owner>qinmin@chromium.org</owner>
  <summary>
    Android: Records the duration that a fullscreen video is played after device
    rotates from portrait to landscape mode for the first time, and before it
    exits fullscreen. If there is no device rotation or if the video starts with
    landscape mode, it is not recorded. If there are mutiple rotations between
    portrait and landscape mode, only one record is emitted and it is equal to
    the time period from the first rotation to the moment when the video exits
    fullscreen.
  </summary>
</histogram>

<histogram name="MobileFullscreenVideo.LandscapeDuration" units="ms">
  <owner>qinmin@chromium.org</owner>
  <summary>
    Android: Records the duration that a fullscreen video is played in landscape
    mode. If a video starts playing in landscape mode, and then it is switched
    back and forth between landscape and portrait mode, only the time period
    before the first switch is accounted. If a video starts playing in portrait
    mode, it is not recorded.
  </summary>
</histogram>

<histogram name="MobileFullscreenVideo.LandscapeRotation" enum="BooleanEnabled">
  <owner>qinmin@chromium.org</owner>
  <summary>
    Android: Records whether a fullscreen video is switched from landscape to
    portrait mode at any point during playback.
  </summary>
</histogram>

<histogram name="MobileFullscreenVideo.OrientationPortrait"
    enum="BooleanEnabled">
  <owner>qinmin@chromium.org</owner>
  <summary>
    Android: Records the device orientation when a video enters fullscreen. The
    value is true if device orientation is portrait, or false otherwise. The
    video doesn't necessarily needs to be in a playing state.
  </summary>
</histogram>

<histogram name="MobileFullscreenVideo.PortraitDuration" units="ms">
  <owner>qinmin@chromium.org</owner>
  <summary>
    Android: Records the duration that a fullscreen video is played in portrait
    mode. If a video starts playing in portrait mode, and then it is switched
    back and forth between landscape and portrait mode, only the time period
    before the first switch is accounted. If a video starts playing in landscape
    mode, it is not recorded.
  </summary>
</histogram>

<histogram name="MobileFullscreenVideo.PortraitRotation" enum="BooleanEnabled">
  <owner>qinmin@chromium.org</owner>
  <summary>
    Android: Records whether a fullscreen video is switched from portrait to
    landscape mode at any point during playback.
  </summary>
</histogram>

<histogram name="MobileFullscreenVideo.VideoPortrait" enum="BooleanEnabled">
  <owner>qinmin@chromium.org</owner>
  <summary>
    Android: Records whether a video has a larger height than width when it
    enters the fullscreen mode.
  </summary>
</histogram>

<histogram name="MobileStartup.MainIntentAction" enum="MobileStartingAction">
  <owner>mariakhomenko@chromium.org</owner>
  <summary>
    Android: Records the first action the user does within 10s of starting
    Chrome. Recorded in DocumentActivity and ChromeTabbedActivity only when the
    starting intent is of type MAIN.
  </summary>
</histogram>

<histogram name="MobileStartup.MobileMultiWindowInstances">
  <owner>dtrainor@chromium.org</owner>
  <summary>
    Android: Number of instances of Chrome currently open during a MultiWindow
    session.  Emitted every time Chrome is paused.  Only emitted on Android
    MultiWindow devices.

    A MultiWindow session is any period of time that Chrome was not used in a
    full screen mode but together with another Activity that is visible at the
    same time. This is only supported in a few Android models.
  </summary>
</histogram>

<histogram name="MobileStartup.MobileMultiWindowSession" units="%">
  <owner>miguelg@chromium.org</owner>
  <summary>
    Android: percent of the screen available for Chrome during a multi-window
    session. Emitted every time chrome is paused. Only emitted on Android
    MultiWindow devices.

    A multiwindow session is any period of time that Chrome was not used in full
    screen mode but together with some other application that is visible at the
    same time. This is only supported in a few Android models.
  </summary>
</histogram>

<histogram name="MobileStartup.NonMainIntentAction" enum="MobileStartingAction">
  <owner>mariakhomenko@chromium.org</owner>
  <summary>
    Android: Records the first action the user does within 10s of starting
    Chrome. Recorded in DocumentActivity and ChromeTabbedActivity only when the
    starting intent is not of type MAIN, e.g. VIEW, etc.
  </summary>
</histogram>

<histogram name="MobileStartup.TimeSinceLastUse" units="minutes">
  <owner>knn@chromium.org</owner>
  <summary>
    Android: The time since last use until Chrome is launched from the home
    screen. This is measured from the time the last tab is closed until a Main
    intent is received. Has a minute level precision for first 10 minutes
    increasing exponentially till 30 days.
  </summary>
</histogram>

<histogram name="MobileStartup.ToolbarFirstDrawTime" units="ms">
  <owner>yusufo@chromium.org</owner>
  <summary>
    Android: The time it takes from launch to the completion of first draw for
    Toolbar. This excludes activity creation time spent in framework.
  </summary>
</histogram>

<histogram name="MobileStartup.ToolbarFirstFocusTime" units="ms">
  <owner>mariakhomenko@chromium.org</owner>
  <summary>
    Android: The time it takes from launch to the first time the user focuses
    the omnibox if the user does so within first 30s of the launch. This
    excludes activity creation time spent in framework.
  </summary>
</histogram>

<histogram name="ModuleIntegrityVerification.BytesModified" units="bytes">
  <owner>anthonyvd@chromium.org</owner>
  <summary>
    Represents the amount of bytes in a module that are different on disk and in
    memory. Logged when the ModuleIntegrityVerifier determines that a module is
    different on disk and in memory after being triggered by an incident.
  </summary>
</histogram>

<histogram name="ModuleIntegrityVerification.Difference" units="bytes">
  <obsolete>
    Deprecated and removed from code as of 05/2015.
  </obsolete>
  <owner>anthonyvd@chromium.org</owner>
  <summary>
    Represents the difference in bytes deemed modified by the two
    ModuleIntegrityVerifier code paths. The suffix indicates which path had a
    higher value. Logged when the ModuleIntegrityVerifier determines that a
    module is different on disk and in memory after being triggered by an
    incident and the reported byte count for both methods is different.
  </summary>
</histogram>

<histogram name="ModuleIntegrityVerification.RelocationsUnordered"
    enum="ModuleIndex">
  <owner>grt@chromium.org</owner>
  <summary>
    Logged when the relocations in a module are not ordered causing the module
    verification to abort.
  </summary>
</histogram>

<histogram name="ModuleIntegrityVerification.RelocationsUnorderedModuleIndex">
  <obsolete>
    Deprecated 04/2015; replaced by
    ModuleIntegrityVerification.RelocationsUnordered.
  </obsolete>
  <owner>anthonyvd@chromium.org</owner>
  <summary>
    Logged when the relocations in a module are not ordered causing the module
    verification to abort. The value is the index of the affected module.
  </summary>
</histogram>

<histogram name="Mojo.MachPortRelay.BrokerError"
    enum="MojoMachPortRelayBrokerError">
  <owner>amistry@chromium.org</owner>
  <owner>erikchen@chromium.org</owner>
  <summary>
    Errors that the broker process encounters while trying to send or receive
    Mach ports from a child process.
  </summary>
</histogram>

<histogram name="Mojo.MachPortRelay.ChildError"
    enum="MojoMachPortRelayChildError">
  <owner>amistry@chromium.org</owner>
  <owner>erikchen@chromium.org</owner>
  <summary>
    Errors that a child process encounters while trying to receive Mach ports
    from the broker process.
  </summary>
</histogram>

<histogram name="Mojo.Shell.ChildConnectionTime" units="ms">
  <owner>rockot@chromium.org</owner>
  <summary>
    Measures the time it takes for a new child process to receive an
    initialization request from the Mojo shell. This is precisely the duration
    of the MojoShellConnectionImpl::BindToMessagePipe() call in ChildThreadImpl.
  </summary>
</histogram>

<histogram name="Mojo.System.GetParentPlatformHandleSyncTime" units="ms">
  <owner>rockot@chromium.org</owner>
  <summary>
    Measures the time it takes for a child to receive its parent platform handle
    synchronously from the broker on startup. This only applies to the subset of
    platforms on which the sync broker is used.
  </summary>
</histogram>

<histogram name="Mojo.System.Node.ConnectedPeers">
  <owner>rockot@chromium.org</owner>
  <summary>
    Number of connected peer nodes tracked by a node. This is emitted any time a
    peer is added to or dropped from a node.
  </summary>
</histogram>

<histogram name="Mojo.System.Node.PendingChildren">
  <owner>rockot@chromium.org</owner>
  <summary>
    Number of connected pending child node connections tracked by a node. This
    is emitted any time a parent-child node connection is initiated or dropped.
  </summary>
</histogram>

<histogram name="Mouse.PointerSensitivity.Changed" enum="PointerSensitivity">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Tracks mouse sensitivity setting changes by the user. This replaces the old
    Mouse.Sensitivity.Changed metric.
  </summary>
</histogram>

<histogram name="Mouse.PointerSensitivity.Started" enum="PointerSensitivity">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Tracks mouse sensitivity setting on startup. This replaces the old
    Mouse.Sensitivity.Started metric.
  </summary>
</histogram>

<histogram name="Mouse.Sensitivity.Changed" enum="PointerSensitivity">
  <obsolete>
    Deprecated as of 6/2013, replaced by Mouse.PointerSensitivity.Changed.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>Tracks mouse sensitivity setting.</summary>
</histogram>

<histogram name="Mouse.Sensitivity.Started" enum="PointerSensitivity">
  <obsolete>
    Deprecated as of 6/2013, replaced by Mouse.PointerSensitivity.Started.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>Tracks mouse sensitivity setting on startup.</summary>
</histogram>

<histogram name="MouseEventPrefetch.MouseDownDuration_Click" units="ms">
  <obsolete>
    Deprecated 04/2016 as doesn't have data nor owner.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Measures the time elapsed between when the user mousedown-ed a link and when
    the user clicked a link.
  </summary>
</histogram>

<histogram name="MouseEventPrefetch.MouseDownFollowedByClick"
    enum="MouseEventFollowedByClick">
  <obsolete>
    Deprecated 04/2016 as doesn't have data nor owner.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    For each click handled by an HTML anchor tag link, whether Blink saw a
    mousedown event preceding it.  This is only measured for clicks handled by
    the anchor tag's default click event handler.
  </summary>
</histogram>

<histogram name="MouseEventPrefetch.MouseDowns">
  <obsolete>
    Deprecated 04/2016 as doesn't have data nor owner.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The number of mousedown events detected at HTML anchor-tag links' default
    event handler.
  </summary>
</histogram>

<histogram name="MouseEventPrefetch.MouseOverDuration_Click" units="ms">
  <obsolete>
    Deprecated 04/2016 as doesn't have data nor owner.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Measures the time elapsed between when the user mouseover-ed a link and when
    the user clicked a link.
  </summary>
</histogram>

<histogram name="MouseEventPrefetch.MouseOverDuration_NoClick" units="ms">
  <obsolete>
    Deprecated 04/2016 as doesn't have data nor owner.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Measures the time elapsed between when the user mouseover-ed a link and when
    the user mouseout-ed a link without click.
  </summary>
</histogram>

<histogram name="MouseEventPrefetch.MouseOvers">
  <obsolete>
    Deprecated 04/2016 as doesn't have data nor owner.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The number of mouseover events detected at HTML anchor-tag links' default
    event handler.
  </summary>
</histogram>

<histogram name="MouseEventPrefetch.PreTapEventsFollowedByClick"
    enum="PreTapEvents">
  <obsolete>
    Deprecated 04/2016 as doesn't have data nor owner.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The tap gesture events detected before click at HTML anchor-tag links'
    default event handler.
  </summary>
</histogram>

<histogram name="MouseEventPrefetch.TapDownDuration_Click" units="ms">
  <obsolete>
    Deprecated 04/2016 as doesn't have data nor owner.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Measures the time elapsed between when the user tapdown-ed a link and when
    the user clicked a link.
  </summary>
</histogram>

<histogram name="MouseEventPrefetch.TapDowns">
  <obsolete>
    Deprecated 04/2016 as doesn't have data nor owner.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The number of gesturetapdown events detected at HTML anchor-tag links'
    default event handler.
  </summary>
</histogram>

<histogram name="MouseEventPrefetch.TapUnconfirmeds">
  <obsolete>
    Deprecated 04/2016 as doesn't have data nor owner.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The number of gesturetapunconfirmed events detected at HTML anchor-tag
    links' default event handler.
  </summary>
</histogram>

<histogram name="MPArch.ChildProcessLaunchFirst">
  <owner>ppi@chromium.org</owner>
  <summary>
    The time it takes to spawn the first child subprocess (including sandbox
    init).
  </summary>
</histogram>

<histogram name="MPArch.ChildProcessLaunchSubsequent">
  <owner>ppi@chromium.org</owner>
  <summary>
    The time it takes to spawn child sub processes not counting the first one.
  </summary>
</histogram>

<histogram name="MPArch.IIR_InputEventDelta" units="ms">
  <owner>rvargas@chromium.org</owner>
  <summary>
    The time spent waiting for the renderer to acknowledge an input event.
  </summary>
</histogram>

<histogram name="MPArch.RendererLaunchFirst">
  <obsolete>
    Deprecated 2/2013, renamed.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The time it takes to spawn the first renderer subprocess (including sandbox
    init).
  </summary>
</histogram>

<histogram name="MPArch.RendererLaunchSubsequent">
  <obsolete>
    Deprecated 2/2013, renamed.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The time it takes to spawn renderer sub processes not counting the first
    one.
  </summary>
</histogram>

<histogram name="MPArch.RPHCountPerLoad">
  <owner>ppi@chromium.org</owner>
  <summary>
    The number of RenderProcessHosts (i.e. renderer processes) present when each
    load completes. This is basically the average number of sub-processes over
    time. See also Tabs.TabCountPerLoad.
  </summary>
</histogram>

<histogram name="MPArch.RWH_InputEventDelta" units="ms">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <obsolete>
    renamed MPArch.IIR_InputEventDelta.
  </obsolete>
  <summary>
    The time spent waiting for the renderer to acknowledge an input event.
  </summary>
</histogram>

<histogram name="MPArch.RWH_OnMsgPaintRect" units="ms">
  <obsolete>
    Deprecated 04/2016 as doesn't have data nor owner.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>The time spent inside RenderWidgetHost::OnMsgPaintRect.</summary>
</histogram>

<histogram name="MPArch.RWH_OnMsgScrollRect" units="ms">
  <obsolete>
    Deprecated 04/2016 as doesn't have data nor owner.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>The time spent inside RenderWidgetHost::OnMsgScrollRect.</summary>
</histogram>

<histogram name="MPArch.RWH_OnMsgUpdateRect">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>TBD</summary>
</histogram>

<histogram name="MPArch.RWH_RepaintDelta">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>TBD</summary>
</histogram>

<histogram name="MPArch.RWH_TabSwitchPaintDuration" units="ms">
  <owner>jbauman@chromium.org</owner>
  <summary>
    Time from tab switch requested to tab appearing on screen (Aura and Mac
    only).
  </summary>
</histogram>

<histogram name="MPArch.RWHH_WhiteoutDuration" units="ms">
  <obsolete>
    Deprecated 04/2016 as doesn't have data nor owner.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The time that the user sees a blank white page after switching to a
    different tab, while the RenderWidgetHost receives data to paint from the
    renderer process.
  </summary>
</histogram>

<histogram name="MultiProfile.DiscardedTabsPerUser">
  <owner>skuhne@chromium.org</owner>
  <summary>
    The relation of discarded tabs vs. the amount of simultaneous users. The
    counts are the number of discards and the buckets are the number of users.
    Since the count values are absolute numbers, they need to be normalized
    before use - so divide the counts by the percentage of users per session
    found under 'MultiProfile.UsersPerSessionIncremental'.
  </summary>
</histogram>

<histogram name="MultiProfile.SessionMode" enum="MultiProfileSessionMode">
  <owner>skuhne@chromium.org</owner>
  <summary>
    The session counter for different multi profile modes which gets stored once
    per session at the beginning of the session.
  </summary>
</histogram>

<histogram name="MultiProfile.SigninUserUIPath"
    enum="MultiProfileSigninUserAction">
  <owner>skuhne@chromium.org</owner>
  <summary>
    Count the number of times each UI path is taken for signing into a new
    account in a Chrome OS multiprofile session. UI paths include the system
    tray and the user account switcher on the browser frame.
  </summary>
</histogram>

<histogram name="MultiProfile.SwitchActiveUserUIPath"
    enum="MultiProfileSwitchActiveUserAction">
  <owner>skuhne@chromium.org</owner>
  <summary>
    Count the number of times each UI path is taken for switching the active
    account in a Chrome OS multiprofile session. UI paths include the system
    tray and the keyboard shortcut.
  </summary>
</histogram>

<histogram name="MultiProfile.TeleportWindow"
    enum="MultiProfileTeleportWindowAction">
  <owner>skuhne@chromium.org</owner>
  <summary>
    Counts the number of window teleportations when using separated desktop
    mode.
  </summary>
</histogram>

<histogram name="MultiProfile.TeleportWindowType"
    enum="MultiProfileTeleportWindowType">
  <owner>skuhne@chromium.org</owner>
  <summary>
    Counts the number of teleported windows by types in separated desktop mode.
  </summary>
</histogram>

<histogram name="MultiProfile.UsersPerSession">
  <obsolete>
    Deprecated 3/2014, renamed to MultiProfile.UsersPerSessionIncremental.
  </obsolete>
  <owner>skuhne@chromium.org</owner>
  <summary>
    The number of users simultaneously signed into a multiprofile session on
    Chrome OS. This is recorded upon session end.
  </summary>
</histogram>

<histogram name="MultiProfile.UsersPerSessionIncremental">
  <owner>skuhne@chromium.org</owner>
  <summary>
    The number of users simultaneously signed into a multiprofile session on
    Chrome OS. This is recorded whenever a user gets added to the session. To
    get the correct count, all following counts must be subtracted. Example: If
    100 single user, 20 two user and 5 three user sessions, there were
    100-20-5=75 single user sessions, 100-80=20 dual user sessions and so on.
  </summary>
</histogram>

<histogram name="NaCl.Client.Helper.InitState" enum="NaClHelperStatus">
  <owner>sehr@chromium.org</owner>
  <owner>bradnelson@chromium.org</owner>
  <summary>
    When the browser started, what happened with the NaCl helper process?
  </summary>
</histogram>

<histogram name="NaCl.Client.Helper.StateOnFork" enum="NaClHelperStatus">
  <owner>sehr@chromium.org</owner>
  <owner>bradnelson@chromium.org</owner>
  <summary>
    When a NaCl application process was created, what had happened with the NaCl
    helper process when the browser was started?
  </summary>
</histogram>

<histogram name="NaCl.Client.OSArch" enum="NaClOSArchEnum">
  <owner>sehr@chromium.org</owner>
  <owner>bradnelson@chromium.org</owner>
  <summary>The OS/Architecture of a nexe that was loaded.</summary>
</histogram>

<histogram name="NaCl.HttpStatusCodeClass.Manifest.InstalledApp"
    enum="NaClHttpStatusCodeClass">
  <owner>sehr@chromium.org</owner>
  <owner>bradnelson@chromium.org</owner>
  <summary>
    The status code returned when trying to load a manifest inside an installed
    app.
  </summary>
</histogram>

<histogram name="NaCl.HttpStatusCodeClass.Manifest.NotInstalledApp"
    enum="NaClHttpStatusCodeClass">
  <owner>sehr@chromium.org</owner>
  <owner>bradnelson@chromium.org</owner>
  <summary>
    The status code returned when trying to load a manifest from a source other
    than an installed app.
  </summary>
</histogram>

<histogram name="NaCl.HttpStatusCodeClass.Nexe.InstalledApp"
    enum="NaClHttpStatusCodeClass">
  <owner>sehr@chromium.org</owner>
  <owner>bradnelson@chromium.org</owner>
  <summary>
    The status code returned when trying to load a NaCl executable inside an
    installed app.
  </summary>
</histogram>

<histogram name="NaCl.HttpStatusCodeClass.Nexe.NotInstalledApp"
    enum="NaClHttpStatusCodeClass">
  <owner>sehr@chromium.org</owner>
  <owner>bradnelson@chromium.org</owner>
  <summary>
    The status code returned when trying to load a NaCl executable from a source
    other than an installed app.
  </summary>
</histogram>

<histogram name="NaCl.LoadStatus.Plugin" enum="NaClPluginErrorCode">
  <owner>sehr@chromium.org</owner>
  <owner>bradnelson@chromium.org</owner>
  <summary>The error code returned by NaCl's Chrome plugin.</summary>
</histogram>

<histogram name="NaCl.LoadStatus.Plugin.InstalledApp"
    enum="NaClPluginErrorCode">
  <owner>sehr@chromium.org</owner>
  <owner>bradnelson@chromium.org</owner>
  <summary>
    The error code returned by NaCl's Chrome plugin, but only for installed
    apps.
  </summary>
</histogram>

<histogram name="NaCl.LoadStatus.Plugin.NotInstalledApp"
    enum="NaClPluginErrorCode">
  <owner>sehr@chromium.org</owner>
  <owner>bradnelson@chromium.org</owner>
  <summary>
    The error code returned by NaCl's Chrome plugin, but excluding installed
    apps.
  </summary>
</histogram>

<histogram name="NaCl.LoadStatus.SelLdr" enum="NaClSelLdrErrorCode">
  <owner>sehr@chromium.org</owner>
  <owner>bradnelson@chromium.org</owner>
  <summary>The error code returned by NaCl's sel_ldr.</summary>
</histogram>

<histogram name="NaCl.LoadStatus.SelLdr.InstalledApp"
    enum="NaClSelLdrErrorCode">
  <owner>sehr@chromium.org</owner>
  <owner>bradnelson@chromium.org</owner>
  <summary>
    The error code returned by NaCl's sel_ldr, but only for installed apps.
  </summary>
</histogram>

<histogram name="NaCl.LoadStatus.SelLdr.NotInstalledApp"
    enum="NaClSelLdrErrorCode">
  <owner>sehr@chromium.org</owner>
  <owner>bradnelson@chromium.org</owner>
  <summary>
    The error code returned by NaCl's sel_ldr, but excluding installed apps.
  </summary>
</histogram>

<histogram name="NaCl.Manifest.IsDataURI" enum="NaClManifestType">
  <owner>sehr@chromium.org</owner>
  <owner>bradnelson@chromium.org</owner>
  <summary>
    Was the manifest specified as a data URI rather than a .nmf file?
  </summary>
</histogram>

<histogram name="NaCl.ManifestDownloadTime" units="ms">
  <obsolete>
    Deprecated 6/2011, renamed.
  </obsolete>
  <owner>sehr@chromium.org</owner>
  <owner>bradnelson@chromium.org</owner>
  <summary>
    The time it took to download the manifset file for a Native Client module.
  </summary>
</histogram>

<histogram name="NaCl.ModuleUptime.Crash" units="ms">
  <owner>sehr@chromium.org</owner>
  <owner>bradnelson@chromium.org</owner>
  <summary>The time a NaCl module ran before it crashed.</summary>
</histogram>

<histogram name="NaCl.ModuleUptime.Normal" units="ms">
  <owner>sehr@chromium.org</owner>
  <owner>bradnelson@chromium.org</owner>
  <summary>The time a NaCl module ran without crashing, at shutdown.</summary>
</histogram>

<histogram name="NaCl.NexeDownloadTime" units="ms">
  <obsolete>
    Deprecated 6/2011, renamed.
  </obsolete>
  <owner>sehr@chromium.org</owner>
  <owner>bradnelson@chromium.org</owner>
  <summary>
    The time it took to download the main .nexe for a Native Client module.
  </summary>
</histogram>

<histogram name="NaCl.NexeSize" units="KB">
  <obsolete>
    Deprecated 6/2011, renamed.
  </obsolete>
  <owner>sehr@chromium.org</owner>
  <owner>bradnelson@chromium.org</owner>
  <summary>
    The size of the main .nexe file downloaded for a Native Client module.
  </summary>
</histogram>

<histogram name="NaCl.NexeStartupTime" units="ms">
  <obsolete>
    Deprecated 6/2011, renamed.
  </obsolete>
  <owner>sehr@chromium.org</owner>
  <owner>bradnelson@chromium.org</owner>
  <summary>
    The time it took between the Native Client plugin initialization and when
    proxied execution of the NaCl module begins. This is the general startup
    overhead of running as a NaCl module vs a trusted PPAPI plugin.
  </summary>
</histogram>

<histogram name="NaCl.NexeStartupTimePerMB" units="milliseconds/MB">
  <obsolete>
    Deprecated 6/2011, renamed.
  </obsolete>
  <owner>sehr@chromium.org</owner>
  <owner>bradnelson@chromium.org</owner>
  <summary>
    The time it took between the Native Client plugin initialization and when
    proxied execution of the NaCl module begins. This is the general startup
    overhead of running as a NaCl module vs a trusted PPAPI plugin.
  </summary>
</histogram>

<histogram name="NaCl.Options.PNaCl.OptLevel" enum="PNaClOptionsOptLevelEnum">
  <owner>sehr@chromium.org</owner>
  <owner>bradnelson@chromium.org</owner>
  <summary>
    The optimization level set for the initial Portable Native Client
    translation from bitcode to native code.
  </summary>
</histogram>

<histogram name="NaCl.OSArch" enum="NaClOSArchEnum">
  <obsolete>
    Deprecated 6/2011, renamed.
  </obsolete>
  <owner>sehr@chromium.org</owner>
  <owner>bradnelson@chromium.org</owner>
  <summary>The OS/Architecture of a nexe that was loaded.</summary>
</histogram>

<histogram name="NaCl.Perf.PNaClCache.IsHit" enum="PNaClTranslationCacheEnum">
  <owner>sehr@chromium.org</owner>
  <owner>bradnelson@chromium.org</owner>
  <summary>
    Did the Portable Native Client translation cache find an executable
    translated from bitcode?
  </summary>
</histogram>

<histogram name="NaCl.Perf.PNaClLoadTime.CompileKBPerSec" units="KB/s">
  <owner>sehr@chromium.org</owner>
  <owner>bradnelson@chromium.org</owner>
  <summary>
    The rate for compiling a Portable Native Client bitcode file to an object
    file in Kilobytes per second.
  </summary>
</histogram>

<histogram name="NaCl.Perf.PNaClLoadTime.CompileTime" units="ms">
  <owner>sehr@chromium.org</owner>
  <owner>bradnelson@chromium.org</owner>
  <summary>
    The time it took to compile a Portable Native Client bitcode file to an
    object file.
  </summary>
</histogram>

<histogram name="NaCl.Perf.PNaClLoadTime.LinkTime" units="ms">
  <owner>sehr@chromium.org</owner>
  <owner>bradnelson@chromium.org</owner>
  <summary>
    The time it took to link a Portable Native Client generated object file into
    a Native Client executable.
  </summary>
</histogram>

<histogram name="NaCl.Perf.PNaClLoadTime.LoadCompiler" units="ms">
  <owner>sehr@chromium.org</owner>
  <owner>bradnelson@chromium.org</owner>
  <summary>
    The time it took to load and validate the Portable Native Client compiler.
  </summary>
</histogram>

<histogram name="NaCl.Perf.PNaClLoadTime.LoadLinker" units="ms">
  <owner>sehr@chromium.org</owner>
  <owner>bradnelson@chromium.org</owner>
  <summary>
    The time it took to load and validate the Portable Native Client linker.
  </summary>
</histogram>

<histogram name="NaCl.Perf.PNaClLoadTime.PctCompiledWhenFullyDownloaded"
    units="%">
  <owner>sehr@chromium.org</owner>
  <owner>bradnelson@chromium.org</owner>
  <summary>
    The percentage of a Portable Native Client application that is compiled by
    the time the application is fully downloaded (compile and download happen in
    parallel).
  </summary>
</histogram>

<histogram name="NaCl.Perf.PNaClLoadTime.TotalUncachedKBPerSec" units="KB/s">
  <owner>sehr@chromium.org</owner>
  <owner>bradnelson@chromium.org</owner>
  <summary>
    The rate for completely translating a Portable Native Client bitcode file
    into a Native Client executable and caching the result in Kilobytes per
    second.
  </summary>
</histogram>

<histogram name="NaCl.Perf.PNaClLoadTime.TotalUncachedTime" units="ms">
  <owner>sehr@chromium.org</owner>
  <owner>bradnelson@chromium.org</owner>
  <summary>
    The total time it took to completely translate a Portable Native Client
    bitcode file into a Native Client executable, and cache the result.
  </summary>
</histogram>

<histogram name="NaCl.Perf.ShutdownTime.Total" units="ms">
  <owner>sehr@chromium.org</owner>
  <owner>bradnelson@chromium.org</owner>
  <summary>The time it took the NaCl module to shut down.</summary>
</histogram>

<histogram name="NaCl.Perf.Size.Manifest" units="KB">
  <owner>sehr@chromium.org</owner>
  <owner>bradnelson@chromium.org</owner>
  <summary>The size of the manifest file.</summary>
</histogram>

<histogram name="NaCl.Perf.Size.Nexe" units="KB">
  <owner>sehr@chromium.org</owner>
  <owner>bradnelson@chromium.org</owner>
  <summary>
    The size of the main .nexe file downloaded for a Native Client module.
  </summary>
</histogram>

<histogram name="NaCl.Perf.Size.Pexe" units="KB">
  <owner>sehr@chromium.org</owner>
  <owner>bradnelson@chromium.org</owner>
  <summary>
    The size of the main .pexe bitcode file downloaded for a Portable Native
    Client module.
  </summary>
</histogram>

<histogram name="NaCl.Perf.Size.PexeNexeSizePct" units="%">
  <owner>sehr@chromium.org</owner>
  <owner>bradnelson@chromium.org</owner>
  <summary>
    The size of the main .pexe bitcode file divided by the size of the .nexe
    that is the result of translating the bitcode file, times 100.
  </summary>
</histogram>

<histogram name="NaCl.Perf.Size.PNaClTranslatedNexe" units="KB">
  <owner>sehr@chromium.org</owner>
  <owner>bradnelson@chromium.org</owner>
  <summary>
    The size of the main .nexe file that is the result of translating a Portable
    Native Client .pexe bitcode file.  This reflects the amount of cache
    consumed.
  </summary>
</histogram>

<histogram name="NaCl.Perf.StartupTime.LoadModule" units="ms">
  <owner>sehr@chromium.org</owner>
  <owner>bradnelson@chromium.org</owner>
  <summary>The time it took to load the NaCl module into sel_ldr.</summary>
</histogram>

<histogram name="NaCl.Perf.StartupTime.LoadModulePerMB" units="milliseconds/MB">
  <owner>sehr@chromium.org</owner>
  <owner>bradnelson@chromium.org</owner>
  <summary>
    The time it took to load the NaCl module into sel_ldr.  Normalized by the
    size of the .nexe, in megabytes.
  </summary>
</histogram>

<histogram name="NaCl.Perf.StartupTime.ManifestDownload" units="ms">
  <owner>sehr@chromium.org</owner>
  <owner>bradnelson@chromium.org</owner>
  <summary>
    The time it took to download the manifset file for a Native Client module.
  </summary>
</histogram>

<histogram name="NaCl.Perf.StartupTime.NaClOverhead" units="ms">
  <owner>sehr@chromium.org</owner>
  <owner>bradnelson@chromium.org</owner>
  <summary>
    The time it took between the Native Client plugin initialization and when
    proxied execution of the NaCl module begins. This is the general startup
    overhead of running as a NaCl module vs a trusted PPAPI plugin.
  </summary>
</histogram>

<histogram name="NaCl.Perf.StartupTime.NaClOverheadPerMB"
    units="milliseconds/MB">
  <owner>sehr@chromium.org</owner>
  <owner>bradnelson@chromium.org</owner>
  <summary>
    The time it took between the Native Client plugin initialization and when
    proxied execution of the NaCl module begins. This is the general startup
    overhead of running as a NaCl module vs a trusted PPAPI plugin.  Normalized
    by the size of the .nexe, in megabytes.
  </summary>
</histogram>

<histogram name="NaCl.Perf.StartupTime.NexeDownload" units="ms">
  <owner>sehr@chromium.org</owner>
  <owner>bradnelson@chromium.org</owner>
  <summary>
    The time it took to download the main .nexe for a Native Client module.
  </summary>
</histogram>

<histogram name="NaCl.Perf.StartupTime.NexeDownloadPerMB"
    units="milliseconds/MB">
  <owner>sehr@chromium.org</owner>
  <owner>bradnelson@chromium.org</owner>
  <summary>
    The time it took to download the main .nexe for a Native Client module.
    Normalized by the size of the .nexe, in megabytes.
  </summary>
</histogram>

<histogram name="NaCl.Perf.StartupTime.Total" units="ms">
  <owner>sehr@chromium.org</owner>
  <owner>bradnelson@chromium.org</owner>
  <summary>
    The time it took between the Native Client plugin initialization and when
    the NaCl module is ready to be used.
  </summary>
</histogram>

<histogram name="NaCl.Perf.StartupTime.TotalPerMB" units="milliseconds/MB">
  <owner>sehr@chromium.org</owner>
  <owner>bradnelson@chromium.org</owner>
  <summary>
    The time it took between the Native Client plugin initialization and when
    the NaCl module is ready to be used.  Normalized by the size of the .nexe,
    in megabytes.
  </summary>
</histogram>

<histogram name="NaCl.Startups" enum="NaClStartupEnum">
  <obsolete>
    Deprecated 5/2011, data is duplicated by NaCl.NexeStartupTime, and
    normalizing to 'tab opens' is unusual.
  </obsolete>
  <owner>sehr@chromium.org</owner>
  <owner>bradnelson@chromium.org</owner>
  <summary>
    The number of times that Native Client has been started by loading a .nexe
    compared to the number of times that a tab has been opened.
  </summary>
</histogram>

<histogram name="NaCl.ValidationCache.Query" enum="NaClValidationCacheEnum">
  <owner>sehr@chromium.org</owner>
  <owner>bradnelson@chromium.org</owner>
  <summary>
    Did a validation cache query find a previously known validation result?
  </summary>
</histogram>

<histogram name="NaCl.ValidationCache.Set" enum="NaClValidationCacheEnum">
  <owner>sehr@chromium.org</owner>
  <owner>bradnelson@chromium.org</owner>
  <summary>
    Was the validation cache updated with a new validation result?
  </summary>
</histogram>

<histogram name="Navigation.FrameHasEmbeddedCredentials" enum="Boolean">
  <owner>palmer@chromium.org</owner>
  <owner>cbentzel@chromium.org</owner>
  <summary>
    Whether the navigation was to a URL that had embedded credentials.
  </summary>
</histogram>

<histogram name="Navigation.IsMobileOptimized" enum="BooleanIsMobileOptimized">
  <owner>cjhopman@chromium.org</owner>
  <owner>nyquist@chromium.org</owner>
  <summary>
    Signifies whether a succesfully finished page load for the main frame
    content width fits within the device width and/or has a fixed page scale.
  </summary>
</histogram>

<histogram name="Navigation.MainFrameHasEmbeddedCredentials" enum="Boolean">
  <owner>palmer@chromium.org</owner>
  <owner>cbentzel@chromium.org</owner>
  <summary>
    Whether the main-frame navigation was to a URL that had embedded
    credentials.
  </summary>
</histogram>

<histogram name="Navigation.MainFrameScheme" enum="NavigationScheme">
  <owner>cbentzel@chromium.org</owner>
  <owner>davidben@chromium.org</owner>
  <summary>The scheme of the URL for each main-frame navigation.</summary>
</histogram>

<histogram name="Navigation.MainFrameSchemeDifferentPage"
    enum="NavigationScheme">
  <owner>cbentzel@chromium.org</owner>
  <owner>davidben@chromium.org</owner>
  <summary>
    The scheme of the URL for each main-frame navigation that goes to a
    different page. Transitions like fragment change or history.pushState are
    excluded.
  </summary>
</histogram>

<histogram name="Navigation.OnBeforeUnloadOverheadTime" units="ms">
  <owner>carlosk@chromium.org</owner>
  <summary>
    Overhead time spent handling the OnBeforeUnload event from the browser
    standpoint. More precisely, it is the total time between dispatch and
    acknowledgment of the BeforeUnload event on the browser side, minus the
    actual time spent executing the BeforeUnload handlers on the renderer side.
  </summary>
</histogram>

<histogram name="Navigation.RedirectChainSize" units="characters">
  <owner>haitaol@chromium.org</owner>
  <owner>donnd@chromium.org</owner>
  <summary>
    Total length of the redirect URL strings in navigation entry. Logged when
    entry is committed.
  </summary>
</histogram>

<histogram name="Navigation.SchemePerUniqueOrigin" enum="NavigationScheme">
  <owner>palmer@chromium.org</owner>
  <owner>felt@chromium.org</owner>
  <summary>
    The scheme of the URL for the first main-frame navigation per origin per
    non-OffTheRecord session.
  </summary>
</histogram>

<histogram name="Navigation.SchemePerUniqueOriginOTR" enum="NavigationScheme">
  <owner>palmer@chromium.org</owner>
  <owner>felt@chromium.org</owner>
  <summary>
    The scheme of the URL for the first main-frame navigation per origin per
    OffTheRecord session.
  </summary>
</histogram>

<histogram name="Navigation.Start.RendererBrowserDifference.Negative"
    units="ms">
  <owner>csharrison@chromium.org</owner>
  <summary>
    The difference between Now() in the renderer and browser_navigation_start
    for browser-initiated navigations if the difference is negative. This value
    should ideally only reflect the IPC time between the browser process and
    renderer process, but in practice could be skewed by inter-process timing
    errors. If the clocks used for TimeTicks are monotonic across processes, all
    samples should fall into the Positive bucket.
  </summary>
</histogram>

<histogram name="Navigation.Start.RendererBrowserDifference.Positive"
    units="ms">
  <owner>csharrison@chromium.org</owner>
  <summary>
    The difference between Now() in the renderer and browser_navigation_start
    for browser-initiated navigations if the difference is positive. This value
    should ideally only reflect the IPC time between the browser process and
    renderer process, but in practice could be skewed by inter-process timing
    errors. If the clocks used for TimeTicks are monotonic across processes, all
    samples should fall into the Positive bucket.
  </summary>
</histogram>

<histogram name="Navigation.TimeToCommit" units="ms">
  <owner>carlosk@chromium.org</owner>
  <summary>
    Time between the start of a browser-started navigation request in and its
    commit.
  </summary>
</histogram>

<histogram name="Navigation.TimeToURLJobStart" units="ms">
  <owner>carlosk@chromium.org</owner>
  <summary>
    Time between the start of a browser-started navigation request and the
    reception of a corresponding ResourceRequest in the network stack.
  </summary>
</histogram>

<histogram name="Navigation.UI_OnCommitProvisionalLoad.Intent" units="ms">
  <owner>clamy@chromium.org</owner>
  <summary>
    Time between receiving an Android Intent and the navigation commit.
  </summary>
</histogram>

<histogram name="Navigation.UI_OnCommitProvisionalLoad.Link" units="ms">
  <owner>clamy@chromium.org</owner>
  <summary>Time between clicking on a link and the navigation commit.</summary>
</histogram>

<histogram name="Navigation.UI_OnLoadComplete.Intent" units="ms">
  <owner>clamy@chromium.org</owner>
  <summary>
    Time between receiving an Android intent and the document load complete
    event for a navigation in the main frame.
  </summary>
</histogram>

<histogram name="Navigation.UI_OnLoadComplete.Link" units="ms">
  <owner>clamy@chromium.org</owner>
  <summary>
    Time between clicking on a link and the document load complete event for a
    navigation in the main frame.
  </summary>
</histogram>

<histogram name="NCN.CellularConnectionSubtype" enum="ConnectionSubtype">
  <owner>bmcquade@chromium.org</owner>
  <summary>
    The connection subtype of the network the client is connected to, when the
    client is on a cellular connection. This histogram is logged once per UMA
    record, if the user is on a cellular connection, at the time the record is
    finalized.
  </summary>
</histogram>

<histogram name="NCN.CM.FastestRTTOn2G" units="ms">
  <owner>pauljensen@chromium.org</owner>
  <summary>
    Rough estimate of the fastest round-trip-time seen on a 2G connection,
    before the NetworkChangeNotifier detected a connectivity change.

    This metric is recorded when the NetworkChangeNotifier detects a
    connectivity change.  This will miss data from users whose connection type
    never changes and will be biased to users whose connection type changes
    frequently.
  </summary>
</histogram>

<histogram name="NCN.CM.FastestRTTOn3G" units="ms">
  <owner>pauljensen@chromium.org</owner>
  <summary>
    Rough estimate of the fastest round-trip-time seen on a 3G connection,
    before the NetworkChangeNotifier detected a connectivity change.

    This metric is recorded when the NetworkChangeNotifier detects a
    connectivity change.  This will miss data from users whose connection type
    never changes and will be biased to users whose connection type changes
    frequently.
  </summary>
</histogram>

<histogram name="NCN.CM.FastestRTTOn4G" units="ms">
  <owner>pauljensen@chromium.org</owner>
  <summary>
    Rough estimate of the fastest round-trip-time seen on a 4G connection,
    before the NetworkChangeNotifier detected a connectivity change.

    This metric is recorded when the NetworkChangeNotifier detects a
    connectivity change. This will miss data from users whose connection type
    never changes and will be biased to users whose connection type changes
    frequently.
  </summary>
</histogram>

<histogram name="NCN.CM.FastestRTTOnBluetooth" units="ms">
  <owner>pauljensen@chromium.org</owner>
  <summary>
    Rough estimate of the fastest round-trip-time seen on a Bluetooth
    connection, before the NetworkChangeNotifier detected a connectivity change.

    This metric is recorded when the NetworkChangeNotifier detects a
    connectivity change.  This will miss data from users whose connection type
    never changes and will be biased to users whose connection type changes
    frequently.
  </summary>
</histogram>

<histogram name="NCN.CM.FastestRTTOnEthernet" units="ms">
  <owner>pauljensen@chromium.org</owner>
  <summary>
    Rough estimate of the fastest round-trip-time seen on an Ethernet
    connection, before the NetworkChangeNotifier detected a connectivity change.

    This metric is recorded when the NetworkChangeNotifier detects a
    connectivity change.  This will miss data from users whose connection type
    never changes and will be biased to users whose connection type changes
    frequently.
  </summary>
</histogram>

<histogram name="NCN.CM.FastestRTTOnNone" units="ms">
  <owner>pauljensen@chromium.org</owner>
  <summary>
    Rough estimate of the fastest round-trip-time seen while the
    NetworkChangeNotifier thought there was no network connection, before the
    NetworkChangeNotifier detected a connectivity change.

    This metric is recorded when the NetworkChangeNotifier detects a
    connectivity change.  This will miss data from users whose connection type
    never changes and will be biased to users whose connection type changes
    frequently.
  </summary>
</histogram>

<histogram name="NCN.CM.FastestRTTOnUnknown" units="ms">
  <owner>pauljensen@chromium.org</owner>
  <summary>
    Rough estimate of the fastest round-trip-time seen on an unknown connection
    type, before the NetworkChangeNotifier detected a connectivity change.

    This metric is recorded when the NetworkChangeNotifier detects a
    connectivity change.  This will miss data from users whose connection type
    never changes and will be biased to users whose connection type changes
    frequently.
  </summary>
</histogram>

<histogram name="NCN.CM.FastestRTTOnWifi" units="ms">
  <owner>pauljensen@chromium.org</owner>
  <summary>
    Rough estimate of the fastest round-trip-time seen on a Wifi connection,
    before the NetworkChangeNotifier detected a connectivity change.

    This metric is recorded when the NetworkChangeNotifier detects a
    connectivity change.  This will miss data from users whose connection type
    never changes and will be biased to users whose connection type changes
    frequently.
  </summary>
</histogram>

<histogram name="NCN.CM.FirstReadOn2G" units="ms">
  <owner>pauljensen@chromium.org</owner>
  <summary>
    Time between switching to a 2G connection and receiving the first network
    data.

    This metric is recorded when the NetworkChangeNotifier detects a
    connectivity change.  This will miss data from users whose connection type
    never changes and will be biased to users whose connection type changes
    frequently.
  </summary>
</histogram>

<histogram name="NCN.CM.FirstReadOn3G" units="ms">
  <owner>pauljensen@chromium.org</owner>
  <summary>
    Time between switching to a 3G connection and receiving the first network
    data.

    This metric is recorded when the NetworkChangeNotifier detects a
    connectivity change.  This will miss data from users whose connection type
    never changes and will be biased to users whose connection type changes
    frequently.
  </summary>
</histogram>

<histogram name="NCN.CM.FirstReadOn4G" units="ms">
  <owner>pauljensen@chromium.org</owner>
  <summary>
    Time between switching to a 4G connection and receiving the first network
    data.

    This metric is recorded when the NetworkChangeNotifier detects a
    connectivity change.  This will miss data from users whose connection type
    never changes and will be biased to users whose connection type changes
    frequently.
  </summary>
</histogram>

<histogram name="NCN.CM.FirstReadOnBluetooth" units="ms">
  <owner>pauljensen@chromium.org</owner>
  <summary>
    Time between switching to a Bluetooth connection and receiving the first
    network data.

    This metric is recorded when the NetworkChangeNotifier detects a
    connectivity change.  This will miss data from users whose connection type
    never changes and will be biased to users whose connection type changes
    frequently.
  </summary>
</histogram>

<histogram name="NCN.CM.FirstReadOnEthernet" units="ms">
  <owner>pauljensen@chromium.org</owner>
  <summary>
    Time between switching to an Ethernet connection and receiving the first
    network data.

    This metric is recorded when the NetworkChangeNotifier detects a
    connectivity change.  This will miss data from users whose connection type
    never changes and will be biased to users whose connection type changes
    frequently.
  </summary>
</histogram>

<histogram name="NCN.CM.FirstReadOnNone" units="ms">
  <owner>pauljensen@chromium.org</owner>
  <summary>
    Time between disconnecting and receiving the first network data.

    This metric is recorded when the NetworkChangeNotifier detects a
    connectivity change.  This will miss data from users whose connection type
    never changes and will be biased to users whose connection type changes
    frequently.
  </summary>
</histogram>

<histogram name="NCN.CM.FirstReadOnUnknown" units="ms">
  <owner>pauljensen@chromium.org</owner>
  <summary>
    Time between switching to an unknown connection type and receiving the first
    network data.

    This metric is recorded when the NetworkChangeNotifier detects a
    connectivity change.  This will miss data from users whose connection type
    never changes and will be biased to users whose connection type changes
    frequently.
  </summary>
</histogram>

<histogram name="NCN.CM.FirstReadOnWifi" units="ms">
  <owner>pauljensen@chromium.org</owner>
  <summary>
    Time between switching to a Wifi connection and receiving the first network
    data.

    This metric is recorded when the NetworkChangeNotifier detects a
    connectivity change.  This will miss data from users whose connection type
    never changes and will be biased to users whose connection type changes
    frequently.
  </summary>
</histogram>

<histogram name="NCN.CM.KBTransferedOn2G" units="KB">
  <owner>pauljensen@chromium.org</owner>
  <summary>
    How much data was transfered while connected via a 2G connection, before the
    NetworkChangeNotifier detected a connectivity change.

    This metric is recorded when the NetworkChangeNotifier detects a
    connectivity change.  This will miss data from users whose connection type
    never changes and will be biased to users whose connection type changes
    frequently.
  </summary>
</histogram>

<histogram name="NCN.CM.KBTransferedOn3G" units="KB">
  <owner>pauljensen@chromium.org</owner>
  <summary>
    How much data was transfered while connected via a 3G connection, before the
    NetworkChangeNotifier detected a connectivity change.

    This metric is recorded when the NetworkChangeNotifier detects a
    connectivity change.  This will miss data from users whose connection type
    never changes and will be biased to users whose connection type changes
    frequently.
  </summary>
</histogram>

<histogram name="NCN.CM.KBTransferedOn4G" units="KB">
  <owner>pauljensen@chromium.org</owner>
  <summary>
    How much data was transfered while connected via a 4G connection, before the
    NetworkChangeNotifier detected a connectivity change.

    This metric is recorded when the NetworkChangeNotifier detects a
    connectivity change.  This will miss data from users whose connection type
    never changes and will be biased to users whose connection type changes
    frequently.
  </summary>
</histogram>

<histogram name="NCN.CM.KBTransferedOnBluetooth" units="KB">
  <owner>pauljensen@chromium.org</owner>
  <summary>
    How much data was transfered while connected via a Bluetooth connection,
    before the NetworkChangeNotifier detected a connectivity change.

    This metric is recorded when the NetworkChangeNotifier detects a
    connectivity change.  This will miss data from users whose connection type
    never changes and will be biased to users whose connection type changes
    frequently.
  </summary>
</histogram>

<histogram name="NCN.CM.KBTransferedOnEthernet" units="KB">
  <owner>pauljensen@chromium.org</owner>
  <summary>
    How much data was transfered while connected via an Ethernet connection,
    before the NetworkChangeNotifier detected a connectivity change.

    This metric is recorded when the NetworkChangeNotifier detects a
    connectivity change.  This will miss data from users whose connection type
    never changes and will be biased to users whose connection type changes
    frequently.
  </summary>
</histogram>

<histogram name="NCN.CM.KBTransferedOnNone" units="KB">
  <owner>pauljensen@chromium.org</owner>
  <summary>
    How much data was transfered while the NetworkChangeNotifier thought there
    was no network connection, before the NetworkChangeNotifier detected a
    connectivity change.

    This metric is recorded when the NetworkChangeNotifier detects a
    connectivity change.  This will miss data from users whose connection type
    never changes and will be biased to users whose connection type changes
    frequently.
  </summary>
</histogram>

<histogram name="NCN.CM.KBTransferedOnUnknown" units="KB">
  <owner>pauljensen@chromium.org</owner>
  <summary>
    How much data was transfered while connected via an unknown connection type,
    before the NetworkChangeNotifier detected a connectivity change.

    This metric is recorded when the NetworkChangeNotifier detects a
    connectivity change.  This will miss data from users whose connection type
    never changes and will be biased to users whose connection type changes
    frequently.
  </summary>
</histogram>

<histogram name="NCN.CM.KBTransferedOnWifi" units="KB">
  <owner>pauljensen@chromium.org</owner>
  <summary>
    How much data was transfered while connected via a Wifi connection, before
    the NetworkChangeNotifier detected a connectivity change.

    This metric is recorded when the NetworkChangeNotifier detects a
    connectivity change.  This will miss data from users whose connection type
    never changes and will be biased to users whose connection type changes
    frequently.
  </summary>
</histogram>

<histogram name="NCN.CM.PeakKbpsOn2G" units="Kbps">
  <owner>pauljensen@chromium.org</owner>
  <summary>
    Rough estimate of peak throughput seen on a 2G connection, before the
    NetworkChangeNotifier detected a connectivity change.

    This metric is recorded when the NetworkChangeNotifier detects a
    connectivity change.  This will miss data from users whose connection type
    never changes and will be biased to users whose connection type changes
    frequently.
  </summary>
</histogram>

<histogram name="NCN.CM.PeakKbpsOn3G" units="Kbps">
  <owner>pauljensen@chromium.org</owner>
  <summary>
    Rough estimate of peak throughput seen on a 3G connection, before the
    NetworkChangeNotifier detected a connectivity change.

    This metric is recorded when the NetworkChangeNotifier detects a
    connectivity change.  This will miss data from users whose connection type
    never changes and will be biased to users whose connection type changes
    frequently.
  </summary>
</histogram>

<histogram name="NCN.CM.PeakKbpsOn4G" units="Kbps">
  <owner>pauljensen@chromium.org</owner>
  <summary>
    Rough estimate of peak throughput seen on a 4G connection, before the
    NetworkChangeNotifier detected a connectivity change.

    This metric is recorded when the NetworkChangeNotifier detects a
    connectivity change.  This will miss data from users whose connection type
    never changes and will be biased to users whose connection type changes
    frequently.
  </summary>
</histogram>

<histogram name="NCN.CM.PeakKbpsOnBluetooth" units="Kbps">
  <owner>pauljensen@chromium.org</owner>
  <summary>
    Rough estimate of peak throughput seen on a Bluetooth connection, before the
    NetworkChangeNotifier detected a connectivity change.

    This metric is recorded when the NetworkChangeNotifier detects a
    connectivity change.  This will miss data from users whose connection type
    never changes and will be biased to users whose connection type changes
    frequently.
  </summary>
</histogram>

<histogram name="NCN.CM.PeakKbpsOnEthernet" units="Kbps">
  <owner>pauljensen@chromium.org</owner>
  <summary>
    Rough estimate of peak throughput seen on an Ethernet connection, before the
    NetworkChangeNotifier detected a connectivity change.

    This metric is recorded when the NetworkChangeNotifier detects a
    connectivity change.  This will miss data from users whose connection type
    never changes and will be biased to users whose connection type changes
    frequently.
  </summary>
</histogram>

<histogram name="NCN.CM.PeakKbpsOnNone" units="Kbps">
  <owner>pauljensen@chromium.org</owner>
  <summary>
    Rough estimate of peak throughput seen while the NetworkChangeNotifier
    thought there was no network connection, before the NetworkChangeNotifier
    detected a connectivity change.

    This metric is recorded when the NetworkChangeNotifier detects a
    connectivity change.  This will miss data from users whose connection type
    never changes and will be biased to users whose connection type changes
    frequently.
  </summary>
</histogram>

<histogram name="NCN.CM.PeakKbpsOnUnknown" units="Kbps">
  <owner>pauljensen@chromium.org</owner>
  <summary>
    Rough estimate of peak throughput seen on an unknown connection type, before
    the NetworkChangeNotifier detected a connectivity change.

    This metric is recorded when the NetworkChangeNotifier detects a
    connectivity change.  This will miss data from users whose connection type
    never changes and will be biased to users whose connection type changes
    frequently.
  </summary>
</histogram>

<histogram name="NCN.CM.PeakKbpsOnWifi" units="Kbps">
  <owner>pauljensen@chromium.org</owner>
  <summary>
    Rough estimate of peak throughput seen on a Wifi connection, before the
    NetworkChangeNotifier detected a connectivity change.

    This metric is recorded when the NetworkChangeNotifier detects a
    connectivity change.  This will miss data from users whose connection type
    never changes and will be biased to users whose connection type changes
    frequently.
  </summary>
</histogram>

<histogram name="NCN.CM.TimeOn2G" units="ms">
  <owner>pauljensen@chromium.org</owner>
  <summary>
    How long was spent connected via a 2G connection, before the
    NetworkChangeNotifier detected a connectivity change.

    This metric is recorded when the NetworkChangeNotifier detects a
    connectivity change.  This will miss data from users whose connection type
    never changes and will be biased to users whose connection type changes
    frequently.
  </summary>
</histogram>

<histogram name="NCN.CM.TimeOn3G" units="ms">
  <owner>pauljensen@chromium.org</owner>
  <summary>
    How long was spent connected via a 3G connection, before the
    NetworkChangeNotifier detected a connectivity change.

    This metric is recorded when the NetworkChangeNotifier detects a
    connectivity change.  This will miss data from users whose connection type
    never changes and will be biased to users whose connection type changes
    frequently.
  </summary>
</histogram>

<histogram name="NCN.CM.TimeOn4G" units="ms">
  <owner>pauljensen@chromium.org</owner>
  <summary>
    How long was spent connected via a 4G connection, before the
    NetworkChangeNotifier detected a connectivity change.

    This metric is recorded when the NetworkChangeNotifier detects a
    connectivity change.  This will miss data from users whose connection type
    never changes and will be biased to users whose connection type changes
    frequently.
  </summary>
</histogram>

<histogram name="NCN.CM.TimeOnBluetooth" units="ms">
  <owner>pauljensen@chromium.org</owner>
  <summary>
    How long was spent connected via a Bluetooth connection, before the
    NetworkChangeNotifier detected a connectivity change.

    This metric is recorded when the NetworkChangeNotifier detects a
    connectivity change.  This will miss data from users whose connection type
    never changes and will be biased to users whose connection type changes
    frequently.
  </summary>
</histogram>

<histogram name="NCN.CM.TimeOnEthernet" units="ms">
  <owner>pauljensen@chromium.org</owner>
  <summary>
    How long was spent connected via an Ethernet connection, before the
    NetworkChangeNotifier detected a connectivity change.

    This metric is recorded when the NetworkChangeNotifier detects a
    connectivity change.  This will miss data from users whose connection type
    never changes and will be biased to users whose connection type changes
    frequently.
  </summary>
</histogram>

<histogram name="NCN.CM.TimeOnNone" units="ms">
  <owner>pauljensen@chromium.org</owner>
  <summary>
    How long was spent disconnected, before the NetworkChangeNotifier detected a
    connectivity change.

    This metric is recorded when the NetworkChangeNotifier detects a
    connectivity change.  This will miss data from users whose connection type
    never changes and will be biased to users whose connection type changes
    frequently.
  </summary>
</histogram>

<histogram name="NCN.CM.TimeOnUnknown" units="ms">
  <owner>pauljensen@chromium.org</owner>
  <summary>
    How long was spent connected via an unknown connection type, before the
    NetworkChangeNotifier detected a connectivity change.

    This metric is recorded when the NetworkChangeNotifier detects a
    connectivity change.  This will miss data from users whose connection type
    never changes and will be biased to users whose connection type changes
    frequently.
  </summary>
</histogram>

<histogram name="NCN.CM.TimeOnWifi" units="ms">
  <owner>pauljensen@chromium.org</owner>
  <summary>
    How long was spent connected via a Wifi connection, before the
    NetworkChangeNotifier detected a connectivity change.

    This metric is recorded when the NetworkChangeNotifier detects a
    connectivity change.  This will miss data from users whose connection type
    never changes and will be biased to users whose connection type changes
    frequently.
  </summary>
</histogram>

<histogram name="NCN.ConnectionTypeChangeToIPAddressChange" units="ms">
  <owner>pauljensen@chromium.org</owner>
  <summary>
    Time from ConnectionTypeChanged message until IPAddressChanged message.
  </summary>
</histogram>

<histogram name="NCN.DNSConfigChange" units="ms">
  <owner>pauljensen@chromium.org</owner>
  <summary>Time between DNS configuration change messages.</summary>
</histogram>

<histogram name="NCN.GetConnectionTypeTime" units="ms">
  <owner>pauljensen@chromium.org</owner>
  <summary>
    How long does each call to NetworkChangeNotifier::GetConnectionType() take.
  </summary>
</histogram>

<histogram name="NCN.IPAddressChange" units="ms">
  <owner>pauljensen@chromium.org</owner>
  <summary>Time between IP address change messages.</summary>
</histogram>

<histogram name="NCN.IPAddressChangeToConnectionTypeChange" units="ms">
  <owner>pauljensen@chromium.org</owner>
  <summary>
    Time from IPAddressChanged message until ConnectionTypeChanged message.
  </summary>
</histogram>

<histogram name="NCN.NetworkOfflineChange" units="ms">
  <owner>pauljensen@chromium.org</owner>
  <summary>
    Time between going online until we go offline change messages, using new
    filtered signal.
  </summary>
</histogram>

<histogram name="NCN.NetworkOnlineChange" units="ms">
  <owner>pauljensen@chromium.org</owner>
  <summary>
    Time between going offline until we go online change messages, using new
    filtered signal.
  </summary>
</histogram>

<histogram name="NCN.NetworkOperatorMCCMNC">
  <owner>bolian@chromium.org</owner>
  <owner>bengr@google.com</owner>
  <owner>marq@google.com</owner>
  <summary>
    The MCC (mobile country code) and MNC (mobile network code) of the network
    operator when a new metrics log is created or when the network connection is
    changed. A value of zero means a non-mobile network or the operator code is
    unknown.
  </summary>
</histogram>

<histogram name="NCN.OfflineChange" units="ms">
  <owner>pauljensen@chromium.org</owner>
  <summary>
    Time between going online until we go offline change messages.
  </summary>
</histogram>

<histogram name="NCN.OfflineDataRecv" units="ms">
  <owner>pauljensen@chromium.org</owner>
  <summary>
    Time between when we thought we went offline and when we received some
    network data (a URLRequest read completed).
  </summary>
</histogram>

<histogram name="NCN.OfflineDataRecvAny5sBeforeOnline">
  <owner>pauljensen@chromium.org</owner>
  <summary>
    Count of how many times we received network data (a URLRequest read
    completed) while offline when some data was received at most five seconds
    before going online.
  </summary>
</histogram>

<histogram name="NCN.OfflineDataRecvUntilOnline" units="ms">
  <owner>pauljensen@chromium.org</owner>
  <summary>
    Time between when we received the last network data (a URLRequest read
    completed) while offline and when we thought we went online.
  </summary>
</histogram>

<histogram name="NCN.OfflinePolls">
  <owner>pauljensen@chromium.org</owner>
  <summary>
    Count of how many times we polled the online/offline status before detecting
    an offline to online transition.
  </summary>
</histogram>

<histogram name="NCN.OnlineChange" units="ms">
  <owner>pauljensen@chromium.org</owner>
  <summary>
    Time between going offline until we go online change messages.
  </summary>
</histogram>

<histogram name="NCN.PollingOfflineDataRecv" units="ms">
  <owner>pauljensen@chromium.org</owner>
  <summary>
    Time between when we thought we went offline and when we received some
    network data (a URLRequest read completed), while polling
    NetworkChangeNotifier::GetConnectionType() still told us we were offline.
  </summary>
</histogram>

<histogram name="Net.AlternateProtocolBrokenLocation"
    enum="BrokenAlternateProtocolLocation">
  <owner>rch@chromium.org</owner>
  <summary>
    Breakdown of the locations when SetBrokenAlternateProtocol is called.
  </summary>
</histogram>

<histogram name="Net.AlternateProtocolUsage" enum="AlternateProtocolUsage">
  <owner>rch@chromium.org</owner>
  <summary>
    Breakdown of how requests which could potentially make use of an alternate
    protocol use or don't use the protocol.
  </summary>
</histogram>

<histogram name="Net.AlternateProtocolUsage.1000Truncated"
    enum="AlternateProtocolUsage">
  <obsolete>
    Deprecated 10/2014.
  </obsolete>
  <owner>rch@chromium.org</owner>
  <summary>
    Breakdown of how requests which could potentially make use of an alternate
    protocol use or don't use the protocol. Loaded data for 1000 servers and we
    have persisted 1000 MRU servers.
  </summary>
</histogram>

<histogram name="Net.AlternateProtocolUsage.200Truncated"
    enum="AlternateProtocolUsage">
  <obsolete>
    Deprecated 10/2014.
  </obsolete>
  <owner>rch@chromium.org</owner>
  <summary>
    Breakdown of how requests which could potentially make use of an alternate
    protocol use or don't use the protocol. Loaded data for 200 servers and we
    have persisted 1000 MRU servers.
  </summary>
</histogram>

<histogram name="Net.AlternativeServiceServers.MoreOrEqualCacheEntries">
  <owner>rtenneti@chromium.org</owner>
  <summary>
    The difference between the size of alternative service mappings in cache and
    preferences. This tracks zero or negative values (when the difference
    between preferences size is less than or equal to memory cache size).
    Positive values are tracked by
    Net.AlternativeServiceServers.MorePrefsEntries.
  </summary>
</histogram>

<histogram name="Net.AlternativeServiceServers.MorePrefsEntries">
  <owner>rtenneti@chromium.org</owner>
  <summary>
    The difference between the size of alternative service mappings in
    preferences and cache. This tracks positive values (when the difference
    between preferences size is greater than memory cache size). Non positive
    values are tracked by Net.AlternativeServiceServers.MoreOrEqualCacheEntries.
  </summary>
</histogram>

<histogram name="Net.AsyncResourceHandler_PendingDataCount">
  <obsolete>
    Deprecated 03/2015.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The count of unacknowledged ResourceMsg_DataReceived messages.  This message
    is sent once per chunk of data read from the network.
  </summary>
</histogram>

<histogram name="Net.AsyncResourceHandler_PendingDataCount_WhenFull">
  <obsolete>
    Deprecated 03/2015.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The count of unacknowledged ResourceMsg_DataReceived messages at the point
    where we pause network loading.
  </summary>
</histogram>

<histogram name="Net.AsyncResourceHandler_RedirectHopTime" units="ms">
  <obsolete>
    Data collection finished on 2015-03-31.
  </obsolete>
  <owner>bnc@chromium.org</owner>
  <summary>
    The time between the call of AsyncResourceHandler::OnRequestRedirected and
    the FollowRedirect IPC message from ResourceHost, that is, the length of the
    redirect browser-renderer-browser hop.
  </summary>
</histogram>

<histogram name="Net.AsyncResourceHandler_SharedIOBuffer_Alloc" units="bytes">
  <obsolete>
    Deprecated 03/2015.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>The size of a SharedIOBuffer allocation.</summary>
</histogram>

<histogram name="Net.AsyncResourceHandler_SharedIOBuffer_Used" units="bytes">
  <obsolete>
    Deprecated 03/2015.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>The number of bytes copied into a SharedIOBuffer.</summary>
</histogram>

<histogram name="Net.AsyncResourceHandler_SharedIOBuffer_UsedPercentage"
    units="%">
  <obsolete>
    Deprecated 03/2015.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The percentage of a SharedIOBuffer allocation that is actually used.
  </summary>
</histogram>

<histogram name="Net.AsyncRevalidation.ReadError" enum="NetErrorCodes">
  <owner>ricea@chromium.org</owner>
  <summary>
    Counts of error codes received while reading the body of an async
    revalidation before getting a response. Only async revalidations that had a
    read error are counted.
  </summary>
</histogram>

<histogram name="Net.AsyncRevalidation.ResponseError" enum="NetErrorCodes">
  <owner>ricea@chromium.org</owner>
  <summary>
    Counts of error codes received while performing an async revalidation before
    getting a response. Only async revalidations that had in a response error
    are counted.
  </summary>
</histogram>

<histogram name="Net.AsyncRevalidation.Result" enum="AsyncRevalidationResult">
  <owner>ricea@chromium.org</owner>
  <summary>
    The result of an async revalidation resulting from application of the
    Cache-Control: stale-while-revalidate directive. All async revalidations are
    counted.
  </summary>
</histogram>

<histogram name="Net.AuthGenerateToken_basic" units="ms">
  <obsolete>
    Deprecated 01/2011 in https://crrev.com/70740
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>The time to generate a Basic HTTP authentication token.</summary>
</histogram>

<histogram name="Net.AuthGenerateToken_digest" units="ms">
  <obsolete>
    Deprecated 01/2011 in https://crrev.com/70740
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>The time to generate a Digest HTTP authentication token.</summary>
</histogram>

<histogram name="Net.AuthGenerateToken_negotiate" units="ms">
  <obsolete>
    Deprecated 01/2011 in https://crrev.com/70740
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The time to generate a Negotiate (or SPNEGO) HTTP authentication token.
  </summary>
</histogram>

<histogram name="Net.AuthGenerateToken_ntlm" units="ms">
  <obsolete>
    Deprecated 01/2011 in https://crrev.com/70740
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>The time to generate an NTLM HTTP authentication token.</summary>
</histogram>

<histogram name="Net.AutoReload.CountAtStop">
  <owner>ellyjones@chromium.org</owner>
  <owner>rdsmith@chromium.org</owner>
  <owner>cbentzel@chromium.org</owner>
  <summary>
    Number of times auto-reload has been attempted before auto-reload stopped
    without succeeding, either because the stop button was pressed or because
    the renderer was destroyed.
  </summary>
</histogram>

<histogram name="Net.AutoReload.CountAtSuccess">
  <owner>ellyjones@chromium.org</owner>
  <owner>rdsmith@chromium.org</owner>
  <owner>cbentzel@chromium.org</owner>
  <summary>
    Number of times auto-reload had to attempt to reload a page before
    succeeding.
  </summary>
</histogram>

<histogram name="Net.AutoReload.ErrorAtFirstSuccess" enum="NetErrorCodes">
  <owner>ellyjones@chromium.org</owner>
  <owner>rdsmith@chromium.org</owner>
  <owner>cbentzel@chromium.org</owner>
  <summary>
    Original error code that started an auto-reload which then succeeded on the
    first attempt.
  </summary>
</histogram>

<histogram name="Net.AutoReload.ErrorAtStop" enum="NetErrorCodes">
  <owner>ellyjones@chromium.org</owner>
  <owner>rdsmith@chromium.org</owner>
  <owner>cbentzel@chromium.org</owner>
  <summary>
    Error code, if any, when auto-reload stopped without succeeding, either
    because the stop button was pressed or because the renderer was destroyed.
  </summary>
</histogram>

<histogram name="Net.AutoReload.ErrorAtSuccess" enum="NetErrorCodes">
  <owner>ellyjones@chromium.org</owner>
  <owner>rdsmith@chromium.org</owner>
  <owner>cbentzel@chromium.org</owner>
  <summary>
    Original error code that started an auto-reload which then eventually
    succeeded.
  </summary>
</histogram>

<histogram name="Net.CacheState.AllBytes">
  <owner>ellyjones@chromium.org</owner>
  <owner>rdsmith@chromium.org</owner>
  <summary>Counts of response bytes by cache state.</summary>
</histogram>

<histogram name="Net.CacheState.AllRequests" enum="NetCacheState">
  <owner>ellyjones@chromium.org</owner>
  <owner>rdsmith@chromium.org</owner>
  <summary>
    State of the cache for a request, delta-encoding eligible or otherwise.
  </summary>
</histogram>

<histogram name="Net.CacheState.EncodeableBytes">
  <owner>ellyjones@chromium.org</owner>
  <owner>rdsmith@chromium.org</owner>
  <summary>
    Counts of response bytes by cache state for delta-encoding eligible
    requests.
  </summary>
</histogram>

<histogram name="Net.CacheState.EncodeableRequests" enum="NetCacheState">
  <owner>ellyjones@chromium.org</owner>
  <owner>rdsmith@chromium.org</owner>
  <summary>State of the cache for a delta-encoding eligible request.</summary>
</histogram>

<histogram name="Net.CertCommonNameFallback" enum="BooleanCommonNameMatch">
  <owner>rsleevi@chromium.org</owner>
  <summary>
    Whether the certificate common name was used for matching the hostname,
    instead of the subjectAlternativeName.

    Measures results for all CAs (internal and publicly-trusted).
  </summary>
</histogram>

<histogram name="Net.CertCommonNameFallbackPrivateCA"
    enum="BooleanCommonNameMatch">
  <owner>rsleevi@chromium.org</owner>
  <summary>
    Whether the certificate common name was used for matching the hostname,
    instead of the subjectAlternativeName.

    Measures results ony for internal (non-publicly-trusted) CAs.
  </summary>
</histogram>

<histogram name="Net.Certificate.SHA1.MainFrame" enum="SHA1Status">
  <owner>rsleevi@chromium.org</owner>
  <summary>
    Whether or not SHA-1 was present in a resource fetched for the main frame,
    and if so, what its maximum validity period was.
  </summary>
</histogram>

<histogram name="Net.Certificate.SHA1.Subresource" enum="SHA1Status">
  <owner>rsleevi@chromium.org</owner>
  <summary>
    Whether or not SHA-1 was present in a subresource fetch, and if so, what its
    maximum validity period was.
  </summary>
</histogram>

<histogram name="Net.CertificatePinSuccess" enum="BooleanSuccess">
  <obsolete>
    Renamed to Net.PublicKeyPinSuccess 28 Oct 2011.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    A validated certificate chain may be subject to additional
    &quot;pinning&quot; requirements on a per-domain basis. This records the
    fraction of successful matches between a certificate chain and a pin list.
  </summary>
</histogram>

<histogram name="Net.CertificateTransparency.MainFrameValidSCTCount">
  <owner>eranm@chromium.org</owner>
  <summary>
    Number of valid Signed Certificate Timestamps (SCTs) present for the
    main-frame resource. Emitted every time a main-frame resource is fetched.
  </summary>
</histogram>

<histogram name="Net.CertificateTransparency.PilotSTHAge" units="ms">
  <owner>eranm@chromium.org</owner>
  <summary>
    Age of Pilot's Signed Tree Head, as observed by the client, in minutes.
    Measuring the age of a particular log's Signed Tree Head will allow more
    informed update frequency of the Component Updater component that provides
    them. Emitted once for every STH update received by the component updater.
  </summary>
</histogram>

<histogram name="Net.CertificateTransparency.SCTOrigin" enum="SCTOrigin">
  <owner>eranm@chromium.org</owner>
  <summary>
    The origin breakdown of Signed Certificate Timestamps (SCTs). Emitted once
    for every SCT when first validated, which means 0 or more times during every
    SSL connection establishment.
  </summary>
</histogram>

<histogram name="Net.CertificateTransparency.SCTsPerConnection">
  <owner>eranm@chromium.org</owner>
  <summary>
    The number of Signed Certificate Timestamps (SCTs) that were available for
    each SSL connection, including SCTs embedded in the certificate. This metric
    measures how many SSL connections had SCTs available. Emitted during every
    SSL connection establishment.
  </summary>
</histogram>

<histogram name="Net.CertificateTransparency.SCTStatus" enum="SCTVerifyStatus">
  <owner>eranm@chromium.org</owner>
  <summary>
    Breakdown of Signed Certificate Timestamps (SCTs) validation status. Emitted
    once for every SCT when first validated, which means 0 or more times during
    every SSL connection establishment.
  </summary>
</histogram>

<histogram name="Net.CertVerifier_First_Job_Latency" units="ms">
  <owner>davidben@chromium.org</owner>
  <summary>
    The actual amount of time spent verifying a certificate using the underlying
    cryptographic APIs. Because parallel verifications for the same certificate
    may be coalesced, histograms such as Net.SSLCertVerificationTime may be
    skewed, due to later verifications taking less overall time. This records
    the overall time spent verifying the first job to capture initialization
    costs.
  </summary>
</histogram>

<histogram name="Net.CertVerifier_Job_Latency" units="ms">
  <owner>rsleevi@chromium.org</owner>
  <summary>
    The actual amount of time spent verifying a certificate using the underlying
    cryptographic APIs. Because parallel verifications for the same certificate
    may be coalesced, histograms such as Net.SSLCertVerificationTime may be
    skewed, due to later verifications taking less overall time. This records
    the overall time spent verifying a single request, regardless of how many
    parallel requests are being served by the verification.
  </summary>
</histogram>

<histogram name="Net.CoalescePotential" enum="CoalescePotentialPackets">
  <obsolete>
    Deprecated 04/2016 as doesn't have data nor owner.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The number of times we sent N packets, but could have sent N-1 packets.
  </summary>
</histogram>

<histogram name="Net.ComodoDNSExperimentFailureTime" units="ms">
  <obsolete>
    This experiment has concluded.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The amount of time taken before we failed to  resolve the Comodo test DNS
    record. This is an experiment, run in conjuction with Comodo, to test the
    viability of a DNS based certificate revocation mechanism.
  </summary>
</histogram>

<histogram name="Net.ComodoDNSExperimentSuccessTime" units="ms">
  <obsolete>
    This experiment has concluded.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The amount of time taken to successfully resolve the Comodo test DNS record.
    This is an experiment, run in conjuction with Comodo, to test the viability
    of a DNS based certificate revocation mechanism.
  </summary>
</histogram>

<histogram name="Net.Compress.NoProxy.BytesAfterCompression" units="bytes">
  <obsolete>
    Removed as of 02/2015
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The uncompressed number of bytes received per request that was compressed.
    Only includes requests which did not go through an explicit proxy and did
    not go over SSL.
  </summary>
</histogram>

<histogram name="Net.Compress.NoProxy.BytesBeforeCompression" units="bytes">
  <obsolete>
    Removed as of 02/2015
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The compressed number of bytes received per request that was compressed.
    Only includes requests which did not go through an explicit proxy and did
    not go over SSL.
  </summary>
</histogram>

<histogram name="Net.Compress.NoProxy.ShouldHaveBeenCompressed" units="bytes">
  <obsolete>
    Removed as of 02/2015
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The uncompressed number of bytes received per request that was not
    compressed but appears to have been compressible.  Only includes requests
    which did not go through an explicit proxy and did not go over SSL.
  </summary>
</histogram>

<histogram name="Net.Compress.Proxy.BytesAfterCompression" units="bytes">
  <obsolete>
    Removed as of 02/2015
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The uncompressed number of bytes received per request that was compressed.
    Only includes requests sent through a proxy without SSL.
  </summary>
</histogram>

<histogram name="Net.Compress.Proxy.BytesBeforeCompression" units="bytes">
  <obsolete>
    Removed as of 02/2015
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The compressed number of bytes received per request that was compressed.
    Only includes requests sent through a proxy without SSL.
  </summary>
</histogram>

<histogram name="Net.Compress.Proxy.ShouldHaveBeenCompressed" units="bytes">
  <obsolete>
    Removed as of 02/2015
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The uncompressed number of bytes received per request that was not
    compressed but appears to have been compressible.  Only includes requests
    sent through a proxy without SSL.
  </summary>
</histogram>

<histogram name="Net.Compress.SSL.BytesAfterCompression" units="bytes">
  <obsolete>
    Removed as of 02/2015
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The uncompressed number of bytes received per request that was compressed.
    Only includes requests sent over SSL.
  </summary>
</histogram>

<histogram name="Net.Compress.SSL.BytesBeforeCompression" units="bytes">
  <obsolete>
    Removed as of 02/2015
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The compressed number of bytes received per request that was compressed.
    Only includes requests sent over SSL.
  </summary>
</histogram>

<histogram name="Net.Compress.SSL.ShouldHaveBeenCompressed" units="bytes">
  <obsolete>
    Removed as of 02/2015
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The uncompressed number of bytes received per request that was not
    compressed but appears to have been compressible.  Only includes requests
    sent over SSL.
  </summary>
</histogram>

<histogram name="Net.ConnectionTypeCount" enum="ConnectionType">
  <obsolete>
    The count was inaccurate (it counted transactions rather than connections)
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Each bucket is the number of connections of a particular type that the user
    has had during the session.
  </summary>
</histogram>

<histogram name="Net.ConnectionTypeCount2" enum="ConnectionType">
  <obsolete>
    Renamed to match HadConnectionType.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Each bucket is the number of successful connections of a particular type
    that the user has had during the session.
  </summary>
</histogram>

<histogram name="Net.ConnectionTypeCount3" enum="ConnectionType">
  <owner>davidben@chromium.org</owner>
  <summary>
    Each bucket is the number of successful connections of a particular type
    that the user has had during the session.
  </summary>
</histogram>

<histogram name="Net.ConnectionTypeFailCount2" enum="ConnectionType">
  <obsolete>
    No longer collected.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Each bucket is the number of failed connections of a particular type that
    the user has had during the session.
  </summary>
</histogram>

<histogram name="Net.ConnectionUsedSSLDeprecatedCipherFallback"
    enum="BooleanDeprecatedCiphers">
  <obsolete>
    Replaced with Net.ConnectionUsedSSLDeprecatedCipherFallback2 in Chrome 44.
  </obsolete>
  <owner>davidben@chromium.org</owner>
  <summary>
    True if an HTTPS connection was made using the deprecated cipher suite
    fallback.
  </summary>
</histogram>

<histogram name="Net.ConnectionUsedSSLDeprecatedCipherFallback2"
    enum="BooleanDeprecatedCiphers">
  <owner>davidben@chromium.org</owner>
  <summary>
    For each successful HTTPS request, whether it used the deprecated cipher
    suite fallback.
  </summary>
</histogram>

<histogram name="Net.ConnectionUsedSSLv3Fallback">
  <obsolete>
    Replaced by Net.ConnectionUsedSSLVersionFallback in Chrome 21.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    True if the HTTP request was to a server which requires SSLv3 fallback
  </summary>
</histogram>

<histogram name="Net.ConnectionUsedSSLVersionFallback"
    enum="FallbackSSLVersion">
  <obsolete>
    Replaced with Net.ConnectionUsedSSLVersionFallback2 in Chrome 44.
  </obsolete>
  <owner>agl@chromium.org</owner>
  <summary>
    Nonzero if the HTTP request was to a server which requires SSL version
    fallback.  The value indicates the SSL version the request fell back on.
  </summary>
</histogram>

<histogram name="Net.ConnectionUsedSSLVersionFallback2"
    enum="FallbackSSLVersion">
  <owner>davidben@chromium.org</owner>
  <summary>
    For each successful HTTPS request, whether it used the SSL version fallback.
    The value indicates the SSL version the request fell back on
  </summary>
</histogram>

<histogram name="Net.ContentDecodingFailed.FilterType" enum="NetFilterType">
  <owner>rdsmith@chromium.org</owner>
  <summary>
    For each CONTENT_DECODING_FAILED, record the filter that failed.
  </summary>
</histogram>

<histogram name="net.CookieBackingStoreUpdateResults"
    enum="BackingStoreResults">
  <obsolete>
    Initial typo; only here to get results from builds before r59117.  See
    &quot;Cookie.&quot; group.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Whether or not updates to the backing store succeeded or failed, recorded
    every update.
  </summary>
</histogram>

<histogram name="net.CookieBetweenAccessIntervalMinutes" units="minutes">
  <obsolete>
    Initial typo; only here to get results from builds before r59117.  See
    &quot;Cookie.&quot; group.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>Intervals between access time updates for each cookie.</summary>
</histogram>

<histogram name="net.CookieCount">
  <obsolete>
    Initial typo; only here to get results from builds before r59117.  See
    &quot;Cookie.&quot; group.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Number of cookies in the store (recorded every 10 minutes of active browsing
    time)
  </summary>
</histogram>

<histogram name="net.CookieDeletionCause" enum="CookieDeletionCause">
  <obsolete>
    Initial typo; only here to get results from builds before r59117.  See
    &quot;Cookie.&quot; group.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    For each cookie removed from the store, the reason it was removed.
  </summary>
</histogram>

<histogram name="net.CookieDomainCount">
  <obsolete>
    Initial typo; only here to get results from builds before r59117.  See
    &quot;Cookie.&quot; group.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    For each domain, number of cookies in that domain (recorded every 10 minutes
    of active browsing time).
  </summary>
</histogram>

<histogram name="net.CookieDomainPerEtldp1Count">
  <obsolete>
    Deprecated 04/2016 as doesn't have data nor owner.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    For every top level domain, number of subdomains in that top level domain
    (recorded every 10 minutes of active browsing time).
  </summary>
</histogram>

<histogram name="net.CookieEtldp1Count">
  <obsolete>
    Initial typo; only here to get results from builds before r59117.  See
    &quot;Cookie.&quot; group.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    For every top level domain, number of cookies in that domain (recorded every
    10 minutes of active browsing time).
  </summary>
</histogram>

<histogram name="net.CookieEvictedLastAccessMinutes" units="minutes">
  <obsolete>
    Initial typo; only here to get results from builds before r59117.  See
    &quot;Cookie.&quot; group.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    For each evicted (not expired) cookie, the amount of time since it was last
    used
  </summary>
</histogram>

<histogram name="net.CookieExpirationDurationMinutes" units="minutes">
  <obsolete>
    Initial typo; only here to get results from builds before r59117.  See
    &quot;Cookie.&quot; group.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>Number of minutes until cookie expires when set.</summary>
</histogram>

<histogram name="net.CookieTimeGet">
  <obsolete>
    Initial typo; only here to get results from builds before r59117.  See
    &quot;Cookie.&quot; group.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The amount of time (ms) to get cookies for each URL request.
  </summary>
</histogram>

<histogram name="net.CookieTimeLoad">
  <obsolete>
    Initial typo; only here to get results from builds before r59117.  See
    &quot;Cookie.&quot; group.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The amount of time (ms) to load the persistent cookie store at browser
    start.
  </summary>
</histogram>

<histogram name="Net.CountOfAlternateProtocolServers" units="servers">
  <owner>bnc@chromium.org</owner>
  <owner>rch@chromium.org</owner>
  <owner>rtenneti@chromium.org</owner>
  <summary>
    The total number of servers (HostPortPairs) to which alternative protocol
    was used. This counts the number of servers persisted to prefs file.
  </summary>
</histogram>

<histogram name="Net.CountOfAlternateProtocolServers.Memory" units="servers">
  <owner>bnc@chromium.org</owner>
  <owner>rch@chromium.org</owner>
  <owner>rtenneti@chromium.org</owner>
  <summary>
    The total number of servers (HostPortPairs in memory) to which alternative
    protocol was used.
  </summary>
</histogram>

<histogram name="Net.CountOfPipelineCapableServers" units="servers">
  <obsolete>
    Deprecated 05/2014, related field trial already long expired.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The total number of servers (HostPortPairs) that support HTTP pipelining.
    This counts the number of servers persisted to prefs file.
  </summary>
</histogram>

<histogram name="Net.CountOfSpdyServers">
  <owner>bnc@chromium.org</owner>
  <owner>rch@chromium.org</owner>
  <owner>rtenneti@chromium.org</owner>
  <summary>
    The total number of SPDY server names persisted to prefs file.
  </summary>
</histogram>

<histogram name="Net.CountOfSpdySettings">
  <owner>bnc@chromium.org</owner>
  <owner>rch@chromium.org</owner>
  <owner>rtenneti@chromium.org</owner>
  <summary>
    The total number of SPDY Settings properties persisted to prefs file.
  </summary>
</histogram>

<histogram name="Net.CRLRequestFailedTimeMs" units="ms">
  <owner>rsleevi@chromium.org</owner>
  <summary>
    When validating an HTTPS certificate we may have to block to fetch one or
    more revocation lists. This measures the amount of time that failures to get
    CRL information take.
  </summary>
</histogram>

<histogram name="Net.CRLRequestSuccess" enum="BooleanSuccess">
  <owner>rsleevi@chromium.org</owner>
  <summary>
    When validating an HTTPS certificate we may have to block to fetch one or
    more revocation lists. This records the fraction of successful requests.
  </summary>
</histogram>

<histogram name="Net.CRLRequestTimeMs" units="ms">
  <owner>rsleevi@chromium.org</owner>
  <summary>
    When validating an HTTPS certificate we may have to block to fetch one or
    more revocation lists. This measures the amount of time that each fetch
    takes.
  </summary>
</histogram>

<histogram name="Net.DailyContentLength" units="KB">
  <owner>bolian@chromium.org</owner>
  <summary>
    The total content size in KB of all HTTP/HTTPS response bodies in the
    previous calendar day. The metric is reported when the first response in the
    current day is received.
  </summary>
</histogram>

<histogram name="Net.DailyContentLength_DataReductionProxyEnabled" units="KB">
  <owner>bengr@chromium.org</owner>
  <owner>bolian@chromium.org</owner>
  <summary>
    The total content size in KB of all HTTP/HTTPS response bodies in the
    previous calendar day while the data reduction proxy setting was enabled.
    The metric is reported when the first response in the current day is
    received.
  </summary>
</histogram>

<histogram name="Net.DailyContentLength_DataReductionProxyEnabled_Https"
    units="KB">
  <owner>bengr@chromium.org</owner>
  <owner>bolian@chromium.org</owner>
  <summary>
    The total content size in KB of all HTTPS response bodies in the previous
    calendar day while the data reduction proxy setting was enabled. The metric
    is reported when the first response in the current day is received.
  </summary>
</histogram>

<histogram name="Net.DailyContentLength_DataReductionProxyEnabled_LongBypass"
    units="KB">
  <owner>bengr@chromium.org</owner>
  <owner>bolian@chromium.org</owner>
  <summary>
    The total content size in KB of all long-bypassed HTTP response bodies in
    the  previous calendar day while the data reduction proxy setting was
    enabled. The metric is reported when the first response in the current day
    is received.
  </summary>
</histogram>

<histogram name="Net.DailyContentLength_DataReductionProxyEnabled_ShortBypass"
    units="KB">
  <owner>bengr@chromium.org</owner>
  <owner>bolian@chromium.org</owner>
  <summary>
    The total content size in KB of all short-bypassed HTTP response bodies in
    the previous calendar day while the data reduction proxy setting was
    enabled. The metric is reported when the first response in the current day
    is received.
  </summary>
</histogram>

<histogram name="Net.DailyContentLength_DataReductionProxyEnabled_Unknown"
    units="KB">
  <obsolete>
    Deprecated. Moved to
    Net.DailyContentLength_DataReductionProxyEnabled_UnknownBypass in M46.
  </obsolete>
  <owner>bengr@chromium.org</owner>
  <owner>bolian@chromium.org</owner>
  <summary>
    The total content size in KB of all HTTP response bodies for requests that
    were not served by the enabled data reduction proxy for unknown reasons in
    the previous calendar day while the data reduction proxy setting was
    enabled. The metric is reported when the first response in the current day
    is received.
  </summary>
</histogram>

<histogram
    name="Net.DailyContentLength_DataReductionProxyEnabled_UnknownBypass"
    units="KB">
  <owner>bengr@chromium.org</owner>
  <owner>bolian@chromium.org</owner>
  <summary>
    The total content size in KB of all HTTP response bodies for requests that
    were not served by the enabled data reduction proxy for unknown reasons in
    the previous calendar day while the data reduction proxy setting was
    enabled. The metric is reported when the first response in the current day
    is received.
  </summary>
</histogram>

<histogram name="Net.DailyContentLength_ViaDataReductionProxy" units="KB">
  <owner>bengr@chromium.org</owner>
  <owner>bolian@chromium.org</owner>
  <summary>
    The total content size in KB of all HTTP/HTTPS response bodies in the
    previous calendar day via the data reduction proxy. The metric is reported
    when the first response in the current day is received.
  </summary>
</histogram>

<histogram name="Net.DailyContentPercent_DataReductionProxyEnabled" units="%">
  <owner>bengr@chromium.org</owner>
  <owner>bolian@chromium.org</owner>
  <summary>
    The percentage of total HTTP/HTTPS response body size while the data
    reduction proxy is enabled to total HTTP/HTTPS response body size in the
    previous calendar day. The metric is reported when the first response in the
    current day is received.
  </summary>
</histogram>

<histogram name="Net.DailyContentPercent_DataReductionProxyEnabled_Https"
    units="%">
  <owner>bengr@chromium.org</owner>
  <owner>bolian@chromium.org</owner>
  <summary>
    The percentage of total HTTPS response body size while the data reduction
    proxy is enabled to total HTTP/HTTPS response body size in the previous
    calendar day. The metric is reported when the first response in the current
    day is received.
  </summary>
</histogram>

<histogram name="Net.DailyContentPercent_DataReductionProxyEnabled_LongBypass"
    units="%">
  <owner>bengr@chromium.org</owner>
  <owner>bolian@chromium.org</owner>
  <summary>
    The percentage of total long-bypassed response body size while the data
    reduction proxy is enabled to total HTTP/HTTPS response body size in the
    previous calendar day. The metric is reported when the first response in the
    current day is received.
  </summary>
</histogram>

<histogram name="Net.DailyContentPercent_DataReductionProxyEnabled_ShortBypass"
    units="%">
  <owner>bengr@chromium.org</owner>
  <owner>bolian@chromium.org</owner>
  <summary>
    The percentage of total short-bypassed response body size while the data
    reduction proxy is enabled to total HTTP/HTTPS response body size in the
    previous calendar day. The metric is reported when the first response in the
    current day is received.
  </summary>
</histogram>

<histogram name="Net.DailyContentPercent_DataReductionProxyEnabled_Unknown"
    units="%">
  <owner>bengr@chromium.org</owner>
  <owner>bolian@chromium.org</owner>
  <summary>
    The percentage of total body size of responses that were not served by the
    data reduction proxy for unknown reason while the data reduction proxy is
    enabled to total HTTP/HTTPS response body size in the previous calendar day.
    The metric is reported when the first response in the current day is
    received.
  </summary>
</histogram>

<histogram name="Net.DailyContentPercent_ViaDataReductionProxy" units="%">
  <owner>bengr@chromium.org</owner>
  <owner>bolian@chromium.org</owner>
  <summary>
    The percentage of total HTTP/HTTPS response body size via the data reduction
    proxy to total HTTP/HTTPS response body size in the previous calendar day.
    The metric is reported when the first response in the current day is
    received.
  </summary>
</histogram>

<histogram name="Net.DailyContentSavingPercent" units="%">
  <owner>bengr@chromium.org</owner>
  <owner>bolian@chromium.org</owner>
  <summary>
    The percentage of data saving in the previous calendar day. A negative
    saving will be shown as zero. The metric is reported when the first response
    in the current day is received.
  </summary>
</histogram>

<histogram name="Net.DailyContentSavingPercent_DataReductionProxyEnabled"
    units="%">
  <owner>bengr@chromium.org</owner>
  <owner>bolian@chromium.org</owner>
  <summary>
    The percentage of data saving in the previous calendar day while the data
    reduction proxy was enabled. A negative saving will be shown as zero. This
    only counts responses while the data reduction proxy is enabled. The metric
    is reported when the first response in the current day is received.
  </summary>
</histogram>

<histogram name="Net.DailyContentSavingPercent_DataReductionProxyEnabled_Video"
    units="%">
  <owner>bengr@chromium.org</owner>
  <owner>bolian@chromium.org</owner>
  <summary>
    The percentage of data saving in the previous calendar day while the data
    reduction proxy was enabled. A negative saving will be shown as zero. This
    only counts responses while the data reduction proxy is enabled. The metric
    is reported when the first response in the current day is received. If no
    video bytes were received while the data reduction proxy was enabled, the
    metric will not be reported.
  </summary>
</histogram>

<histogram name="Net.DailyContentSavingPercent_ViaDataReductionProxy" units="%">
  <owner>bengr@chromium.org</owner>
  <owner>bolian@chromium.org</owner>
  <summary>
    The percentage of data saving in the previous calendar day via the data
    reduction proxy. A negative saving will be shown as zero. This only counts
    responses via the data reduction proxy. The metric is reported when the
    first response in the current day is received.
  </summary>
</histogram>

<histogram name="Net.DailyContentSavingPercent_ViaDataReductionProxy_Video"
    units="%">
  <owner>bengr@chromium.org</owner>
  <owner>bolian@chromium.org</owner>
  <summary>
    The percentage of data saving in the previous calendar day via the data
    reduction proxy. A negative saving will be shown as zero. This only counts
    responses via the data reduction proxy. The metric is reported when the
    first response in the current day is received. If no video bytes were
    received via the data reduction proxy, the metric will not be reported.
  </summary>
</histogram>

<histogram name="Net.DailyHttpContentLengthViaDataReductionProxy" units="KB">
  <obsolete>
    Deprecated- see Net.DailyContentLength_ViaDataReductionProxy.
  </obsolete>
  <owner>bolian@chromium.org</owner>
  <summary>
    Total size in KB of all response bodies in the previous calendar day that
    were received through the data reduction proxy.
  </summary>
</histogram>

<histogram name="Net.DailyHttpContentLengthWithDataReductionProxyEnabled"
    units="KB">
  <obsolete>
    Deprecated- see Net.DailyContentLength_DataReductionProxyEnabled
  </obsolete>
  <owner>bolian@chromium.org</owner>
  <summary>
    Total size in KB of all response bodies in the previous calendar day that
    were received when the data reduction proxy was enabled.
  </summary>
</histogram>

<histogram name="Net.DailyHttpContentSavings" units="%">
  <obsolete>
    Deprecated- see Net.DailyContentSavingPercent.
  </obsolete>
  <owner>bolian@chromium.org</owner>
  <summary>
    The percentage of data saving in the previous calendar day. A negative
    saving will be shown as zero.
  </summary>
</histogram>

<histogram name="Net.DailyHttpContentSavings_DataReductionProxy" units="%">
  <obsolete>
    Deprecated- see Net.DailyContentSavingPercent_DataReductionProxyEnabled.
  </obsolete>
  <owner>bolian@chromium.org</owner>
  <summary>
    The percentage of data saving in the previous calendar day when the data
    reduction proxy was enabled for at least some responses during the day. A
    negative saving will be shown as zero.
  </summary>
</histogram>

<histogram name="Net.DailyHttpOriginalContentLength" units="KB">
  <obsolete>
    Deprecated- see Net.DailyOriginalContentLength.
  </obsolete>
  <owner>bolian@chromium.org</owner>
  <summary>
    Total size in KB specified in the X-Original-Content-Length headers of all
    responses in the previous calendar day. If the header is not present in a
    response, the size of the response body is used.
  </summary>
</histogram>

<histogram name="Net.DailyHttpReceivedContentLength" units="KB">
  <obsolete>
    Deprecated- see Net.DailyContentLength.
  </obsolete>
  <owner>bolian@chromium.org</owner>
  <summary>
    Total size in KB of all response bodies in the previous calendar day.
  </summary>
</histogram>

<histogram name="Net.DailyOriginalContentLength" units="KB">
  <owner>bolian@chromium.org</owner>
  <summary>
    The total size in KB specified in the X-Original-Content-Length headers of
    all HTTP/HTTPS response bodies in the previous calendar day. If the header
    is not present in a response, the size of the response body is used. The
    metric is reported when the first response in the current day is received.
  </summary>
</histogram>

<histogram name="Net.DailyOriginalContentLength_DataReductionProxyEnabled"
    units="KB">
  <owner>bengr@chromium.org</owner>
  <owner>bolian@chromium.org</owner>
  <summary>
    The total size in KB specified in the X-Original-Content-Length headers of
    all HTTP/HTTPS response bodies in the previous calendar day while the data
    reduction proxy is enabled. If the header is not present in a response, the
    size of the response body is used. The metric is reported when the first
    response in the current day is received.
  </summary>
</histogram>

<histogram name="Net.DailyOriginalContentLength_ViaDataReductionProxy"
    units="KB">
  <owner>bengr@chromium.org</owner>
  <owner>bolian@chromium.org</owner>
  <summary>
    The total size in KB specified in the X-Original-Content-Length headers of
    all HTTP/HTTPS response bodies in the previous calendar day via the data
    reduction proxy. If the header is not present in a response, the size of the
    response body is used. The metric is reported when the first response in the
    current day is received.
  </summary>
</histogram>

<histogram name="Net.DailyReceivedContentViaDataReductionProxy" units="%">
  <obsolete>
    Deprecated- see Net.DailyContentPercent_ViaDataReductionProxy.
  </obsolete>
  <owner>bengr@chromium.org</owner>
  <owner>bolian@chromium.org</owner>
  <summary>
    The percentage of Net.DailyHttpContentLengthViaDataReductionProxy in
    Net.DailyHttpReceivedContentLength.
  </summary>
</histogram>

<histogram name="Net.DailyReceivedContentWithDataReductionProxyEnabled"
    units="%">
  <obsolete>
    Deprecated- see Net.DailyContentPercent_DataReductionProxyEnabled.
  </obsolete>
  <owner>bengr@chromium.org</owner>
  <owner>bolian@chromium.org</owner>
  <summary>
    The percentage of Net.DailyHttpContentLengthWithDataReductionProxyEnabled in
    Net.DailyHttpReceivedContentLength.
  </summary>
</histogram>

<histogram name="Net.DailyUserVisibleSavingsPercent_DataReductionProxyEnabled"
    units="%">
  <owner>kundaji@chromium.org</owner>
  <owner>bengr@chromium.org</owner>
  <summary>
    The percentage of data savings in past
    |DataReductionProxy::kNumDaysInHistorySummary| days. This number is
    displayed to users as their data savings.
  </summary>
</histogram>

<histogram name="Net.DailyUserVisibleSavingsSize_DataReductionProxyEnabled"
    units="KB">
  <owner>kundaji@chromium.org</owner>
  <owner>bengr@chromium.org</owner>
  <summary>
    The total data saved in KB in past
    |DataReductionProxy::kNumDaysInHistorySummary| days. This number is used to
    compute the data savings displayed to the user.
  </summary>
</histogram>

<histogram name="Net.DhcpWpadCancelTime" units="ms">
  <obsolete>
    Removed in Chrome 39.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Measures time from initiating a fetch of a PAC file from DHCP WPAD to
    cancellation of the fetch. For a given fetch, only one of the cancellation
    or completion histograms will be added to.
  </summary>
</histogram>

<histogram name="Net.DhcpWpadCompletionTime" units="ms">
  <obsolete>
    Removed in Chrome 39.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Measures time from initiating a fetch of a PAC file from DHCP WPAD to
    completion of the fetch. For a given fetch, only one of the cancellation or
    completion histograms will be added to.
  </summary>
</histogram>

<histogram name="Net.DhcpWpadFetchError" enum="NetErrorCodes">
  <obsolete>
    Removed in Chrome 39.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Tracks the net error codes received when the DHCP WPAD fetch fails to
    retrieve a PAC file (including PAC_NOT_IN_DHCP, which is not really an error
    but an indication that a PAC URL was not configured in DHCP).
  </summary>
</histogram>

<histogram name="Net.DhcpWpadGetAdaptersAddressesError"
    enum="ErrorCodesGetAdaptersAddresses">
  <obsolete>
    Removed in Chrome 39.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Tracks the frequency of each of the different known error codes of calling
    the GetAdaptersAddresses Win32 API.
  </summary>
</histogram>

<histogram name="Net.DhcpWpadGetAdaptersAddressesTime" units="ms">
  <obsolete>
    Removed in Chrome 39.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Measures the time taken to call the GetAdaptersAddresses Win32 API, to
    validate our understanding that it should complete quickly enough to call
    synchronously from the network thread.
  </summary>
</histogram>

<histogram name="Net.DhcpWpadNumAdaptersAtWaitTimer">
  <obsolete>
    Removed in Chrome 39.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Total number of adapters enabled for DHCP as seen when the wait timer in the
    DHCP WPAD code hits. This timer fires after a timeout from when we get some
    information from the first adapter to finish.
  </summary>
</histogram>

<histogram name="Net.DhcpWpadNumPendingAdaptersAtWaitTimer">
  <obsolete>
    Removed in Chrome 39.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Number of adapters enabled for DHCP that we have not completed retrieving
    information for, as seen when the wait timer in the DHCP WPAD code hits.
    This timer fires after a timeout from when we get some information from the
    first adapter to finish.
  </summary>
</histogram>

<histogram name="Net.DhcpWpadUnhandledDhcpError">
  <obsolete>
    Removed in Chrome 39.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Counts the number of errors from the DhcpRequestParams API that we do not
    have specific handling for, so that we can see if there is an abnormally
    high rate.
  </summary>
</histogram>

<histogram name="Net.DNS_Resolution_And_TCP_Connection_Latency">
  <obsolete>
    Deprecated- see Net.DNS_Resolution_And_TCP_Connection_Latency2
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
</histogram>

<histogram name="Net.Dns_Resolution_And_TCP_Connection_Latency">
  <obsolete>
    Deprecated- see Net.DNS_Resolution_And_TCP_Connection_Latency2
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
</histogram>

<histogram name="Net.DNS_Resolution_And_TCP_Connection_Latency2" units="ms">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The time measured before starting DNS lookup until after the connection is
    complete.
  </summary>
</histogram>

<histogram name="Net.Dns_Resolution_And_TCP_Connection_Latency2">
  <obsolete>
    Deprecated- see Net.DNS_Resolution_And_TCP_Connection_Latency2
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
</histogram>

<histogram name="Net.DoubleGetExperiment_InitialResponseMethod"
    enum="DoubleGetExperimentMethods">
  <obsolete>
    Deprecated 04/2016 as doesn't have data nor owner.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The number of HTTP request responses with MS Office Docs MIME types. The
    responses are classified based on their method type and cacheability (POST,
    cacheable GET and non-cacheable GET). The histogram is used in Double GET
    Experiment, where successful non-cacheable GET requests are intercepted
    after initial response and repeated in order to determine how much reissuing
    non-cacheable GET requests influences their error rate. The histogram tracks
    only initial requests (not the repeated ones).
  </summary>
</histogram>

<histogram name="Net.DoubleGetExperiment_ResponseCode">
  <obsolete>
    Deprecated 04/2016 as doesn't have data nor owner.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The response codes encountered for GET request repeated in Double GET
    Experiment. In the experiment successful non-cacheable GET requests are
    intercepted after initial response and repeated. The goal of the experiment
    is to measure how much reissuing non-cacheable GET requests influences their
    error rate.
  </summary>
</histogram>

<histogram name="Net.DownloadBandwidth">
  <obsolete>
    Deprecated as of 03/2015.  No longer generated.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Kbps on download streams exceeding 25KB.  Measures from the beginning of the
    first byte received until the end of flowing data.
  </summary>
</histogram>

<histogram name="Net.ErrAborted.CountPerUpload" units="aborts">
  <owner>csharrison@chromium.org</owner>
  <summary>
    The count of the ABORTED bucket in Net.ErrorCodesForMainFrame3 at the time
    histograms are being uploaded.
  </summary>
</histogram>

<histogram name="Net.ErrAborted.ProportionPerUpload" units="%">
  <owner>csharrison@chromium.org</owner>
  <summary>
    The bucket proportion of the ABORTED bucket in Net.ErrorCodesForMainFrame3
    at the time histograms are being uploaded.
  </summary>
</histogram>

<histogram name="Net.ErrAborted.ReceivedBytes" units="bytes">
  <owner>csharrison@chromium.org</owner>
  <summary>
    The TotalReceivedBytes() at the time the request finishes with ERR_ABORTED.
  </summary>
</histogram>

<histogram name="Net.ErrAborted.SentBytes" units="bytes">
  <owner>csharrison@chromium.org</owner>
  <summary>
    The TotalSentBytes() at the time the request finishes with ERR_ABORTED.
  </summary>
</histogram>

<histogram name="Net.ErrorCodesForHTTPSGoogleMainFrame" enum="NetErrorCodes">
  <obsolete>
    Deprecated as of 2012/5/16, replaced by
    Net.ErrorCodesForHTTPSGoogleMainFrame2, which measures the same data but
    includes ERR_ABORT and OK.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Errors resulting from loading pages from https://www.google.com. Note that
    this only counts the errors in &quot;main frames&quot;, so it is a measure
    of the error pages that users actually see (it does not for example count
    the error codes for subresoures on a page). This is a temporary histogram,
    added in order to debug query loss from the SSL Search launch.
  </summary>
</histogram>

<histogram name="Net.ErrorCodesForHTTPSGoogleMainFrame2" enum="NetErrorCodes">
  <owner>mmenke@chromium.org</owner>
  <summary>
    Positive net error codes that requests for pages end with, including net::OK
    and net::ERR_ABORTED.  This only counts loads in &quot;main frames&quot; for
    https://www.google.com. Subresources or main frame navigations to other
    origins are not included.
  </summary>
</histogram>

<histogram name="Net.ErrorCodesForImages" enum="NetErrorCodes">
  <owner>skonig@chromium.org</owner>
  <owner>hbengali@chromium.org</owner>
  <summary>
    Net error codes that requests for images end with, including net::OK and
    net:ERR_ABORTED.
  </summary>
</histogram>

<histogram name="Net.ErrorCodesForMainFrame" enum="NetErrorCodes">
  <obsolete>
    Deprecated as of 2011/5/24, replaced by Net.ErrorCodesForMainFrame2, which
    measures the same data but uses a different bucket structure (adds guard
    buckets).
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Positive net error code that a page failed with. Note that this only counts
    the errors in &quot;main frames&quot;, so it is a measure of the error pages
    that users actually see (it does not for example count the error codes for
    subresoures on a page).
  </summary>
</histogram>

<histogram name="Net.ErrorCodesForMainFrame2" enum="NetErrorCodes">
  <obsolete>
    Deprecated as of 2012/5/16, replaced by Net.ErrorCodesForMainFrame3, which
    measures the same data but includes ERR_ABORTED and OK.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Positive net error code that a page failed with. Note that this only counts
    the errors in &quot;main frames&quot;, so it is a measure of the error pages
    that users actually see (it does not for example count the error codes for
    subresoures on a page).
  </summary>
</histogram>

<histogram name="Net.ErrorCodesForMainFrame3" enum="NetErrorCodes">
  <owner>mmenke@chromium.org</owner>
  <summary>
    Positive net error codes that requests for pages end with, including net::OK
    and net::ERR_ABORTED.  This only counts loads in &quot;main frames&quot; (it
    does not for example count the error codes for subresoures on a page).
  </summary>
</histogram>

<histogram name="Net.ErrorCodesForSubresources" enum="NetErrorCodes">
  <obsolete>
    Deprecated as of 2012/5/16, replaced by Net.ErrorCodesForSubresources2,
    which measures the same data but includes ERR_ABORT and OK.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Positive net error code that a page failed with. Note that this only counts
    the errors in &quot;subresources&quot;.
  </summary>
</histogram>

<histogram name="Net.ErrorCodesForSubresources2" enum="NetErrorCodes">
  <owner>mmenke@chromium.org</owner>
  <summary>
    Net error codes that requests for &quot;subresources&quot; end with,
    including net::OK and net::ERR_ABORTED.
  </summary>
</histogram>

<histogram name="Net.ErrorPageButtonPressedWhileInUnexpectedState"
    enum="ErrorPageButton">
  <obsolete>
    Deprecated as of 2015/8/21
  </obsolete>
  <owner>mmenke@chromium.org</owner>
  <summary>
    Temporary histogram to investigate http://crbug.com/500556.  Records which
    button on the network error page was pushed when either the URL Blink
    reports for the page is not the internal error page URL or the
    NetErrorHelper core has no error information for the current page (or both).
  </summary>
</histogram>

<histogram name="Net.ErrorPageButtonPressUnexpectedStates"
    enum="ErrorPageUnexpectedStates">
  <owner>mmenke@chromium.org</owner>
  <obsolete>
    Deprecated as of 2015/8/21
  </obsolete>
  <summary>
    Temporary histogram to investigate http://crbug.com/500556.  Records
    whether, when the handler for a button press on the network error page runs,
    which of the following are or are not true:  The URL Blink reports for the
    page is not the internal error page URL or the NetErrorHelper core has no
    error information for the current page.
  </summary>
</histogram>

<histogram name="Net.ErrorPageCounts" enum="NetErrorPageEvents">
  <owner>rdsmith@chromium.org</owner>
  <owner>ellyjones@chromium.org</owner>
  <summary>
    Counts of various events that can occur on the network error page. See the
    histogram for details.
  </summary>
</histogram>

<histogram name="Net.ErrorPageCounts.NavigationCorrectionLinksShown"
    enum="NetErrorNavigationCorrectionTypes">
  <owner>edwardjung@chromium.org</owner>
  <summary>
    Counts of the type of navigation correction suggestions shown on the network
    error page. Multiple suggestions can be shown at the same time.
  </summary>
</histogram>

<histogram name="Net.ErrorPageCounts.NavigationCorrectionLinksUsed"
    enum="NetErrorNavigationCorrectionTypes">
  <owner>edwardjung@chromium.org</owner>
  <summary>
    Usage of navigation correction suggestions shown on the network error page.
  </summary>
</histogram>

<histogram name="Net.ErrorResponseHasContentMainFrame" enum="BooleanSuccess">
  <owner>mmenke@chromium.org</owner>
  <summary>
    The number of main frame 4xx/5xx responses that have content, to determine
    if it's worth hooking up an error page for those that don't.  Intended to be
    removed from the binary soon.
  </summary>
</histogram>

<histogram name="Net.ErrorResponseHasContentNonMainFrame" enum="BooleanSuccess">
  <owner>mmenke@chromium.org</owner>
  <summary>
    The number of non-main frame 4xx/5xx responses that have content, to
    determine if it's worth hooking up an error page for those that don't.
    Intended to be removed from the binary soon.
  </summary>
</histogram>

<histogram name="Net.FileError_Flush">
  <obsolete>
    Deprecated 04/2016 as doesn't have data nor owner.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    System error code that a file Flush failed with.  The code is OS dependent,
    so when looking at the histogram don't mix OSes.
  </summary>
</histogram>

<histogram name="Net.FileError_GetSize">
  <obsolete>
    Deprecated 04/2016 as doesn't have data nor owner.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    System error code that a file GetSize failed with.  The code is OS
    dependent, so when looking at the histogram don't mix OSes.
  </summary>
</histogram>

<histogram name="Net.FileError_Open">
  <obsolete>
    Deprecated 04/2016 as doesn't have data nor owner.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    System error code that a file Open failed with.  The code is OS dependent,
    so when looking at the histogram don't mix OSes.
  </summary>
</histogram>

<histogram name="Net.FileError_Read">
  <obsolete>
    Deprecated 04/2016 as doesn't have data nor owner.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    System error code that a file Read failed with.  The code is OS dependent,
    so when looking at the histogram don't mix OSes.
  </summary>
</histogram>

<histogram name="Net.FileError_Seek">
  <obsolete>
    Deprecated 04/2016 as doesn't have data nor owner.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    System error code that a file Seek failed with.  The code is OS dependent,
    so when looking at the histogram don't mix OSes.
  </summary>
</histogram>

<histogram name="Net.FileError_SetEof">
  <obsolete>
    Deprecated 04/2016 as doesn't have data nor owner.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    System error code that a file SetEof failed with.  The code is OS dependent,
    so when looking at the histogram don't mix OSes.
  </summary>
</histogram>

<histogram name="Net.FileError_Write">
  <obsolete>
    Deprecated 04/2016 as doesn't have data nor owner.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    System error code that a file Write failed with.  The code is OS dependent,
    so when looking at the histogram don't mix OSes.
  </summary>
</histogram>

<histogram name="Net.FileErrorRange_Flush">
  <obsolete>
    Deprecated 04/2016 as doesn't have data nor owner.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    System error code range that a file Flush failed with.  Any value other than
    0 indicates that we have received errors in a range outside of the one in
    which we recorded the specific errors in Net.FileError_Flush.  The code is
    OS dependent, so when looking at the histogram don't mix OSes.
  </summary>
</histogram>

<histogram name="Net.FileErrorRange_GetSize">
  <obsolete>
    Deprecated 04/2016 as doesn't have data nor owner.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    System error code range that a file GetSize failed with.  Any value other
    than 0 indicates that we have received errors in a range outside of the one
    in which we recorded the specific errors in Net.FileError_GetSize.  The code
    is OS dependent, so when looking at the histogram don't mix OSes.
  </summary>
</histogram>

<histogram name="Net.FileErrorRange_Open">
  <obsolete>
    Deprecated 04/2016 as doesn't have data nor owner.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    System error code range that a file Open failed with.  Any value other than
    0 indicates that we have received errors in a range outside of the one in
    which we recorded the specific errors in Net.FileError_Open.  The code is OS
    dependent, so when looking at the histogram don't mix OSes.
  </summary>
</histogram>

<histogram name="Net.FileErrorRange_Read">
  <obsolete>
    Deprecated 04/2016 as doesn't have data nor owner.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    System error code range that a file Read failed with.  Any value other than
    0 indicates that we have received errors in a range outside of the one in
    which we recorded the specific errors in Net.FileError_Read.  The code is OS
    dependent, so when looking at the histogram don't mix OSes.
  </summary>
</histogram>

<histogram name="Net.FileErrorRange_Seek">
  <obsolete>
    Deprecated 04/2016 as doesn't have data nor owner.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    System error code range that a file Seek failed with.  Any value other than
    0 indicates that we have received errors in a range outside of the one in
    which we recorded the specific errors in Net.FileError_Seek.  The code is OS
    dependent, so when looking at the histogram don't mix OSes.
  </summary>
</histogram>

<histogram name="Net.FileErrorRange_SetEof">
  <obsolete>
    Deprecated 04/2016 as doesn't have data nor owner.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    System error code range that a file SetEof failed with.  Any value other
    than 0 indicates that we have received errors in a range outside of the one
    in which we recorded the specific errors in Net.FileError_SetEof.  The code
    is OS dependent, so when looking at the histogram don't mix OSes.
  </summary>
</histogram>

<histogram name="Net.FileErrorRange_Write">
  <obsolete>
    Deprecated 04/2016 as doesn't have data nor owner.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    System error code range that a file Write failed with.  Any value other than
    0 indicates that we have received errors in a range outside of the one in
    which we recorded the specific errors in Net.FileError_Write.  The code is
    OS dependent, so when looking at the histogram don't mix OSes.
  </summary>
</histogram>

<histogram name="Net.ForceAlternativeService" enum="BooleanForced">
  <obsolete>
    Data collection ended, corresponding feature removed.
  </obsolete>
  <owner>bnc@chromium.org</owner>
  <summary>
    Track usage of alternative services forced by the force-alt-protocols
    command line flag.  Triggered each time alternative services are queried for
    a given origin and the command line flag would make a difference (that is,
    there is no advertised alternative service for that origin).
  </summary>
</histogram>

<histogram name="Net.FoundSystemTrustRootsAndroid" enum="Boolean">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Whether or not system installed trust anchors could be distinguished from
    user installed trust anchors. Recorded on first certificate verification on
    Android 4.2 and later.
  </summary>
</histogram>

<histogram name="Net.FtpDataConnectionErrorCount" enum="FtpDataConnectionError">
  <owner>phajdan.jr@chromium.org</owner>
  <summary>The number of times each FTP Error was observed.</summary>
</histogram>

<histogram name="Net.FtpDataConnectionErrorHappened"
    enum="FtpDataConnectionError">
  <owner>phajdan.jr@chromium.org</owner>
  <summary>
    The number of Chrome sessions which encountered the indicates FTP Error.
    This prevents allowing a user that retried a connection many times (getting
    an error each time) from biasing the tallies.
  </summary>
</histogram>

<histogram name="Net.FtpServerTypeCount" enum="FtpServerType">
  <obsolete>
    Replaced by Net.FtpServerTypeCount2 on 2012-11-03.
  </obsolete>
  <owner>phajdan.jr@chromium.org</owner>
  <summary>
    Each bucket is the number of times the FTP server type was encountered.
  </summary>
</histogram>

<histogram name="Net.FtpServerTypeCount2" enum="FtpServerType2">
  <owner>phajdan.jr@chromium.org</owner>
  <summary>
    Each bucket is the number of times the FTP server type was encountered.
  </summary>
</histogram>

<histogram name="Net.GetProxyForUrl_FAIL" units="ms">
  <obsolete>
    Removed at some time before 2014/09/15.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The time spent waiting for WinHttpGetProxyForUrl to return with error.
  </summary>
</histogram>

<histogram name="Net.GetProxyForUrl_OK" units="ms">
  <obsolete>
    Removed at some time before 2014/09/15.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The time spent waiting for WinHttpGetProxyForUrl to return with success.
  </summary>
</histogram>

<histogram name="Net.GoogleConnectionInappropriateFallback"
    enum="BooleanInappropriateFallback">
  <owner>davidben@chromium.org</owner>
  <summary>
    Records a sample for each HTTPS request to a Google server that either
    succeeded or received an inappropriate_fallback alert. This is used to
    estimate how frequently the fallback is used to recover from a spurious
    network failure.
  </summary>
</histogram>

<histogram name="Net.GoogleConnectionUsedSSLVersionFallback"
    enum="FallbackSSLVersion">
  <obsolete>
    Replaced with Net.GoogleConnectionUsedSSLVersionFallback2 in Chrome 44.
  </obsolete>
  <owner>agl@chromium.org</owner>
  <summary>
    Nonzero if the HTTP request was to a Google server which required SSL
    version fallback. The value indicates the SSL version the request fell back
    on. Since Google servers support TLS 1.2, any fallback is an indication of
    network middleware problems.
  </summary>
</histogram>

<histogram name="Net.GoogleConnectionUsedSSLVersionFallback2"
    enum="FallbackSSLVersion">
  <owner>davidben@chromium.org</owner>
  <summary>
    For each successful HTTPS request to a Google server, whether it used the
    SSL version fallback. The value indicates the SSL version the request fell
    back on. Since Google servers support TLS 1.2 and FALLBACK_SCSV, any
    fallback is an indication of a broken local SSL MITM proxy.
  </summary>
</histogram>

<histogram name="Net.GzipEncodingFixupResult" enum="GzipEncodingFixupResult">
  <obsolete>
    Removed around 2015/03/18. The code which implemented Gzip encoding fixup
    was removed.
  </obsolete>
  <owner>asanka@chromium.org</owner>
  <summary>
    Resources are sometimes transferred with an incorrect encoding type of gzip.
    net::Filter::FixupEncodingTypes() attempts to correct for these situations
    by applying a set of heuristics. This histogram counts the frequency of
    usage of these heuristics in the wild.
  </summary>
</histogram>

<histogram name="Net.HadConnectionType" enum="ConnectionType">
  <obsolete>
    The count was inaccurate (it counted transactions rather than connections).
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Each bucket is a boolean (0 or 1) indicating whether the user has had a
    connection of that type during the session.
  </summary>
</histogram>

<histogram name="Net.HadConnectionType2" enum="ConnectionType">
  <obsolete>
    This statistic measures successful and failed connections, the new one only
    measures successful ones.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Each bucket is a boolean (0 or 1) indicating whether the user has had a
    connection of that type during the session.
  </summary>
</histogram>

<histogram name="Net.HadConnectionType3" enum="ConnectionType">
  <owner>davidben@chromium.org</owner>
  <summary>
    Each bucket is a boolean (0 or 1) indicating whether the user has had a
    successful connection of that type during the session.
  </summary>
</histogram>

<histogram name="Net.HadFtpServerType" enum="FtpServerType">
  <obsolete>
    Replaced by Net.HadFtpServerType2 on 2012-11-13.
  </obsolete>
  <owner>phajdan.jr@chromium.org</owner>
  <summary>
    Each bucket is the number of sessions that encountered a given FTP server
    type. Each session reports a given server type at most once.
  </summary>
</histogram>

<histogram name="Net.HadFtpServerType2" enum="FtpServerType2">
  <owner>phajdan.jr@chromium.org</owner>
  <summary>
    Each bucket is the number of sessions that encountered a given FTP server
    type. Each session reports a given server type at most once.
  </summary>
</histogram>

<histogram name="Net.HasBrokenNEON" enum="BooleanBroken">
  <owner>davidben@chromium.org</owner>
  <summary>
    Records, on startup, for ARM devices running Android, whether the CPU is
    known to have a broken NEON unit. See https://crbug.com/341598.
  </summary>
</histogram>

<histogram name="Net.Http2SSLCipherSuite" enum="SSLCipherSuite">
  <owner>davidben@chromium.org</owner>
  <summary>
    The SSL/TLS cipher suite that was negotiated, recorded for each successful
    HTTP/2 connection.
  </summary>
</histogram>

<histogram name="Net.HttpAuthCacheAddEvicted" enum="BooleanDidEvict">
  <owner>juliatuttle@chromium.org</owner>
  <summary>
    Whether adding an entry to the HTTP auth cache evicted another entry.
  </summary>
</histogram>

<histogram name="Net.HttpAuthCacheAddEvictedCreation">
  <owner>juliatuttle@chromium.org</owner>
  <summary>
    When an HTTP auth cache entry is evicted, the time since it was created.
  </summary>
</histogram>

<histogram name="Net.HttpAuthCacheAddEvictedLastUse">
  <owner>juliatuttle@chromium.org</owner>
  <summary>
    When an HTTP auth cache entry is evicted, the time since it was last used.
  </summary>
</histogram>

<histogram name="Net.HttpAuthCacheAddPathEvicted" enum="BooleanDidEvict">
  <owner>juliatuttle@chromium.org</owner>
  <summary>
    Whether adding a path to an entry in the HTTP auth cache evicted another
    path.
  </summary>
</histogram>

<histogram name="Net.HttpAuthCacheLookupByPathPosition">
  <owner>juliatuttle@chromium.org</owner>
  <summary>
    When looking up an HTTP auth cache entry by path, the position (1-indexed)
    of the entry on a hit, or 0 on a miss.
  </summary>
</histogram>

<histogram name="Net.HttpAuthCacheLookupPosition">
  <owner>juliatuttle@chromium.org</owner>
  <summary>
    When looking up an HTTP auth cache entry by realm, the position (1-indexed)
    of the entry on a hit, or 0 on a miss.
  </summary>
</histogram>

<histogram name="Net.HttpAuthCount" enum="HttpAuthCount">
  <owner>asanka@chromium.org</owner>
  <owner>cbentzel@chromium.org</owner>
  <summary>
    Per-authentication-scheme counts of authentication attempts and rejections.
  </summary>
</histogram>

<histogram name="Net.HttpAuthResource" enum="HttpAuthResource">
  <obsolete>
    Removed in https://crrev.com/209100
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Count of authentication requests for top level pages vs. sub-resources, such
    as images or iframes.
  </summary>
</histogram>

<histogram name="Net.HttpAuthTarget" enum="HttpAuthTarget">
  <owner>asanka@chromium.org</owner>
  <owner>cbentzel@chromium.org</owner>
  <summary>
    Per-authentication-scheme counts of authentication targets, such as secure
    servers or proxies.
  </summary>
</histogram>

<histogram name="Net.HttpConnectionLatency" units="ms">
  <obsolete>
    Deprecated as of 03/2015.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Time between the HttpNetworkTransaction requesting a connection and the time
    it connected.
  </summary>
</histogram>

<histogram name="Net.HttpContentFreshnessLifetime" units="seconds">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>Length of time that a received resource will be cacheable.</summary>
</histogram>

<histogram name="Net.HttpContentLength" units="bytes">
  <owner>bengr@chromium.org</owner>
  <summary>
    Size of the response body. This is the actual number of bytes received,
    which usually agrees with but is not necessarily the same as the size
    specified by the Content-Length header.
  </summary>
</histogram>

<histogram name="Net.HttpContentLengthCacheable" units="bytes">
  <owner>bengr@chromium.org</owner>
  <summary>
    Size of the response body if it is cacheable. This is the actual number of
    bytes received, which usually agrees with but is not necessarily the same as
    the size specified by the Content-Length header.
  </summary>
</histogram>

<histogram name="Net.HttpContentLengthCacheable24Hours" units="bytes">
  <owner>bengr@chromium.org</owner>
  <summary>
    Size of the response body if it is cacheable for at least 24 hours. This is
    the actual number of bytes received, which usually agrees with but is not
    necessarily the same as the size specified by the Content-Length header.
  </summary>
</histogram>

<histogram name="Net.HttpContentLengthCacheable4Hours" units="bytes">
  <owner>bengr@chromium.org</owner>
  <summary>
    Size of the response body if it is cacheable for at least 4 hours. This is
    the actual number of bytes received, which usually agrees with but is not
    necessarily the same as the size specified by the Content-Length header.
  </summary>
</histogram>

<histogram name="Net.HttpContentLengthDifference" units="bytes">
  <owner>bengr@chromium.org</owner>
  <summary>
    The difference between the size specified in the X-Original-Content-Length
    header and the size of the response body. This is zero if the
    X-Original-Content-Length header is not present in the response.
  </summary>
</histogram>

<histogram name="Net.HttpContentLengthDifferenceWithValidOCL" units="bytes">
  <owner>bengr@chromium.org</owner>
  <summary>
    The difference between the size specified in the X-Original-Content-Length
    header and the size of the response body. Only includes resources that have
    the X-Original-Content-Length header.
  </summary>
</histogram>

<histogram name="Net.HttpContentLengthWithValidOCL" units="bytes">
  <owner>bengr@chromium.org</owner>
  <summary>
    Size of the response body. Only includes resources that have the
    X-Original-Content-Length header.
  </summary>
</histogram>

<histogram name="Net.HttpHeaderParserEvent" enum="HttpHeaderParserEvent">
  <owner>mmenke@chromium.org</owner>
  <summary>
    Records the frequency with which a number of hacky HTTP header parsing rules
    are invoked.  This histogram should be removed after we have enough data to
    know if we can remove the hacks.
  </summary>
</histogram>

<histogram name="net.HttpIdentSrcURL" units="requests">
  <owner>tsepez@chromium.org</owner>
  <summary>
    Count of requests which contained a basic auth username and password
    embedded in the URL itself.
  </summary>
</histogram>

<histogram name="Net.HttpJob.TotalTime" units="ms">
  <owner>mmenke@chromium.org</owner>
  <summary>
    Time it takes to complete an HttpJob, from starting the transaction until we
    are done reading.
  </summary>
</histogram>

<histogram name="Net.HttpJob.TotalTimeCached" units="ms">
  <owner>mmenke@chromium.org</owner>
  <summary>
    Time it takes to complete an HttpJob, from starting the transaction until we
    are done reading, for jobs served from the cache.
  </summary>
</histogram>

<histogram name="Net.HttpJob.TotalTimeCancel" units="ms">
  <owner>mmenke@chromium.org</owner>
  <summary>
    Time it takes to complete an HttpJob, from starting the transaction until
    the job is killed. Note that we didn't detect the end of the data for this
    job.
  </summary>
</histogram>

<histogram name="Net.HttpJob.TotalTimeNotCached" units="ms">
  <owner>mmenke@chromium.org</owner>
  <summary>
    Time it takes to complete an HttpJob, from starting the transaction until we
    are done reading, for jobs not served from the cache.
  </summary>
</histogram>

<histogram name="Net.HttpJob.TotalTimeSuccess" units="ms">
  <owner>mmenke@chromium.org</owner>
  <summary>
    Time it takes to complete an HttpJob, from starting the transaction until we
    are done reading, for jobs when we read until no more data is available.
  </summary>
</histogram>

<histogram name="Net.HttpOriginalContentLength" units="bytes">
  <owner>bengr@chromium.org</owner>
  <summary>
    Size specified in the X-Original-Content-Length header. If this header is
    not present in the response, the size of the response body is used.
  </summary>
</histogram>

<histogram name="Net.HttpOriginalContentLengthWithValidOCL" units="bytes">
  <owner>bengr@chromium.org</owner>
  <summary>
    Size specified in the X-Original-Content-Length header. Only includes
    resources that have the X-Original-Content-Length header.
  </summary>
</histogram>

<histogram name="Net.HttpProxySocketRequestTime" units="ms">
  <owner>mmenke@chromium.org</owner>
  <summary>Time it takes to request a new (unused) HTTP proxy socket.</summary>
</histogram>

<histogram name="Net.HttpRequest.ContainsInvalidHeaderValuesInRFC7230"
    enum="Boolean">
  <owner>hiroshige@chromium.org</owner>
  <summary>
    Whether a request contains invalid request header values in RFC 7230. This
    is counted once for every redirect leg. https://crbug.com/455099.
  </summary>
</histogram>

<histogram name="Net.HttpRequestCompletionErrorCodes" enum="NetErrorCodes">
  <owner>sclittle@chromium.org</owner>
  <owner>bengr@chromium.org</owner>
  <summary>
    The network error code that the HTTP request completes with, including OK
    and ABORTED.
  </summary>
</histogram>

<histogram name="Net.HttpRequestCompletionErrorCodes.MainFrame"
    enum="NetErrorCodes">
  <owner>sclittle@chromium.org</owner>
  <owner>bengr@chromium.org</owner>
  <summary>
    The network error code that the HTTP main frame resource request completes
    with, including OK and ABORTED.
  </summary>
</histogram>

<histogram name="Net.HttpResponse.ContainsInvalidHeaderValuesInRFC7230"
    enum="Boolean">
  <owner>hiroshige@chromium.org</owner>
  <summary>
    Whether a response contains invalid response header values in RFC 7230. This
    is counted once for every redirect leg. https://crbug.com/455099.
  </summary>
</histogram>

<histogram name="Net.HttpResponseCode">
  <owner>mmenke@chromium.org</owner>
  <summary>The count of HTTP Response codes encountered.</summary>
</histogram>

<histogram name="Net.HttpResponseCode_Nxx_MainFrame">
  <owner>mmenke@chromium.org</owner>
  <summary>
    The count of HTTP Response codes encountered, in response to MAIN_FRAME
    requests only; saving only the hundreds digit, e.g. 100-&gt;1, 300-&gt;3.
  </summary>
</histogram>

<histogram name="Net.HttpResponseInfo.ConnectionInfo" enum="ConnectionInfo">
  <owner>bnc@chromium.org</owner>
  <summary>
    Application protocol used in HTTP response.  Recorded every time a
    URLRequest completes.
  </summary>
</histogram>

<histogram name="Net.HttpServerProperties.UpdatePrefs"
    enum="HttpServerPropertiesUpdatePrefsLocation">
  <owner>rtenneti@chromium.org</owner>
  <summary>
    The location in http_server_properties_manager.cc where UpdatePrefs was
    called.
  </summary>
</histogram>

<histogram name="Net.HttpSocketType" enum="HttpSocketType">
  <obsolete>
    Deprecated as of 03/2015.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The counts of the type of sockets (all HTTP sockets, regardless of any proxy
    used) used for HTTP[s].
  </summary>
</histogram>

<histogram name="Net.HttpStatusLineStatus" enum="HttpStatusLineStatus">
  <owner>ellyjones@chromium.org</owner>
  <summary>
    Records how often violations of RFC 7230's header parsing rules are
    observed.
  </summary>
</histogram>

<histogram name="Net.HttpStreamFactoryJob.StreamReadyCallbackTime" units="ms">
  <owner>rtenneti@chromium.org</owner>
  <summary>Time it takes for OnStreamReadyCallback to be called.</summary>
</histogram>

<histogram name="Net.HttpTimeToFirstByte" units="ms">
  <owner>mmenke@chromium.org</owner>
  <summary>
    Time from when an HTTP request is issued to when the first byte is
    processed.
  </summary>
</histogram>

<histogram name="Net.IOError_SocketReuseType" enum="HttpSocketType">
  <obsolete>
    Deprecated 04/2016 as doesn't have data nor owner.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The count of handleable socket errors (connection abort/close/reset) per
    socket reuse type.
  </summary>
</histogram>

<histogram name="Net.IOError_SocketReuseType_disable_late_binding"
    enum="HttpSocketType">
  <obsolete>
    Late bindings are on by default now.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The count of handleable socket errors (connection abort/close/reset) per
    socket reuse type.  Socket late binding is disabled.
  </summary>
</histogram>

<histogram name="Net.IOError_SocketReuseType_enable_late_binding"
    enum="HttpSocketType">
  <obsolete>
    Late bindings are on by default now.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The count of handleable socket errors (connection abort/close/reset) per
    socket reuse type.  Socket late binding is enabled.
  </summary>
</histogram>

<histogram name="Net.IOThreadCreationToHttpRequestStart" units="ms">
  <obsolete>
    Deprecated 11/2014. No longer tracked.
  </obsolete>
  <owner>bengr@chromium.org</owner>
  <summary>
    Time from when the IOThread is created to when the first URL request is
    started. Only requests that are created for a profile while Chrome is
    starting up are considered.
  </summary>
</histogram>

<histogram name="Net.IPv6ConnectDuration" units="ms">
  <obsolete>
    Deprecated 1/2015. No longer tracked.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>Duration of time spent during the UDP-connect IPv6 probe.</summary>
</histogram>

<histogram name="Net.IPv6ConnectFailureMatch" enum="BooleanSuccess">
  <obsolete>
    Deprecated 03/2015. No longer tracked.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Whether the interface-enumeration IPv6 probe method failed given that the
    UDP-connect IPV6 probe failed.
  </summary>
</histogram>

<histogram name="Net.IPv6ConnectSuccessMatch" enum="BooleanSuccess">
  <obsolete>
    Deprecated 03/2015. No longer tracked.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Whether the interface-enumeration IPv6 probe method was successful given
    that the UDP-connect IPV6 probe was successful.
  </summary>
</histogram>

<histogram name="Net.IPv6Status" enum="IPV6ProbeResult">
  <obsolete>
    Deprecated 04/2016 as doesn't have data nor owner.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>The probe results when a test for IPv6 support is done.</summary>
</histogram>

<histogram name="Net.IPv6Status_retest" enum="IPV6ProbeResult">
  <obsolete>
    Deprecated 04/2016 as doesn't have data nor owner.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The probe results when a test for IPv6 support is done, after a network
    change event.
  </summary>
</histogram>

<histogram name="Net.MainFrameNoStore" enum="MainFrameStorable">
  <owner>jkarlin@chromium.org</owner>
  <summary>
    The distribution of storable vs &quot;cache-control: no-store&quot;
    main-frame resources.

    Counted after response headers have completed and before the content has
    completed. Redirects are counted. All HTTP cache transactions are counted,
    not just those that require the network.
  </summary>
</histogram>

<histogram name="Net.MTPR_GetProxyForUrl_Thread_Wait_Time" units="ms">
  <obsolete>
    Removed in Chrome 39.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The time that a (non-cancelled) proxy resolution request was stalled waiting
    for an execution thread, for MultiThreadedProxyResolver.
  </summary>
</histogram>

<histogram name="Net.MTPR_GetProxyForUrl_Time" units="ms">
  <obsolete>
    Removed in Chrome 39.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The total time that it took for a (non-cancelled) proxy resolution request
    to complete, for MultiThreadedProxyResolver.
  </summary>
</histogram>

<histogram name="Net.NetInternalsUi.Feature" enum="NetInternalsUiFeature">
  <obsolete>
    Removed in Chrome 44.
  </obsolete>
  <owner>eroman@chromium.org</owner>
  <summary>
    Counts the number of browser launches where chrome://net-internals and
    chrome://net-internals/#tests are used.
  </summary>
</histogram>

<histogram name="Net.NetworkErrorsRecovered.MainFrame" enum="NetErrorCodes">
  <obsolete>
    Deprecated 04/2016 as doesn't have data nor owner.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    How often automatically retrying to download the main frame of a page in
    response to specific HTTP network errors succeeds.
  </summary>
</histogram>

<histogram name="Net.NetworkErrorsRecovered.Subresource" enum="NetErrorCodes">
  <obsolete>
    Deprecated 04/2016 as doesn't have data nor owner.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    How often automatically retrying to download a subresource in response to
    specific HTTP network errors succeeds.
  </summary>
</histogram>

<histogram name="Net.NetworkErrorsUnrecovered.MainFrame" enum="NetErrorCodes">
  <obsolete>
    Deprecated 04/2016 as doesn't have data nor owner.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    How often automatically retrying to download the main frame of a page in
    response to specific HTTP network errors returns another network error.
    Histogram includes only the error code that triggered the retry.
  </summary>
</histogram>

<histogram name="Net.NetworkErrorsUnrecovered.Subresource" enum="NetErrorCodes">
  <obsolete>
    Deprecated 04/2016 as doesn't have data nor owner.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    How often automatically retrying to download a subresource in response to
    specific HTTP network errors returns another network error.  Histogram
    includes only the error code that triggered the retry.
  </summary>
</histogram>

<histogram name="Net.NotifyAddrChangeFailures">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    On Windows, NetworkChangeNotifierWin calls NotifyAddrChange, which can fail
    for unknown reasons. This records the number of times it fails in a row
    before a successful call. If it never succeeds, or takes over 100 tries, a
    value of 100 is recorded. See http://crbug.com/69198
  </summary>
</histogram>

<histogram name="Net.NumDuplicateCookiesInDb">
  <obsolete>
    Deprecated 2015-08-17 as part of cookie histogram cleanup
    (https://crbug.com/521135).
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The number of duplicate cookies that were present in the cookie store during
    startup.
  </summary>
</histogram>

<histogram name="Net.OCSPRequestFailedTimeMs" units="ms">
  <owner>rsleevi@chromium.org</owner>
  <summary>
    When validating an HTTPS certificate we may have to make one or more HTTP
    fetches to OCSP responders in order to get revocation information. This
    measures the amount of time that failures to get OCSP information take.
  </summary>
</histogram>

<histogram name="Net.OCSPRequestSuccess" enum="BooleanSuccess">
  <owner>rsleevi@chromium.org</owner>
  <summary>
    When validating an HTTPS certificate we may have to make one or more HTTP
    fetches to OCSP responders in order to get revocation information. This
    records the fraction of successful requests.
  </summary>
</histogram>

<histogram name="Net.OCSPRequestTimeMs" units="ms">
  <owner>rsleevi@chromium.org</owner>
  <summary>
    When validating an HTTPS certificate we may have to make one or more HTTP
    fetches to OCSP responders in order to get revocation information. This
    measures the amount of time that each of those requests takes.
  </summary>
</histogram>

<histogram name="Net.OCSPResponseStapled" enum="BooleanSuccess">
  <owner>rsleevi@chromium.org</owner>
  <summary>
    When connecting over HTTPS, a server may include an OCSP response as part of
    the TLS handshake so that clients do not have to fetch it, provided the
    client requested the server do so. This measures whether or not a server
    included an OCSP response when it was requested.
  </summary>
</histogram>

<histogram name="Net.OSErrorsForGetAddrinfo" enum="ErrorCodesGetaddrinfo_All">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Positive error code that was returned by the system library
    &quot;getaddrinfo()&quot;. This error code is platform specific, so when
    there is a Windows/Linux conflict, both decodings are shown.
  </summary>
</histogram>

<histogram name="Net.OSErrorsForGetAddrinfo_Linux"
    enum="ErrorCodesGetaddrinfo_Linux">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Positive error code that was returned by the system library
    &quot;getaddrinfo()&quot;.
  </summary>
</histogram>

<histogram name="Net.OSErrorsForGetAddrinfo_Mac"
    enum="ErrorCodesGetaddrinfo_Mac">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Positive error code that was returned by the system library
    &quot;getaddrinfo()&quot;.
  </summary>
</histogram>

<histogram name="Net.OSErrorsForGetAddrinfo_Win"
    enum="ErrorCodesGetaddrinfo_Win">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Positive error code that was returned by the system library
    &quot;getaddrinfo()&quot;.
  </summary>
</histogram>

<histogram name="Net.PacResultForStrippedUrl" enum="PacResultForStrippedUrl">
  <obsolete>
    Deprecated 4/27/2016. No longer tracked.
  </obsolete>
  <owner>eroman@chromium.org</owner>
  <summary>
    Proxy Auto Config (PAC) allows specifying an arbitrary javascript program to
    pick network proxies on a per-request basis (based on the URL). This works
    by calling the script's FindProxyForURL() function with the target URL as
    its first argument.

    Traditionally, the URL parameter passed into the script contains the exact
    URL being loaded, except maybe for having stripped the fragment and embedded
    identity portions of the URL.

    This histogram records what happens when the URL passed into
    FindProxyForURL() additionally has had its path component stripped. Does it
    return the same proxy list as when calling FindProxyForURL() with the
    original (unmodified) URL?

    This comparison is done only when the URL scheme implies a secure channel
    (i.e. https:// and wss://), in order to gather data for crbug.com/593759.
  </summary>
</histogram>

<histogram name="Net.Ping_ResponseStartedTime" units="ms">
  <obsolete>
    Deprecated 4/16/2014. No longer tracked.
  </obsolete>
  <owner>davidben@chromium.org</owner>
  <summary>
    How long it took for an &lt;a ping&gt; request to receive a response. Only
    recorded if a response was received.
  </summary>
</histogram>

<histogram name="Net.Ping_Result" enum="PingResult">
  <obsolete>
    Deprecated 4/16/2014. No longer tracked.
  </obsolete>
  <owner>davidben@chromium.org</owner>
  <summary>
    The result of an &lt;a ping&gt; request, whether it received a response or
    timed out or failed for some other reason.
  </summary>
</histogram>

<histogram name="Net.PreconnectedLinkNavigations" enum="PreconnectedNavigation">
  <owner>csharrison@chromium.org</owner>
  <obsolete>
    No longer tracked.
  </obsolete>
  <summary>
    Indicate whether a link navigation was preceded by a recent pre-connect
    trigger (within 10 seconds). There is a high chance that loading the page
    used a preconnected TCP session.
  </summary>
</histogram>

<histogram name="Net.PreconnectedNavigation" enum="PreconnectedNavigation">
  <owner>csharrison@chromium.org</owner>
  <obsolete>
    No longer tracked.
  </obsolete>
  <summary>
    Indicate whether a URLRequest was preceded by a recent pre-connect trigger
    (within 10 seconds). There is a high chance that loading the resource used a
    preconnected TCP session.
  </summary>
</histogram>

<histogram name="Net.PreconnectMotivation" enum="PreconnectMotivation">
  <owner>csharrison@chromium.org</owner>
  <summary>
    When a preconnection is made, indicate what the motivation was.
  </summary>
  <details>
    Currently, the most common (only?) motivations are SELF_REFERAL,
    LEARNED_REFERAL and OMNIBOX. The SELF_REFERAL indicates that we made sure a
    second connection was available for a resource that either was never before
    seen, or has historically had no subresources.  The LEARNED_REFERAL
    indicates that we &quot;learned&quot; that a subresource was commonly
    needed, and that motivated the TCP/IP preconnect. The OMNIBOX motivation
    happens when a search is being suggested, and we preconnect to the search
    provider. (WARNING: Prior to version 7.517.*, enums 7, 8, and 9 may be
    confused, as EARLY_LOAD_MOTIVATED was inserted new 6 value.)
  </details>
</histogram>

<histogram name="Net.PreconnectProxyStatus" enum="ProxyStatus">
  <owner>csharrison@chromium.org</owner>
  <obsolete>
    No longer tracked.
  </obsolete>
  <summary>
    Indicate whether there was a proxy to preclude preconnection.
  </summary>
</histogram>

<histogram name="Net.PreconnectSubresourceEval"
    enum="PreconnectSubresourceEval">
  <owner>csharrison@chromium.org</owner>
  <summary>
    What did we decide to do about a predicted resource, based on the historical
    expected number of connection that this subresource will require.
  </summary>
  <details>
    This is basically the current thresholding of the SubresourceExpectation,
    relative to current static thresholds, and taking into account whether
    preconnection is enabled (i.e., if preconnection is disabled, we'll never
    decide to preconnect).
  </details>
</histogram>

<histogram name="Net.PreconnectSubresourceExpectation">
  <owner>csharrison@chromium.org</owner>
  <summary>
    The expected number of connections, times 100, that we'll make to a given
    subresource, based on learned history.
  </summary>
  <details>
    By comparing this to thresholds, we decide if we will preconnect,
    preresolve, or do nothing. This histogram can be used to select those static
    thresholds.
  </details>
</histogram>

<histogram name="Net.PreconnectTriggerUsed" enum="PreconnectTriggerUsed">
  <owner>csharrison@chromium.org</owner>
  <obsolete>
    No longer tracked.
  </obsolete>
  <summary>
    Indicate whether if a preconnect trigger is followed by a resource request
    (from link navigations) to the host or not. This is to measure precision of
    link-based preconnect triggers.
  </summary>
</histogram>

<histogram name="Net.PreconnectUtilization" enum="NetPreconnectUtilization">
  <obsolete>
    Sourced data corrected, and replaced by NetPreconnectUtilization2
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Indicate final utilization for each attempted socket connection.
  </summary>
  <details>
    We also include stats for non-speculative sockets. Some socket connections
    may never connect, and others may never be used (as the user may abort
    before then).
  </details>
</histogram>

<histogram name="Net.PreconnectUtilization2" enum="NetPreconnectUtilization">
  <owner>csharrison@chromium.org</owner>
  <summary>
    Indicate final utilization for each attempted socket connection.
  </summary>
  <details>
    We also include stats for non-speculative sockets. Some socket connections
    may never connect, and others may never be used (as the user may abort
    before then).
  </details>
</histogram>

<histogram name="Net.Prefetch.HitBytes" units="bytes">
  <owner>jkarlin@chromium.org</owner>
  <summary>
    Bytes read for requests that were served from a cache entry whose
    unused_since_prefetch bit is true.
  </summary>
</histogram>

<histogram name="Net.Prefetch.Pattern" enum="PrefetchStatus">
  <owner>jkarlin@chromium.org</owner>
  <summary>
    The completion status of prefetches that have finished loading.
  </summary>
  <details>
    Measurement occurs at ResourceLoader::ResponseCompleted so requests canceled
    before that point are not registered.

    Note that &quot;success from cache&quot; means that the
    UrlRequest::was_cached() was true, and &quot;success from network&quot;
    means that was_cached() was false.  Validated results are considered cached,
    even though a conditional network request is made.
  </details>
</histogram>

<histogram name="Net.Prefetch.PrefilterBytesReadFromNetwork" units="bytes">
  <owner>jkarlin@chromium.org</owner>
  <summary>
    Number of bytes read from the network on behalf of prefetch requests.  This
    is prefilter, so before any decompression.
  </summary>
</histogram>

<histogram name="Net.Prefetch.TimeBeforeCancel" units="ms">
  <owner>jkarlin@chromium.org</owner>
  <summary>
    Time spent on prefetch requests before the request was canceled.
  </summary>
</histogram>

<histogram name="Net.Prefetch.TimeSpentOnPrefetchHit" units="ms">
  <owner>jkarlin@chromium.org</owner>
  <summary>
    Time spent on requests that were served from a cache entry whose
    unused_since_prefetch bit is true.
  </summary>
</histogram>

<histogram name="Net.Prefetch.TimeSpentPrefetchingFromCache" units="ms">
  <owner>jkarlin@chromium.org</owner>
  <summary>Time spent on prefetch requests when fetched from cache.</summary>
</histogram>

<histogram name="Net.Prefetch.TimeSpentPrefetchingFromNetwork" units="ms">
  <owner>jkarlin@chromium.org</owner>
  <summary>
    Time spent on prefetch requests when fetched from the network, including
    validation time.
  </summary>
</histogram>

<histogram name="Net.PrefProxyConfig.GooglezipProxyRemovalCount">
  <owner>sclittle@chromium.org</owner>
  <summary>
    Records how many *.googlezip.net Data Reduction Proxies were removed from
    the effective proxy configuration when a proxy reconfiguration occurs.
  </summary>
</histogram>

<histogram name="Net.Priority_High_Latency" units="ms">
  <obsolete>
    Replaced by Net.Priority_High_Latency_b.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Time from the start of the http transaction until the first byte of the
    response for high priority (currently frame and subframe) requests.  Only
    times under 10 minutes are recorded.
  </summary>
</histogram>

<histogram name="Net.Priority_High_Latency_b" units="ms">
  <obsolete>
    Deprecated as of 11/2014.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Time from the start of the http transaction until the first byte of the
    response for high priority (currently frame and subframe) requests.
  </summary>
</histogram>

<histogram name="Net.Priority_Low_Latency" units="ms">
  <obsolete>
    Replaced by Net.Priority_Low_Latency_b.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Time from the start of the http transaction until the first byte of the
    response for low priority (non-frame/subframe) requests.   Only times under
    10 minutes are recorded.
  </summary>
</histogram>

<histogram name="Net.Priority_Low_Latency_b" units="ms">
  <obsolete>
    Deprecated as of 11/2014.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Time from the start of the http transaction until the first byte of the
    response for low priority (non-frame/subframe) requests.
  </summary>
</histogram>

<histogram name="Net.ProxyAuthRequested.HasConnection">
  <owner>rch@chromium.org</owner>
  <summary>
    When a PROXY_AUTH_REQUESTED error code is handled in
    net::HttpStreamFactoryImpl::Job::RunLoop, this is true if connection_ has an
    associated value.
  </summary>
</histogram>

<histogram name="Net.ProxyPollConfigurationTime">
  <obsolete>
    Removed at some time before 2014/09/15.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The time in milliseconds spent fetch the system proxy configuration, when
    polling it for changes.
  </summary>
</histogram>

<histogram name="Net.ProxyResolver.AbandonedExecutionTotalTime" units="ms">
  <obsolete>
    Removed in Chrome 39.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The total amount of time that was spent executing the proxy script during
    &quot;tracing&quot; runs (executions of the script which discovered a new
    DNS dependency and were subsequently abandoned).
  </summary>
</histogram>

<histogram name="Net.ProxyResolver.BlockingDNSMode.AbandonedExecutionTotalTime"
    units="ms">
  <obsolete>
    Removed in Chrome 39.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The total amount of time that was spent executing the proxy script during
    &quot;tracing&quot; runs (executions of the script which discovered a new
    DNS dependency and were subsequently abandoned).
  </summary>
</histogram>

<histogram name="Net.ProxyResolver.BlockingDNSMode.DnsWaitTotalTime" units="ms">
  <obsolete>
    Removed in Chrome 39.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The total amount of time that was spent in the non-blocking DNS bindings
    while executing PAC scripts. This includes the times for abandoned
    executions.
  </summary>
</histogram>

<histogram name="Net.ProxyResolver.BlockingDNSMode.ExecutionTime" units="ms">
  <obsolete>
    Removed in Chrome 39.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The amount of time inside of V8 that the proxy script spent executing for
    the final pass. This includes the time spent in the javascript bindings.
    This does not include the time spent in abandoned execution passes.
  </summary>
</histogram>

<histogram name="Net.ProxyResolver.BlockingDNSMode.NumAlerts">
  <obsolete>
    Removed in Chrome 39.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The number of times that alert() was called in the final execution of the
    script.
  </summary>
</histogram>

<histogram name="Net.ProxyResolver.BlockingDNSMode.NumErrors">
  <obsolete>
    Removed in Chrome 39.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The number of errors that were seen in the final execution of the script.
  </summary>
</histogram>

<histogram name="Net.ProxyResolver.BlockingDNSMode.NumRestarts">
  <obsolete>
    Removed in Chrome 39.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The number of times that the PAC script execution was restarted.
  </summary>
</histogram>

<histogram name="Net.ProxyResolver.BlockingDNSMode.TotalTime" units="ms">
  <obsolete>
    Removed in Chrome 39.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The total time that the proxy resolution took. This includes all the time
    spent waiting for DNS, PAC script execution, and restarts.
  </summary>
</histogram>

<histogram name="Net.ProxyResolver.BlockingDNSMode.TotalTimeDNS" units="ms">
  <obsolete>
    Removed in Chrome 39.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The total time that proxy resolution spent waiting for DNS. This also
    includes any queuing delays on the origin thread waiting for the DNS result
    to be processed.
  </summary>
</histogram>

<histogram name="Net.ProxyResolver.BlockingDNSMode.UniqueDNS">
  <obsolete>
    Removed in Chrome 39.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The number of unique DNS hostnames that the PAC script tried to resolve. The
    *Ex() versions of the bindings count separately.
  </summary>
</histogram>

<histogram name="Net.ProxyResolver.DnsWaitTotalTime" units="ms">
  <obsolete>
    Removed in Chrome 39.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The total amount of time that was spent in the non-blocking DNS bindings
    while executing PAC scripts. This includes the times for abandoned
    executions.
  </summary>
</histogram>

<histogram name="Net.ProxyResolver.ExecutionTime" units="ms">
  <obsolete>
    Removed in Chrome 39.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The amount of time inside of V8 that the proxy script spent executing for
    the final pass. This includes the time spent in the javascript bindings
    (which is probably dominated by Net.ProxyResolver.DnsWaitTotalTime). This
    does not include the time spent in abandoned execution passes.
  </summary>
</histogram>

<histogram name="Net.ProxyResolver.NumAlerts">
  <obsolete>
    Removed in Chrome 39.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The number of times that alert() was called in the final execution of the
    script.
  </summary>
</histogram>

<histogram name="Net.ProxyResolver.NumErrors">
  <obsolete>
    Removed in Chrome 39.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The number of errors that were seen in the final execution of the script.
  </summary>
</histogram>

<histogram name="Net.ProxyResolver.NumRestarts">
  <obsolete>
    Removed in Chrome 39.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The number of times that the PAC script execution was restarted.
  </summary>
</histogram>

<histogram name="Net.ProxyResolver.OriginThreadLatency" units="ms">
  <obsolete>
    Removed in Chrome 39.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The amount of time it took upon completion to run the final task posted back
    to the IO thread.
  </summary>
</histogram>

<histogram name="Net.ProxyResolver.TotalTime" units="ms">
  <obsolete>
    Removed in Chrome 39.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The total time that the proxy resolution took. This includes all the time
    spent waiting for DNS, PAC script execution, and restarts.
  </summary>
</histogram>

<histogram name="Net.ProxyResolver.TotalTimeDNS" units="ms">
  <obsolete>
    Removed in Chrome 39.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The total time that proxy resolution spent waiting for DNS. This also
    includes any queuing delays on the origin thread waiting for the DNS result
    to be processed.
  </summary>
</histogram>

<histogram name="Net.ProxyResolver.TotalTimeWorkerThread" units="ms">
  <obsolete>
    Removed in Chrome 39.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The total time that the proxy resolution took, not including the post back
    to the origin thread. This includes all the time spent waiting for DNS, PAC
    script execution, and restarts.
  </summary>
</histogram>

<histogram name="Net.ProxyResolver.UniqueDNS">
  <obsolete>
    Removed in Chrome 39.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The number of unique DNS hostnames that the PAC script tried to resolve. The
    *Ex() versions of the bindings count separately.
  </summary>
</histogram>

<histogram name="Net.ProxyResolver.URLSize">
  <obsolete>
    Removed in Chrome 39.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>The length of the URL that was passed into the PAC script.</summary>
</histogram>

<histogram name="Net.ProxyScriptFetcher.FirstByteDuration" units="ms">
  <owner>cbentzel@chromium.org</owner>
  <summary>
    The time taken from requesting a PAC script to receiving the first byte, on
    successful fetches. This does not include time spent doing proxy
    auto-discovery, or failed attempts at retrieving PAC  scripts.
  </summary>
</histogram>

<histogram name="Net.ProxyScriptFetcher.SuccessDuration" units="ms">
  <owner>cbentzel@chromium.org</owner>
  <summary>
    The time taken to successfully fetch a PAC script. This does not include
    time spent doing proxy auto-discovery, or failed attempts at retrieving PAC
    scripts.
  </summary>
</histogram>

<histogram name="Net.ProxyService.GetProxyUsingScriptResult"
    enum="NetErrorCodes">
  <owner>eroman@chromium.org</owner>
  <summary>
    The network error code of resolving a URL by forwarding the request to the
    proxy resolver and executing the PAC script.
  </summary>
</histogram>

<histogram name="Net.ProxyService.GetProxyUsingScriptTime"
    units="100s of microseconds">
  <owner>eroman@chromium.org</owner>
  <summary>
    The time taken to resolve a URL by forwarding the request to the proxy
    resolver and executing the PAC script. This includes PAC script execution,
    DNS queries, and internal retries. This does not include retries initiated
    by the user, such as by calling ProxyService::ReconsiderProxyAfterError().
  </summary>
</histogram>

<histogram name="Net.ProxyService.ResolvedUsingScript" enum="Boolean">
  <owner>eroman@chromium.org</owner>
  <summary>
    Whether proxy resolution occured by forwarding the request to the proxy
    resolver and executing the PAC script. This histogram records all URLs,
    regardless of whether a proxy configuration is set. Note that in some cases,
    the system proxy resolver is used. If so, this histogram indicates whether
    the request was forwarded to the system resolver. However, on desktop
    platforms, the number of users using the system resolver should be small
    since the default is to use V8. Hence, the count of emissions to the 'True'
    bucket on desktop caused by users of the system resolver should be small.
  </summary>
</histogram>

<histogram name="Net.ProxyService.ResolveProxyTime"
    units="100s of microseconds">
  <owner>eroman@chromium.org</owner>
  <summary>
    The total time taken to resolve a URL. This includes PAC script execution,
    DNS queries, and internal retries. This does not include retries initiated
    by the user, such as by calling ProxyService::ReconsiderProxyAfterError().
  </summary>
</histogram>

<histogram name="Net.ProxyService.ScriptTerminated" enum="BooleanTerminated">
  <owner>eroman@chromium.org</owner>
  <summary>
    Whether a proxy resolution resulted in the PAC script terminating
    unexpectedly. This does not include terminations that occured during
    initialization of a new proxy resolver. This only happens when the resolver
    process crashes when using out-of-process PAC.
  </summary>
</histogram>

<histogram name="Net.ProxyService.ScriptTerminatedOnInit"
    enum="BooleanTerminated">
  <owner>eroman@chromium.org</owner>
  <summary>
    Whether the creation of a new proxy resolver resulted in the PAC script
    terminating unexpectedly. This only happens when the resolver process
    crashes when using out-of-process PAC.
  </summary>
</histogram>

<histogram name="Net.PublicKeyPinFailureDomain" enum="PublicKeyPinFailedDomain">
  <owner>agl@chromium.org</owner>
  <summary>
    Second-level domains for which we have observed public key pinning failures.
  </summary>
</histogram>

<histogram name="Net.PublicKeyPinReportSendingFailure" enum="NetErrorCodes">
  <owner>estark@chromium.org</owner>
  <summary>
    A validated certificate chain may be subject to additional pinning
    requirements on a per-domain basis. When pinning requirements are violated,
    Chrome attempts to send a report about the incident. This records the net
    error code when sending a pinning violation report fails.
  </summary>
</histogram>

<histogram name="Net.PublicKeyPinSuccess" enum="BooleanSuccess">
  <owner>agl@chromium.org</owner>
  <summary>
    A validated certificate chain may be subject to additional
    &quot;pinning&quot; requirements on a per-domain basis. This records the
    fraction of successful matches between a certificate chain and a pin list.
  </summary>
</histogram>

<histogram name="Net.QuicActiveSessions">
  <owner>rtenneti@chromium.org</owner>
  <summary>
    The number of active QUIC sessions before we activate a new QUIC session.
  </summary>
</histogram>

<histogram name="Net.QuicClientHelloRejectReasons" enum="QuicRejectReasons">
  <owner>rtenneti@chromium.org</owner>
  <summary>
    The reject reasons for QUIC's CHLO (client hello) message from server
  </summary>
</histogram>

<histogram name="Net.QuicClientHelloServerConfig.HowExpired" units="ms">
  <obsolete>
    Deprecated 08/2014, and replaced by
    Net.QuicClientHelloServerConfig.InvalidDuration.
  </obsolete>
  <owner>rtenneti@chromium.org</owner>
  <summary>
    How expired server config is for sending inchoate ClientHello to the server.
  </summary>
</histogram>

<histogram name="Net.QuicClientHelloServerConfig.InvalidDuration" units="ms">
  <owner>rtenneti@chromium.org</owner>
  <summary>
    The time since expiration of server config when we sent inchoate ClientHello
    to the server.
  </summary>
</histogram>

<histogram name="Net.QuicClientHelloServerConfigState"
    enum="QuicServerConfigState">
  <obsolete>
    Deprecated as of 11/2014. Replaced by Net.QuicInchoateClientHelloReason.
  </obsolete>
  <owner>rtenneti@chromium.org</owner>
  <summary>
    The reason (the state of the server config) for sending inchoate ClientHello
    to the server.
  </summary>
</histogram>

<histogram name="Net.QuicCloseConnection.NullVisitor" enum="BooleanNullVisitor">
  <owner>rtenneti@chromium.org</owner>
  <summary>
    The number of times Connection's visitor is a nullptr when CloseConnection
    is called.
  </summary>
</histogram>

<histogram name="Net.QuicCryptoClientConfig.PopulatedFromCanonicalConfig"
    enum="BooleanPopulated">
  <owner>rtenneti@chromium.org</owner>
  <summary>
    The number of times CryptoClientConfig's CachedState is populated from
    canonical config whenever we create a new CryptoClientConfig::CachedState.
  </summary>
</histogram>

<histogram name="Net.QuicDiskCache.APICall" enum="QuicDiskCacheAPICall">
  <owner>rtenneti@chromium.org</owner>
  <summary>
    Tracks number of times data read/parse/write API calls of QuicServerInfo to
    and from disk cache is called.
  </summary>
</histogram>

<histogram name="Net.QuicDiskCache.EntryState" enum="QuicDiskCacheEntryState">
  <owner>rtenneti@chromium.org</owner>
  <obsolete>
    Deprecated as of 10/2014.
  </obsolete>
  <summary>
    Tracks the opening and closing of disk cache entries. Recorded each time a
    disk cache entry is either opened or closed.
  </summary>
</histogram>

<histogram name="Net.QuicDiskCache.FailureReason"
    enum="QuicDiskCacheFailureReason">
  <owner>rtenneti@chromium.org</owner>
  <summary>
    Tracks failure reasons to read/load/write of QuicServerInfo to and from disk
    cache.
  </summary>
</histogram>

<histogram name="Net.QuicEphemeralPortsSuggested">
  <obsolete>
    Deprecated as of 04/2016.
  </obsolete>
  <owner>rch@chromium.org</owner>
  <summary>The number of ports suggested per server.</summary>
</histogram>

<histogram name="Net.QuicHandshakeNotConfirmedNumPacketsReceived">
  <owner>rch@chromium.org</owner>
  <summary>
    The number of QUIC packets received by a QUIC connection whose handshake was
    not confirmed when that connection is closed.
  </summary>
</histogram>

<histogram name="Net.QuicHandshakeState" enum="QuicHandshakeState">
  <owner>rch@chromium.org</owner>
  <summary>
    The state of a QUIC connection's crypto hanshake as it progresses from
    starting to confirmation or failure.
  </summary>
</histogram>

<histogram name="Net.QuicHpackCompressionPercentage" units="%">
  <owner>ckrasic@chromium.org</owner>
  <summary>
    The compression percentage, logged for each sent HPACK compressed header
    frame.
  </summary>
</histogram>

<histogram name="Net.QuicHpackDecompressionPercentage" units="%">
  <owner>ckrasic@chromium.org</owner>
  <summary>
    The decompression percentage, logged for each received HPACK compressed
    header frame.
  </summary>
</histogram>

<histogram name="Net.QuicInchoateClientHelloReason"
    enum="QuicServerConfigState">
  <owner>rtenneti@chromium.org</owner>
  <summary>
    The reason (the state of the server config) for sending inchoate ClientHello
    to the server.
  </summary>
</histogram>

<histogram name="Net.QuicNumSentClientHellos">
  <owner>rch@chromium.org</owner>
  <summary>The number of client hello messages sent.</summary>
</histogram>

<histogram name="Net.QuicNumSentClientHellosCryptoHandshakeConfirmed">
  <obsolete>
    see Net.QuicSession.Connect*PortForHTTP*
  </obsolete>
  <owner>rch@chromium.org</owner>
  <summary>
    The number of client hello messages sent when the crypto handshake was
    confirmed.
  </summary>
</histogram>

<histogram name="Net.QuicNumServerConfig.UpdateMessagesIgnored"
    enum="BooleanIgnored">
  <owner>rtenneti@chromium.org</owner>
  <summary>The number of times ServerConfigUpdateMessages ignored.</summary>
</histogram>

<histogram name="Net.QuicNumStreamFramesInPacket">
  <owner>rch@chromium.org</owner>
  <summary>
    The number of stream frames bundled within a received packet.
  </summary>
</histogram>

<histogram name="Net.QuicNumStreamFramesPerStreamInPacket">
  <owner>rch@chromium.org</owner>
  <summary>
    The number of stream frames per stream ID within a received packet.
  </summary>
</histogram>

<histogram name="Net.QuicReadAvailableData.NullStream" enum="BooleanNullStream">
  <owner>rtenneti@chromium.org</owner>
  <summary>
    The number of times QuicHttpStream's stream_ is a nullptr before
    IsDoneReading() is called.
  </summary>
</histogram>

<histogram name="Net.QuicServerInfo.DiskCacheLoadTime" units="ms">
  <owner>rtenneti@chromium.org</owner>
  <summary>Time spent to load QUIC server information from disk cache.</summary>
</histogram>

<histogram name="Net.QuicServerInfo.DiskCacheReadTime" units="ms">
  <obsolete>
    Deprecated as of 10/2014. Replaced by DiskCacheWaitForDataReadyTime.
  </obsolete>
  <owner>rch@chromium.org</owner>
  <summary>Time spent to load QUIC server information from disk cache.</summary>
</histogram>

<histogram name="Net.QuicServerInfo.DiskCacheState"
    enum="QuicServerConfigState">
  <owner>rtenneti@chromium.org</owner>
  <summary>
    The state of the QUIC server information when it's loaded from the disk
    cache.
  </summary>
</histogram>

<histogram name="Net.QuicServerInfo.DiskCacheWaitForDataReadyTime" units="ms">
  <owner>rtenneti@chromium.org</owner>
  <summary>
    Time spent waiting to load QUIC server information from disk cache.
  </summary>
</histogram>

<histogram name="Net.QuicServerInfo.ExpectConfigMissingFromDiskCache"
    enum="BooleanMissingFromDiskCache">
  <owner>rtenneti@chromium.org</owner>
  <summary>
    The number of times AlternateProtocolMap supports QUIC, but there is no QUIC
    server information in the disk cache. This is recorded whenever QUIC server
    information is loaded from the disk cache.
  </summary>
</histogram>

<histogram name="Net.QuicServerInfo.WaitForDataReady.HandshakeConfirmedTime"
    units="Milliseconds">
  <owner>rtenneti@chromium.org</owner>
  <summary>
    The elapsed time between waiting for reading of QUIC server information from
    disk cache, and receiving crypto handshake confirmation from the server.
    Will measure the impact of cancelling the WaitForDataReady callback. Logged
    after crypto handshake is confirmed.
  </summary>
</histogram>

<histogram name="Net.QuicServerInfo.WaitForDataReadyToRtt" units="%">
  <owner>rtenneti@chromium.org</owner>
  <summary>
    The ratio of the time spent waiting to load QUIC server information from
    disk cache to the min rtt. Logged when session is closed.
  </summary>
</histogram>

<histogram name="Net.QuicSession.21CumulativePacketsReceived"
    units="Received in Ranges">
  <owner>rch@chromium.org</owner>
  <summary>
    This histogram summarizes information about a 21 packet sequence, indicating
    for each of the 21 possible prefixes of this pattern, how many packets were
    received in that prefix.  The first range uses buckets 0 and 1, and it
    describes the 1st packet in the sequence.  It indicates if the first packet
    was missing (bucket 0), or the first packet was present (bucket 1).  The
    second range uses buckets 2 through 4, and describes the first 2 packets in
    the prefix of this sequence.  It indicates if there were no packets received
    in the first two packets (bucket 2), or there was one out of two packets
    received (bucket 3), or if there was two out of tow received (bucket 4).
    etc. etc.  Reading this histogram may require post-processing in a spread
    sheet, but can indicate the potential value of using FEC packets to convey
    data.
  </summary>
</histogram>

<histogram name="Net.QuicSession.6PacketsPatternsReceived"
    units="Binay of Packets ACKed">
  <owner>rch@chromium.org</owner>
  <summary>
    Each of the 64 buckets represents a different binary pattern of 6
    consecutive packets that were received by the client.  The LSB of the bucket
    number corresponds to the reception of the oldest packet.  A bit in the
    bucket-number being 1 indicates the packet was received, and a 0 means the
    packet was never received (by the client).
  </summary>
</histogram>

<histogram name="Net.QuicSession.AsyncRead" enum="Boolean">
  <owner>rch@chromium.org</owner>
  <summary>
    True if the result of reading a packet from the network was ERR_IO_PENDING.
    Recorded for each packet when Read() returns.
  </summary>
</histogram>

<histogram name="Net.QuicSession.BlockedFrames.Received">
  <owner>rtenneti@chromium.org</owner>
  <summary>
    The number of BLOCKED frames recevied by a QuicSession when the session is
    closed.
  </summary>
</histogram>

<histogram name="Net.QuicSession.BlockedFrames.Sent">
  <owner>rtenneti@chromium.org</owner>
  <summary>
    The number of BLOCKED frames sent by a QuicSession when the session is
    closed.
  </summary>
</histogram>

<histogram name="Net.QuicSession.ClientSideMtu" units="bytes">
  <owner>rch@chromium.org</owner>
  <summary>
    The final maximum packet size of the connection used by the client before
    the session is closed.
  </summary>
</histogram>

<histogram name="Net.QuicSession.CloseAllSessionsError" enum="NetErrorCodes">
  <owner>rch@chromium.org</owner>
  <summary>
    The network error code which resulted in all sessions being closed.
  </summary>
</histogram>

<histogram name="Net.QuicSession.ClosedDuringInitializeSession" enum="Boolean">
  <owner>rch@chromium.org</owner>
  <summary>
     True if the QUIC session is closed during the call to InitializeSession,
    logged for each session just after InitializeSession is called.
  </summary>
</histogram>

<histogram name="Net.QuicSession.CloseSessionOnError" enum="NetErrorCodes">
  <owner>rch@chromium.org</owner>
  <summary>
    The network error code which resulted in the session being closed.
  </summary>
</histogram>

<histogram name="Net.QuicSession.Connect" units="RTTs">
  <owner>rch@chromium.org</owner>
  <summary>
    Samples of the number of round-trips needed by a QUIC connection before a
    request could be sent by the client.
  </summary>
</histogram>

<histogram
    name="Net.QuicSession.ConnectionClose.HandshakeFailureBlackHole.QuicError"
    enum="QuicErrorCodes">
  <owner>rch@chromium.org</owner>
  <summary>
    The QUIC error which caused a QUIC connection to be closed before the
    hanshake was confirmed, in the case where no packets were received. This
    provides a breakdown of the entires in
    Net.QuicSession.ConnectionClose.HandshakeNotConfirmed.Reason where the value
    is BLACK_HOLE.
  </summary>
</histogram>

<histogram
    name="Net.QuicSession.ConnectionClose.HandshakeFailureUnknown.QuicError"
    enum="QuicErrorCodes">
  <owner>rch@chromium.org</owner>
  <summary>
    The QUIC error which caused a QUIC connection to be closed before the
    hanshake was confirmed, in the case where at least 1 packet was received.
    This provides a breakdown of the entires in
    Net.QuicSession.ConnectionClose.HandshakeNotConfirmed.Reason where the value
    is UNKNOWN.
  </summary>
</histogram>

<histogram name="Net.QuicSession.ConnectionClose.HandshakeNotConfirmed.Reason"
    enum="QuicHandshakeFailureReason">
  <owner>rch@chromium.org</owner>
  <summary>The reason a QUIC handshake failed.</summary>
</histogram>

<histogram
    name="Net.QuicSession.ConnectionClose.NumOpenStreams.HandshakeTimedOut">
  <owner>rch@chromium.org</owner>
  <summary>
    The number of streams open when a QUIC session crypto handshake timed out.
  </summary>
</histogram>

<histogram name="Net.QuicSession.ConnectionClose.NumOpenStreams.TimedOut">
  <owner>rch@chromium.org</owner>
  <summary>The number of streams open when a QUIC session timed out.</summary>
</histogram>

<histogram
    name="Net.QuicSession.ConnectionClose.NumTotalStreams.HandshakeTimedOut">
  <owner>rch@chromium.org</owner>
  <summary>
    The number of total streams created when a QUIC session crypto handshake
    timed out.
  </summary>
</histogram>

<histogram name="Net.QuicSession.ConnectionCloseErrorCode"
    enum="QuicErrorCodes">
  <owner>rch@chromium.org</owner>
  <summary>
    The QUIC error code which resulted in the connection being closed.
  </summary>
</histogram>

<histogram name="Net.QuicSession.ConnectionCloseErrorCodeClient"
    enum="QuicErrorCodes">
  <owner>rch@chromium.org</owner>
  <summary>
    The QUIC error code which resulted in the connection being closed by the
    client.
  </summary>
</histogram>

<histogram name="Net.QuicSession.ConnectionCloseErrorCodeServer"
    enum="QuicErrorCodes">
  <owner>rch@chromium.org</owner>
  <summary>
    The QUIC error code which resulted in the connection being closed by the
    server.
  </summary>
</histogram>

<histogram name="Net.QuicSession.ConnectionFlowControlBlocked"
    enum="BooleanBlocked">
  <owner>rtenneti@chromium.org</owner>
  <summary>
    Whether QUIC session's connection is flow control blocked when a PING
    message is sent to server.
  </summary>
</histogram>

<histogram name="Net.QuicSession.ConnectionMigration"
    enum="QuicConnectionMigrationStatus">
  <owner>jri@chromium.org</owner>
  <summary>The result of a QUIC connection migration attempt.</summary>
</histogram>

<histogram name="Net.QuicSession.ConnectionTypeFromPeer" enum="AddressFamily">
  <owner>rch@chromium.org</owner>
  <summary>
    The IP Address family of this connection, as reported by the server.
  </summary>
</histogram>

<histogram name="Net.QuicSession.ConnectionTypeFromSelf" enum="AddressFamily">
  <owner>rch@chromium.org</owner>
  <summary>The IP Address family of this connection, as seen locally.</summary>
</histogram>

<histogram name="Net.QuicSession.ConnectRandomPortRequiringConfirmation"
    units="RTTs">
  <owner>jri@chromium.org</owner>
  <summary>
    Samples of the number of round-trips needed by a QUIC connection before a
    request could be sent by the client, when handshake confirmation was
    required. (The operating system randomly selected a source port for the
    connection.)
  </summary>
</histogram>

<histogram name="Net.QuicSession.CookieSentToAccountsOverChannelId"
    enum="BooleanUsage">
  <owner>rch@chromium.org</owner>
  <summary>
    Logs whether channel ID was used when a cookie is sent over QUIC to
    https://accounts.google.com.
  </summary>
</histogram>

<histogram name="Net.QuicSession.CreationError" enum="QuicSessionErrorCodes">
  <owner>jar@chromium.org</owner>
  <owner>rch@chromium.org</owner>
  <summary>
    Count of errors during attempts to create a QUIC session (before even using
    the session).
  </summary>
</histogram>

<histogram name="Net.QuicSession.DuplicatePacketsReceived">
  <owner>rch@chromium.org</owner>
  <summary>
    The number of duplicate packets recevied by a QuicSession when the session
    is closed.
  </summary>
</histogram>

<histogram name="Net.QuicSession.FinalTcpCwnd">
  <owner>rch@chromium.org</owner>
  <summary>
    The value of the TCP cubic sender's CWND when the session is closed.
  </summary>
</histogram>

<histogram name="Net.QuicSession.GoAwayReceivedForConnectionMigration"
    enum="BooleanReceived">
  <owner>zhongyi@chromium.org</owner>
  <summary>
    Whether QuicGoAwayFrame is received from server for connection migration due
    to client's port change. Logged when a QuicGoAwayFrame with error code
    QUIC_ERROR_MIGRATING_PORT is received.
  </summary>
</histogram>

<histogram name="Net.QuicSession.HandshakeConfirmedTime" units="Milliseconds">
  <owner>rch@chromium.org</owner>
  <summary>
    The elapsed time between starting the crypto handshake, and receiving
    confirmation from the server.
  </summary>
</histogram>

<histogram name="Net.QuicSession.HandshakeRoundTrips" units="RTTs">
  <obsolete>
    see Net.QuicSession.Connect*PortForHTTP*
  </obsolete>
  <owner>rch@chromium.org</owner>
  <summary>
    Samples of the number of round-trips needed by a QUIC connection before a
    request could be sent by the client.
  </summary>
</histogram>

<histogram name="Net.QuicSession.HeadersHOLBlockedTime" units="Milliseconds">
  <owner>ckrasic@chromium.org</owner>
  <summary>
    The elapsed time that headers are head of line blocked on others, presumably
    due to lost headers stream packets.
  </summary>
</histogram>

<histogram name="Net.QuicSession.HeadersStream.EarlyFramesReceived">
  <owner>rch@chromium.org</owner>
  <summary>
    The frames received on the headers stream which arrived early.
  </summary>
</histogram>

<histogram name="Net.QuicSession.HostResolution.HandshakeConfirmedTime"
    units="Milliseconds">
  <owner>rtenneti@chromium.org</owner>
  <summary>
    The elapsed time between the end of resolving the DNS name of the server for
    a QUIC connection, and receiving crypto handshake confirmation from the
    server. Logged after crypto handshake is confirmed.
  </summary>
</histogram>

<histogram name="Net.QuicSession.HostResolutionTime" units="ms">
  <owner>rch@chromium.org</owner>
  <summary>
    Time spent resolving the DNS name of the server for a QUIC connection.
  </summary>
</histogram>

<histogram name="Net.QuicSession.IncorrectConnectionIDsReceived">
  <owner>rch@chromium.org</owner>
  <summary>
    The number packets recevied by a QuicSession with an incorrect connection id
    when the sesesion is closed.
  </summary>
</histogram>

<histogram
    name="Net.QuicSession.LocallyTimedOutWithOpenStreams.TimeSinceLastReceived">
  <owner>rch@chromium.org</owner>
  <summary>
    If a QUIC connection timed out locally with open streams, this contains the
    time since any data was read from the network until the connection was
    closed. The suffix specifies whether there were any unacked packets pending
    when the connection timed out.
  </summary>
</histogram>

<histogram name="Net.QuicSession.MaxReordering">
  <owner>rch@chromium.org</owner>
  <summary>
    The maximum packet sequence number reordering observed by a QUIC connection.
  </summary>
</histogram>

<histogram name="Net.QuicSession.MaxReorderingTime" units="%">
  <owner>rch@chromium.org</owner>
  <summary>
    The ratio of the maximum reordering time of a QUIC packet to the min rtt.
  </summary>
</histogram>

<histogram name="Net.QuicSession.MaxReorderingTimeLongRtt" units="%">
  <owner>rch@chromium.org</owner>
  <summary>
    The ratio of the maximum reordering time of a QUIC packet to the min rtt,
    only for those sessions with a min rtt larger than 100 ms.
  </summary>
</histogram>

<histogram name="Net.QuicSession.MtuProbesSent">
  <owner>rch@chromium.org</owner>
  <summary>
    The number of MTU probes sent by the client during the session.  Logged when
    the connection is destroyed.
  </summary>
</histogram>

<histogram name="Net.QuicSession.NumOpenStreams">
  <owner>rch@chromium.org</owner>
  <summary>
    The number of QUIC streams opened when a new QUIC stream is created.
  </summary>
</histogram>

<histogram name="Net.QuicSession.NumTotalStreams">
  <owner>rch@chromium.org</owner>
  <summary>
    The total number of streams created by the client when the session is
    closed.
  </summary>
</histogram>

<histogram name="Net.QuicSession.OutOfOrderGapReceived">
  <owner>rch@chromium.org</owner>
  <summary>
    The number of missing packets between the current received packet and the
    previously largest received packet sequence number, when the current
    received packet had a lower sequence number than the previously received
    packet sequence number.
  </summary>
</histogram>

<histogram name="Net.QuicSession.OutOfOrderLargePacketsReceived">
  <owner>rch@chromium.org</owner>
  <summary>
    The number of times the current received packet had a lower sequence number
    than the previously received packet sequence number, and the size of the
    current packet is larger than the size of the previous packet.
  </summary>
</histogram>

<histogram name="Net.QuicSession.OutOfOrderPacketsReceived">
  <owner>rch@chromium.org</owner>
  <summary>
    The number of times the current received packet had a lower sequence number
    than the previously received packet sequence number.
  </summary>
</histogram>

<histogram name="Net.QuicSession.PacketGapReceived">
  <owner>rch@chromium.org</owner>
  <summary>
    The number of missing packets between the current received packet and the
    previously largest received packet sequence number.
  </summary>
</histogram>

<histogram name="Net.QuicSession.PacketGapSent">
  <owner>rch@chromium.org</owner>
  <summary>
    The number of missing packets between the current received packet and the
    previously largest received packet sequence number, as reported by the
    remote end of the connection.
  </summary>
</histogram>

<histogram name="Net.QuicSession.PacketLossRate" units="1/10th Percent">
  <owner>rch@chromium.org</owner>
  <summary>
    The ratio of the number of missing packets, to the maximum packet sequence
    number received,  for QUIC connections longer than 21 packets received via
  </summary>
</histogram>

<histogram name="Net.QuicSession.PacketReceived" units="SequenceNumber">
  <owner>rch@chromium.org</owner>
  <summary>
    Each bucket corresponds to a specific packet sequence number that was sent
    by a server to Chrome at the start of a QUIC connection. This histogram is
    compared, bucket by bucket, with a second histogram to compute the ratio for
    each bucket (each packet sequence number).
  </summary>
</histogram>

<histogram name="Net.QuicSession.PacketWriteTime">
  <owner>rch@chromium.org</owner>
  <summary>
    The time taken to Write() a QUIC packet to the socket. Recorded for each
    packet when it is sent. The suffix specifies if the write completed
    synchonously or asynchronously.
  </summary>
</histogram>

<histogram name="Net.QuicSession.PreferAesGcm" enum="BooleanPreferred">
  <owner>rch@chromium.org</owner>
  <summary>
    True if the QUIC session prefers to use AES GCM because of hardware support.
  </summary>
</histogram>

<histogram name="Net.QuicSession.PublicResetAddressMismatch"
    enum="QuicAddressMismatch">
  <owner>wtc@chromium.org</owner>
  <summary>
    When a public reset packet is received, whether the client IP address and
    port number in it differ from the client IP address and port number in the
    ServerHello handshake message. In the comparison, the first address is the
    one in ServerHello and the second address is the one in public reset. Note:
    this histogram is obsolete because it failed to treat IPv4-mapped IPv6
    addresses as IPv4 addresses.
  </summary>
</histogram>

<histogram name="Net.QuicSession.PublicResetAddressMismatch2"
    enum="QuicAddressMismatch">
  <owner>wtc@chromium.org</owner>
  <summary>
    When a public reset packet is received, whether the client IP address and
    port number in it differ from the client IP address and port number in the
    ServerHello handshake message. In the comparison, the first address is the
    one in ServerHello and the second address is the one in public reset.
  </summary>
</histogram>

<histogram name="Net.QuicSession.Pushed" units="count">
  <owner>ckrasic@chromium.org</owner>
  <summary>
    The number of push streams received when the session is closed.
  </summary>
</histogram>

<histogram name="Net.QuicSession.PushedAndClaimed" units="count">
  <owner>ckrasic@chromium.org</owner>
  <summary>
    The number of pushed and used streams when the session is closed.
  </summary>
</histogram>

<histogram name="Net.QuicSession.QuicVersion">
  <owner>rch@chromium.org</owner>
  <summary>Version of the QUIC protocol used for this connection.</summary>
</histogram>

<histogram name="Net.QuicSession.ReadError" enum="NetErrorCodes">
  <owner>rch@chromium.org</owner>
  <summary>
    The network error code returned when attempting to read to a QUIC
    connection.
  </summary>
</histogram>

<histogram name="Net.QuicSession.RejectLength">
  <owner>rch@chromium.org</owner>
  <summary>
    The length in bytes of a QUIC REJ message received from the server.
  </summary>
</histogram>

<histogram name="Net.QuicSession.RstStreamErrorCodeClient"
    enum="QuicRstStreamErrorCodes">
  <owner>rch@chromium.org</owner>
  <summary>
    The QUIC error code which resulted in a stream being reset by the client.
  </summary>
</histogram>

<histogram name="Net.QuicSession.RstStreamErrorCodeServer"
    enum="QuicRstStreamErrorCodes">
  <owner>rch@chromium.org</owner>
  <summary>
    The QUIC error code which resulted in a stream being reset by the server.
  </summary>
</histogram>

<histogram name="Net.QuicSession.SecureResourceSecureSession">
  <owner>rch@chromium.org.</owner>
  <summary>
    The number of request for secure resources over QUIC sessions. True if the
    session is secure, false if it is not.
  </summary>
</histogram>

<histogram name="Net.QuicSession.ServerSideMtu" units="bytes">
  <owner>rch@chromium.org</owner>
  <summary>
    The largest packet which the client received from the server during the
    session.
  </summary>
</histogram>

<histogram name="Net.QuicSession.StreamCloseErrorCodeClient.HandshakeConfirmed"
    enum="QuicErrorCodes">
  <owner>rch@chromium.org</owner>
  <summary>
    The QUIC error code which resulted in the stream (and connection) being
    closed by the client after the handshake was confirmed.
  </summary>
</histogram>

<histogram name="Net.QuicSession.StreamCloseErrorCodeServer.HandshakeConfirmed"
    enum="QuicErrorCodes">
  <owner>rch@chromium.org</owner>
  <summary>
    The QUIC error code which resulted in the stream (and connection) being
    closed by the client after the handshake was confirmed.
  </summary>
</histogram>

<histogram name="Net.QuicSession.StreamFlowControlBlocked"
    enum="BooleanBlocked">
  <owner>rtenneti@chromium.org</owner>
  <summary>
    Whether any of QUIC session's streams are flow control blocked when a PING
    message is sent to server.
  </summary>
</histogram>

<histogram name="Net.QuicSession.StreamFrameDuplicatedLongConnection"
    units="1/10th Percent">
  <owner>rch@chromium.org</owner>
  <summary>
    The number of stream frames received which were duplicates, out of every
    1000 stream frames received. Only for QUIC sessions which received at least
    100 packets.
  </summary>
</histogram>

<histogram name="Net.QuicSession.StreamFrameDuplicatedPercentLongConnection">
  <owner>rch@chromium.org</owner>
  <summary>
    The percentage of stream frames received which were duplicates. Only for
    QUIC sessions which received at least 100 packets.
  </summary>
</histogram>

<histogram name="Net.QuicSession.StreamFrameDuplicatedPercentShortConnection">
  <owner>rch@chromium.org</owner>
  <summary>
    The percentage of stream frames received which were duplicates. Only for
    QUIC sessions which received fewer than 100 packets.
  </summary>
</histogram>

<histogram name="Net.QuicSession.StreamFrameDuplicatedShortConnection"
    units="1/10th Percent">
  <owner>rch@chromium.org</owner>
  <summary>
    The number of stream frames received which were duplicates, out of every
    1000 stream frames received. Only for QUIC sessions which received fewer
    than 100 packets.
  </summary>
</histogram>

<histogram name="Net.QuicSession.TimedOutWithOpenStreams.ConsecutiveRTOCount">
  <owner>rch@chromium.org</owner>
  <summary>
    If a QUIC connection timed out with open streams, this contains a count of
    consecutive RTOs.
  </summary>
</histogram>

<histogram name="Net.QuicSession.TimedOutWithOpenStreams.ConsecutiveTLPCount">
  <owner>rch@chromium.org</owner>
  <summary>
    If a QUIC connection timed out with open streams, this contains a count of
    consecutive TLPs.
  </summary>
</histogram>

<histogram name="Net.QuicSession.TimedOutWithOpenStreams.HasUnackedPackets">
  <owner>rch@chromium.org</owner>
  <summary>
    If a QUIC connection timed out with open streams, this will be true when the
    connection has unacked packets.
  </summary>
</histogram>

<histogram name="Net.QuicSession.TooManyOpenStream" enum="BooleanTooMany">
  <owner>rch@chromium.org</owner>
  <obsolete>
    Deprecated 04/2015. Tracked as Net.QuicSession.TooManyOpenStreams.
  </obsolete>
  <summary>
    True if more than 100 streams are open when a new stream is activated.
  </summary>
</histogram>

<histogram name="Net.QuicSession.TooManyOpenStreams" enum="BooleanTooMany">
  <owner>rch@chromium.org</owner>
  <summary>
    True if more than 100 streams are open when a new stream is activated.
  </summary>
</histogram>

<histogram name="Net.QuicSession.TruncatedAcksReceived">
  <owner>rch@chromium.org</owner>
  <summary>The number of truncated ACK frames received.</summary>
</histogram>

<histogram name="Net.QuicSession.TruncatedAcksSent">
  <owner>rch@chromium.org</owner>
  <summary>The number of truncated ACK frames sent.</summary>
</histogram>

<histogram name="Net.QuicSession.UndecryptablePacketsReceived">
  <owner>rch@chromium.org</owner>
  <summary>
    The number of undecryptable packets recevied by a QuicSession when the
    sesesion is closed.
  </summary>
</histogram>

<histogram name="Net.QuicSession.UnexpectedNotGoingAway"
    enum="QuicSessionLocations">
  <owner>rch@chromium.org</owner>
  <summary>
    The location in quic_client_session.cc where a session is unexpectedly not
    going away.
  </summary>
</histogram>

<histogram name="Net.QuicSession.UnexpectedObservers"
    enum="QuicSessionLocations">
  <owner>rch@chromium.org</owner>
  <summary>
    The location in quic_client_session.cc where there were unexpected
    observers.
  </summary>
</histogram>

<histogram name="Net.QuicSession.UnexpectedOpenStreams"
    enum="QuicSessionLocations">
  <owner>rch@chromium.org</owner>
  <summary>
    The location in quic_client_session.cc where there were unexpected open
    streams.
  </summary>
</histogram>

<histogram name="Net.QuicSession.VerifyProofTime" units="ms">
  <owner>rtenneti@chromium.org</owner>
  <summary>
    Time spent verifying the signature and certificate chain. This is logged
    whenever QUIC verifies the certificate chain and signature during crypto
    handshake.
  </summary>
</histogram>

<histogram name="Net.QuicSession.WriteError" enum="NetErrorCodes">
  <owner>rch@chromium.org</owner>
  <summary>
    The network error code returned when attempting to write to a QUIC
    connection.
  </summary>
</histogram>

<histogram name="Net.QuicStreamFactory.BadPacketLossEvents5"
    enum="QuicBadPacketLossEvents">
  <owner>rtenneti@chromium.org</owner>
  <summary>
    A count of how often a user hits 1, 2, 3, 4 and 5 bad packet loss events for
    port 443. Recorded whenever QUIC has bad packet loss (high packet loss on
    multiple consecutive connections).
  </summary>
</histogram>

<histogram name="Net.QuicStreamFactory.DisabledReasons"
    enum="QuicDisabledReason">
  <owner>ckrasic@chromium.org</owner>
  <summary>
    Rrecords reasons QUIC is disabled (for all ports), if sufficent recent
    connections experience: public reset post crypto handshake, or timeouts with
    streams open. QUIC is disabled until the next reboot of Chrome. Logged
    during session close.
  </summary>
</histogram>

<histogram name="Net.QuicStreamFactory.PublicResetsPostHandshake"
    units="resets">
  <owner>ckrasic@chromium.org</owner>
  <summary>
    Captures the maximum number of public resets post handshake that occurred
    within a window of recent connections (default 20). Will help inform the
    choice of threshold to disable QUIC for clients that experience pathalogical
    errors. Logged during session close.
  </summary>
</histogram>

<histogram name="Net.QuicStreamFactory.QuicIsDisabled" enum="Ports">
  <owner>rtenneti@chromium.org</owner>
  <summary>
    Recorded whenever QUIC is disabled for a port due to repeated lossy
    connections (high packet loss on multiple consecutive connections). QUIC is
    disabled until next reboot of Chrome.
  </summary>
</histogram>

<histogram name="Net.QuicStreamFactory.TimeoutsWithOpenStreams"
    units="timeouts">
  <owner>ckrasic@chromium.org</owner>
  <summary>
    Captures the maximum number of connection timeouts with streams open that
    occurred within a window of recent connections (default 20). Will help
    inform the choice of threshold to disable QUIC for clients that experience
    pathalogical errors. Logged during session close.
  </summary>
</histogram>

<histogram name="Net.QuicStreamFactory.TSVIPCliIsLoaded" enum="Boolean">
  <owner>rtenneti@chromium.org</owner>
  <summary>
    Whether TSVIPCli DLL is loaded or not on windows when the socket is
    configured.
  </summary>
</histogram>

<histogram name="Net.QuicTimeBetweenTwoPacketSent" units="ms">
  <owner>zhongyi@chromium.org</owner>
  <summary>
    Time duration from last packet sent to a new packet sent in QUIC connection.
  </summary>
</histogram>

<histogram name="Net.QuicVerifyProofFailed.HandshakeConfirmed"
    enum="BooleanHandshakeConfirmed">
  <owner>rtenneti@chromium.org</owner>
  <summary>
    Logged whenever proof verification fails and if the failure occurred before
    or after the crypto handshake is confirmed.
  </summary>
</histogram>

<histogram name="Net.RenegotiationExtensionSupported">
  <obsolete>
    Deprecated 03/2015. No longer tracked.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    True if the HTTP request was sent to a server which supports the TLS
    renegotiation extension.
  </summary>
</histogram>

<histogram name="Net.RequestTime">
  <owner>rdsmith@chromium.org</owner>
  <obsolete>
    Replaced by Net.RequestTime2 due to bug in original implementation.
  </obsolete>
  <summary>
    The amount of time between request initiation and request completion for
    success and various different errors.
  </summary>
</histogram>

<histogram name="Net.RequestTime2">
  <owner>rdsmith@chromium.org</owner>
  <summary>
    The amount of time between request initiation and request completion for
    success and various different errors.
  </summary>
</histogram>

<histogram name="Net.RequestTime2.ErrAborted.HttpScheme" units="ms">
  <owner>csharrison@chromium.org</owner>
  <summary>
    The amount of time between request initiation and request completion for
    ERR_ABORTED when the request's scheme is http/s.
  </summary>
</histogram>

<histogram name="Net.RequestTime2.ErrAborted.NetworkContent" units="ms">
  <owner>csharrison@chromium.org</owner>
  <summary>
    The amount of time between request initiation and request completion for
    ERR_ABORTED when the requests TotalReceivedBytes() &gt; 0.
  </summary>
</histogram>

<histogram name="Net.RequestTime2.ErrAborted.NoBytesRead" units="ms">
  <owner>csharrison@chromium.org</owner>
  <summary>
    The amount of time between request initiation and request completion for
    ERR_ABORTED when the requests TotalReceivedBytes() = 0 and
    received_response_content_length() = 0.
  </summary>
</histogram>

<histogram name="Net.RequestTime2.ErrAborted.NoNetworkContent.CachedContent"
    units="ms">
  <owner>csharrison@chromium.org</owner>
  <summary>
    The amount of time between request initiation and request completion for
    ERR_ABORTED when the requests TotalReceivedBytes() = 0 and
    received_response_content_length() &gt; 0.
  </summary>
</histogram>

<histogram name="Net.RequestTime2.ErrAborted.NonHttpScheme" units="ms">
  <owner>csharrison@chromium.org</owner>
  <summary>
    The amount of time between request initiation and request completion for
    ERR_ABORTED when the request's scheme is not http/s.
  </summary>
</histogram>

<histogram name="Net.ResourceLoader.InliningStatus"
    enum="ResourceLoaderInliningStatus">
  <owner>tzik@chromium.org</owner>
  <summary>
    Counts whether the chunk inlining is applicable or not to a resource
    loading. Counts the reason if inapplicable.
  </summary>
</histogram>

<histogram name="Net.ResourceLoader.ReadDeferral" units="ms">
  <owner>clamy@chromium.org</owner>
  <summary>
    When starting a cross-site navigation, the time between reading the headers
    and body of the response.
  </summary>
</histogram>

<histogram name="Net.ResourceLoader.ResponseStartToEnd" units="microseconds">
  <owner>tzik@chromium.org</owner>
  <summary>
    Time from the start to the end of receiving a response body. Recorded for
    each resource load.
  </summary>
</histogram>

<histogram name="Net.ResponseSizeByProcess.Browser" units="KB">
  <owner>juliatuttle@chromium.org</owner>
  <summary>
    Count of (post-SSL/proxy, pre-filter) kilobytes received per request made by
    the browser process.
  </summary>
</histogram>

<histogram name="Net.ResponseSizeByProcess.Renderer" units="KB">
  <owner>juliatuttle@chromium.org</owner>
  <summary>
    Count of (post-SSL/proxy, pre-filter) kilobytes received per request made by
    a renderer process.
  </summary>
</histogram>

<histogram name="Net.ResponseSizeByProcess.Unknown" units="KB">
  <owner>juliatuttle@chromium.org</owner>
  <summary>
    Count of (post-SSL/proxy, pre-filter) kilobytes received per request made by
    a process not covered by one of the other ResponseSizeByProcess histograms.
  </summary>
</histogram>

<histogram name="Net.SocketIdleTimeBeforeNextUse_ReusedSocket">
  <obsolete>
    Deprecated as of 03/2015.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>The time an already used socket sat idle before being used.</summary>
</histogram>

<histogram name="Net.SocketIdleTimeBeforeNextUse_UnusedSocket">
  <obsolete>
    Deprecated as of 03/2015.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The time an unused socket (all HTTP sockets, regardless of any proxy used)
    sat idle before being used.
  </summary>
</histogram>

<histogram name="Net.SocketIdleTimeOnIOError2_ReusedSocket">
  <obsolete>
    Deprecated 04/2016 as doesn't have data nor owner.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The time a previously used socket sat idle before encountering a recoverable
    socket IO error (connection abort/reset/close).
  </summary>
</histogram>

<histogram name="Net.SocketIdleTimeOnIOError2_UnusedSocket">
  <obsolete>
    Deprecated 04/2016 as doesn't have data nor owner.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The time an unused socket sat idle before encountering a recoverable socket
    IO error (connection abort/reset/close).
  </summary>
</histogram>

<histogram name="Net.SocketInitErrorCodes" enum="NetErrorCodes">
  <obsolete>
    Deprecated as of 03/2015.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Net error codes that socket initializations end with, including net::OK and
    net::ERR_ABORTED.
  </summary>
</histogram>

<histogram name="Net.SocketReceiveBufferUnchangeable" units="Bytes">
  <obsolete>
    Replaced by Net.SocketUnchangeableReceiveBuffer 3/31/2014.
  </obsolete>
  <owner>jar@chromium.org</owner>
  <summary>
    The size of a socket's receive buffer when the attempt to change it via
    setsockopt failed.
  </summary>
</histogram>

<histogram name="Net.SocketRequestTime">
  <obsolete>
    Deprecated as of 03/2015.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Time in milliseconds from initial RequestSocket() call until successfully
    acquiring a connected socket.
  </summary>
</histogram>

<histogram name="Net.SocketStream.ConnectionEstablish" units="ms">
  <obsolete>
    Deprecated 2014-10-28. No longer generated. No direct replacement.
  </obsolete>
  <owner>yhirano@chromium.org</owner>
  <owner>ricea@chromium.org</owner>
  <owner>tyoshino@chromium.org</owner>
  <summary>The time from the connection start to connection establish.</summary>
</histogram>

<histogram name="Net.SocketStream.ConnectionLatency" units="ms">
  <obsolete>
    Deprecated 2014-10-28. No longer generated. No direct replacement.
  </obsolete>
  <owner>yhirano@chromium.org</owner>
  <owner>ricea@chromium.org</owner>
  <owner>tyoshino@chromium.org</owner>
  <summary>The time waiting to be ready to start connecting.</summary>
</histogram>

<histogram name="Net.SocketStream.ConnectionType"
    enum="SocketStreamConnectionType">
  <obsolete>
    Deprecated 2014-10-28. No longer generated. No direct replacement.
  </obsolete>
  <owner>yhirano@chromium.org</owner>
  <owner>ricea@chromium.org</owner>
  <owner>tyoshino@chromium.org</owner>
  <summary>
    Each bucket is the number of connection type of socket stream.
  </summary>
</histogram>

<histogram name="Net.SocketStream.Duration" units="ms">
  <obsolete>
    Deprecated 2014-10-28. No longer generated. Replaced by
    Net.WebSocket.Duration.
  </obsolete>
  <owner>yhirano@chromium.org</owner>
  <owner>ricea@chromium.org</owner>
  <owner>tyoshino@chromium.org</owner>
  <summary>The time a socket stream was open.</summary>
</histogram>

<histogram name="Net.SocketStream.ProtocolType" enum="SocketStreamProtocolType">
  <obsolete>
    Deprecated 2014-10-28. No longer generated. No direct replacement.
  </obsolete>
  <owner>yhirano@chromium.org</owner>
  <owner>ricea@chromium.org</owner>
  <owner>tyoshino@chromium.org</owner>
  <summary>
    Each bucket is the number of protocol type on socket stream.
  </summary>
</histogram>

<histogram name="Net.SocketStream.ReceivedBytes" units="bytes">
  <obsolete>
    Deprecated 2014-10-28. No longer generated. No direct replacement.
  </obsolete>
  <owner>yhirano@chromium.org</owner>
  <owner>ricea@chromium.org</owner>
  <owner>tyoshino@chromium.org</owner>
  <summary>Number of bytes on a socket stream.</summary>
</histogram>

<histogram name="Net.SocketStream.ReceivedCounts">
  <obsolete>
    Deprecated 2014-10-28. No longer generated. No direct replacement.
  </obsolete>
  <owner>yhirano@chromium.org</owner>
  <owner>ricea@chromium.org</owner>
  <owner>tyoshino@chromium.org</owner>
  <summary>Number of reads on a socket stream.</summary>
</histogram>

<histogram name="Net.SocketStream.SentBytes" units="bytes">
  <obsolete>
    Deprecated 2014-10-28. No longer generated. No direct replacement.
  </obsolete>
  <owner>yhirano@chromium.org</owner>
  <owner>ricea@chromium.org</owner>
  <owner>tyoshino@chromium.org</owner>
  <summary>Number of bytes on a socket stream.</summary>
</histogram>

<histogram name="Net.SocketStream.SentCounts">
  <obsolete>
    Deprecated 2014-10-28. No longer generated. No direct replacement.
  </obsolete>
  <owner>yhirano@chromium.org</owner>
  <owner>ricea@chromium.org</owner>
  <owner>tyoshino@chromium.org</owner>
  <summary>Number of Write on a socket stream.</summary>
</histogram>

<histogram name="Net.SocketType" enum="HttpSocketType">
  <obsolete>
    Deprecated as of 03/2015.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The counts of the type of sockets returned by the socket pools.
  </summary>
</histogram>

<histogram name="Net.SocketUnchangeableReceiveBuffer" units="Bytes">
  <owner>jar@chromium.org</owner>
  <summary>
    The size of a socket's receive buffer when the attempt to change it via
    setsockopt failed.
  </summary>
</histogram>

<histogram name="Net.SocketUnchangeableSendBuffer" units="Bytes">
  <owner>jar@chromium.org</owner>
  <summary>
    The size of a socket's send buffer when the attempt to change it via
    setsockopt failed.
  </summary>
</histogram>

<histogram name="Net.SOCKSSocketIdleTimeBeforeNextUse_ReusedSocket">
  <obsolete>
    see SocketIdleTimeBeforeNextUse_ReusedSocket_SOCK
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The time an already used SOCKS socket sat idle before being used.
  </summary>
</histogram>

<histogram name="Net.SOCKSSocketIdleTimeBeforeNextUse_UnusedSocket">
  <obsolete>
    see SocketIdleTimeBeforeNextUse_UnusedSocket_SOCK
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>The time an unused SOCKS socket sat idle before being used.</summary>
</histogram>

<histogram name="Net.SOCKSSocketRequestTime" units="ms">
  <obsolete>
    see SocketRequestTime_SOCK
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Time from initial SOCKSClientSocketPool::RequestSocket() call until
    successfully acquiring a connected SOCKS socket.
  </summary>
</histogram>

<histogram name="Net.SocksSocketRequestTime">
  <obsolete>
    Deprecated 04/2016 as doesn't have data nor owner.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>Time it takes to request a new (unused) SOCKS proxy socket.</summary>
</histogram>

<histogram name="Net.SOCKSSocketType" enum="HttpSocketType">
  <obsolete>
    see SocketType_SOCK
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The counts of the type of sockets returned by the SOCKS pool.
  </summary>
</histogram>

<histogram name="Net.SpdyConnectionLatency" units="ms">
  <obsolete>
    Replaced by Net.SpdyConnectionLatency_2 on 2014-10-21.
  </obsolete>
  <owner>rch@chromium.org</owner>
  <summary>Time from when the Connect() starts until it completes.</summary>
</histogram>

<histogram name="Net.SpdyConnectionLatency_2" units="ms">
  <owner>rch@chromium.org</owner>
  <summary>Time from when the Connect() starts until it completes.</summary>
</histogram>

<histogram name="Net.SpdyFrameStreamAndSessionFlowControlState"
    enum="SpdyFrameFlowControlState">
  <owner>rch@chromium.org</owner>
  <summary>
    The counts of the flow control state of each frame (with stream and session
    flow control on).
  </summary>
</histogram>

<histogram name="Net.SpdyFrameStreamFlowControlState"
    enum="SpdyFrameFlowControlState">
  <obsolete>
    The last protocol which would trigger this was deprecated in 2014 November.
    This histogram is deprecated in 2016 January.
  </obsolete>
  <owner>rch@chromium.org</owner>
  <summary>
    The counts of the flow control state of each frame (with stream flow control
    on).
  </summary>
</histogram>

<histogram name="Net.SpdyHpackDecompressionPercentage" units="%">
  <owner>ckrasic@chromium.org</owner>
  <summary>
    The compression percentage in received HPACK compressed header frames.
  </summary>
</histogram>

<histogram name="Net.SpdyHpackEncodedCharacterFrequency" units="ASCII codes">
  <obsolete>
    Obsolete as HTTP/2 standard is finalized.
  </obsolete>
  <owner>bnc@chromium.org</owner>
  <summary>
    Frequencies of characters observed in request and response headers.
    Temporarily being collected to inform the construction of an optimized
    Huffman code for the HTTP/2 specification. Buckets are ASCII codes offset by
    1.
  </summary>
</histogram>

<histogram name="Net.SpdyIPPoolDomainMatch" enum="SpdyIPPoolDomainMatch"
    units="count">
  <owner>rch@chromium.org</owner>
  <summary>
    Status of checking if a SPDY domain can handle a IP match.  If a match is
    found, we successfully used the IP Pooling.  If a match is not found, we
    could have used IP Pooling, except the TLS Cert didn't match the IP-pooled
    domain.
  </summary>
</histogram>

<histogram name="Net.SpdyPing.RTT" units="ms">
  <owner>rch@chromium.org</owner>
  <summary>The RTT for SPDY's PING.</summary>
</histogram>

<histogram name="Net.SpdyPriorityCount">
  <owner>rch@chromium.org</owner>
  <summary>The count of streams at each priority over Spdy sessions.</summary>
</histogram>

<histogram name="Net.SpdyRecvBytes" units="bytes">
  <owner>rch@chromium.org</owner>
  <summary>The number of bytes recevied per stream.</summary>
</histogram>

<histogram name="Net.SpdySendBytes" units="bytes">
  <owner>rch@chromium.org</owner>
  <summary>The number of bytes sent per stream.</summary>
</histogram>

<histogram name="Net.SpdySession.BytesRead.EOF" units="bytes">
  <owner>rch@chromium.org</owner>
  <summary>
    Total number of bytes recevied per session before closing session due to
    EOF.
  </summary>
</histogram>

<histogram name="Net.SpdySession.BytesRead.OtherErrors" units="bytes">
  <owner>rch@chromium.org</owner>
  <summary>
    Total number of bytes recevied per session before closing session due to an
    error during read.
  </summary>
</histogram>

<histogram name="Net.SpdySession.ClosedOnError" enum="NetErrorCodes">
  <owner>rch@chromium.org</owner>
  <summary>
    Net error codes when SpdySession was closed, doesn't inlcuding net::OK.
  </summary>
</histogram>

<histogram name="Net.SpdySession.CreateStreamWithSocketConnected"
    enum="BooleanSuccess">
  <owner>rch@chromium.org</owner>
  <summary>Socket connected status in SpdySession::CreateStream.</summary>
</histogram>

<histogram name="Net.SpdySessionErrorDetails" enum="SpdyProtocolErrorDetails"
    units="count">
  <obsolete>
    Replaced by SpdySessionErrorDetails2 on 2013-04-19.
  </obsolete>
  <owner>rch@chromium.org</owner>
  <summary>
    WARNING: r181910 added an enum value in the middle, so don't trust the
    counts for values 9 and above for Chrome builds after that revision.

    The type of SPDY Protocol error encountered.
  </summary>
</histogram>

<histogram name="Net.SpdySessionErrorDetails2" enum="SpdyProtocolErrorDetails2"
    units="count">
  <owner>rch@chromium.org</owner>
  <summary>The type of SPDY Protocol error encountered.</summary>
</histogram>

<histogram name="Net.SpdySessionErrorDetails_Google"
    enum="SpdyProtocolErrorDetails" units="count">
  <obsolete>
    Replaced by SpdySessionErrorDetails_Google2 on 2013-04-19.
  </obsolete>
  <owner>rch@chromium.org</owner>
  <summary>
    The type of SPDY Protocol error encountered when talking to a google.com
    server.
  </summary>
</histogram>

<histogram name="Net.SpdySessionErrorDetails_Google2"
    enum="SpdyProtocolErrorDetails2" units="count">
  <owner>rch@chromium.org</owner>
  <summary>
    WARNING: r181910 added an enum value in the middle, so don't trust the
    counts for values 9 and above for Chrome builds after that revision.

    The type of SPDY Protocol error encountered when talking to a google.com
    server.
  </summary>
</histogram>

<histogram name="Net.SpdySessionGet" enum="SpdySessionGet" units="count">
  <owner>rch@chromium.org</owner>
  <summary>The type of SPDY Session used when looking up a session.</summary>
</histogram>

<histogram name="Net.SpdySessionGetPeerAddressNotConnected"
    enum="BooleanSuccess">
  <owner>rch@chromium.org</owner>
  <summary>
    Whether SpdySession::Get{Peer,Local}Address was called when the connection
    had no socket.
  </summary>
</histogram>

<histogram name="Net.SpdySessions_DataReductionProxy"
    enum="BooleanDataReductionProxy">
  <obsolete>
    Deprecated 7/21/2014. No longer tracked.
  </obsolete>
  <owner>bengr@chromium.org</owner>
  <owner>bolian@chromium.org</owner>
  <owner>rch@chromium.org</owner>
  <summary>
    The count of SPDY sessions using the data reduction proxy and the count of
    other SPDY sessions.
  </summary>
</histogram>

<histogram name="Net.SpdySessionSocketNotConnectedGetLocalAddress"
    enum="BooleanSuccess">
  <owner>rch@chromium.org</owner>
  <summary>
    SpdySession::GetLocalAddress returned ERR_SOCKET_NOT_CONNECTED.
  </summary>
</histogram>

<histogram name="Net.SpdySessionSocketNotConnectedGetPeerAddress"
    enum="BooleanSuccess">
  <owner>rch@chromium.org</owner>
  <summary>
    SpdySession::GetPeerAddress returned ERR_SOCKET_NOT_CONNECTED.
  </summary>
</histogram>

<histogram name="Net.SpdySessionsWithStalls">
  <owner>rch@chromium.org</owner>
  <summary>The count of SPDY Sessions with or without stalls.</summary>
</histogram>

<histogram name="Net.SpdySettingsCwnd" units="packets">
  <owner>rch@chromium.org</owner>
  <summary>
    The congestion window (in pkts) received at the end of a SpdySession.
  </summary>
</histogram>

<histogram name="Net.SpdySettingsCwndSent" units="packets">
  <owner>rch@chromium.org</owner>
  <summary>
    The congestion window (in pkts) sent at the beginning of a SpdySession.
  </summary>
</histogram>

<histogram name="Net.SpdySettingsReceived" enum="SpdySettingsReceived"
    units="%">
  <owner>rch@chromium.org</owner>
  <summary>
    Percentage of sessions which received settings from the server.
  </summary>
</histogram>

<histogram name="Net.SpdySettingsRetransRate" units="%">
  <owner>rch@chromium.org</owner>
  <summary>
    The Download Retransmission Rate (%) received at the end of a SpdySession.
  </summary>
</histogram>

<histogram name="Net.SpdySettingsRTT" units="ms">
  <owner>rch@chromium.org</owner>
  <summary>The RTT received at the end of a SpdySession.</summary>
</histogram>

<histogram name="Net.SpdySettingsSent" enum="SpdySettingsSent" units="%">
  <owner>rch@chromium.org</owner>
  <summary>Percentage of sessions which sent settings to the server.</summary>
</histogram>

<histogram name="Net.SpdyStreamDownloadTime" units="ms">
  <owner>rch@chromium.org</owner>
  <summary>
    The time between receiving the first chunk and the last chunk of data on a
    Spdy stream.
  </summary>
</histogram>

<histogram name="Net.SpdyStreamsAbandonedPerSession">
  <owner>rch@chromium.org</owner>
  <summary>
    The number of pushed, but abandoned streams over a single session.
  </summary>
</histogram>

<histogram name="Net.SpdyStreamsPerSession">
  <owner>rch@chromium.org</owner>
  <summary>The number of streams issued over a single session.</summary>
</histogram>

<histogram name="Net.SpdyStreamsPushedAndClaimedPerSession">
  <owner>rch@chromium.org</owner>
  <summary>
    The number of pushed, and used streams over a single session.
  </summary>
</histogram>

<histogram name="Net.SpdyStreamsPushedPerSession">
  <owner>rch@chromium.org</owner>
  <summary>The number of push streams received over a single session.</summary>
</histogram>

<histogram name="Net.SpdyStreamStallsPerSession">
  <owner>rch@chromium.org</owner>
  <summary>The number of stream stalls per session.</summary>
</histogram>

<histogram name="Net.SpdyStreamTime" units="ms">
  <owner>rch@chromium.org</owner>
  <summary>
    The time of a Spdy stream.  Measured from sending the first chunk to
    receiving the last chunk of data.
  </summary>
</histogram>

<histogram name="Net.SpdyStreamTimeToFirstByte" units="ms">
  <owner>rch@chromium.org</owner>
  <summary>
    The time between sending the request and receiving the first chunk of data
    on a Spdy stream.
  </summary>
</histogram>

<histogram name="Net.SpdySynStreamCompressionPercentage" units="%">
  <owner>rch@chromium.org</owner>
  <summary>
    The percent compression achieved when compression SYN_STREAM frames.
  </summary>
</histogram>

<histogram name="Net.SpdyVersion" enum="ProtocolVersion">
  <obsolete>
    Deprecated on 2014-09-11, because the uploaded values were changing as
    protocols were removed, therefore statistics couldn't be combined across
    different builds.  Replaced by Net.SpdyVersion2.
  </obsolete>
  <owner>rch@chromium.org</owner>
  <summary>
    The SPDY protocol version that is used to talk to SPDY servers.
  </summary>
</histogram>

<histogram name="Net.SpdyVersion2" enum="SpdyProtocolVersion">
  <owner>bnc@chromium.org</owner>
  <obsolete>
    Deprecated on 2016-02-01, because the incorrect bucket count caused data
    corruption.  Replaced by Net.SpdyVersion3.
  </obsolete>
  <summary>
    The SPDY protocol version that is used to talk to SPDY servers.  Logged
    every time a SPDY session is initialized.
  </summary>
</histogram>

<histogram name="Net.SpdyVersion3" enum="SpdyProtocolVersion">
  <owner>bnc@chromium.org</owner>
  <summary>
    The SPDY protocol version that is used to talk to SPDY servers.  Logged
    every time a SPDY session is initialized.
  </summary>
</histogram>

<histogram name="Net.SSL_CipherSuite" enum="SSLCipherSuite">
  <owner>agl@chromium.org</owner>
  <owner>rsleevi@chromium.org</owner>
  <summary>
    The SSL/TLS cipher suite that was negotiated. Recorded for each SSL/TLS
    connection in the socket pool where Connect() succeeds.
  </summary>
</histogram>

<histogram name="Net.SSL_Connection_Error" enum="NetErrorCodes">
  <owner>agl@chromium.org</owner>
  <summary>
    Counts of specific error codes returned when opening an SSL connection.
  </summary>
</histogram>

<histogram name="Net.SSL_Connection_Error_FastRadioPadding"
    enum="NetErrorCodes">
  <obsolete>
    Removed 7/21/2015. No longer tracked.
  </obsolete>
  <owner>bengr@chromium.org</owner>
  <summary>
    Counts of specific error codes returned when opening an SSL connection for
    an endpoint which is eligible for fastradio padding.
  </summary>
</histogram>

<histogram name="Net.SSL_Connection_Latency" units="ms">
  <obsolete>
    Replaced by Net.SSL_Connection_Latency_2 on 2014-10-21.
  </obsolete>
  <owner>agl@chromium.org</owner>
  <summary>Time from when the Connect() starts until it completes.</summary>
</histogram>

<histogram name="Net.SSL_Connection_Latency_2" units="ms">
  <owner>agl@chromium.org</owner>
  <summary>Time from when the Connect() starts until it completes.</summary>
</histogram>

<histogram name="Net.SSL_Connection_Latency_DataReductionProxy" units="ms">
  <obsolete>
    Deprecated 7/21/2014. No longer tracked.
  </obsolete>
  <owner>bengr@chromium.org</owner>
  <owner>bolian@chromium.org</owner>
  <summary>
    Time from when the Connect() starts until it completes when using the data
    reduction proxy. This includes certificate retrieval and verification.
  </summary>
</histogram>

<histogram name="Net.SSL_Connection_Latency_Full_Handshake" units="ms">
  <owner>agl@chromium.org</owner>
  <summary>
    Time from when the Connect() starts until it completes for full handshakes.
  </summary>
</histogram>

<histogram name="Net.SSL_Connection_Latency_Google" units="ms">
  <obsolete>
    Replaced by Net.SSL_Connection_Latency_Google2 on 2014-10-21.
  </obsolete>
  <owner>agl@chromium.org</owner>
  <summary>
    Time from when the Connect() starts until it completes for google.com and
    any subdomain of it.
  </summary>
</histogram>

<histogram name="Net.SSL_Connection_Latency_Google2" units="ms">
  <owner>agl@chromium.org</owner>
  <summary>
    Time from when the Connect() starts until it completes for google.com and
    any subdomain of it.
  </summary>
</histogram>

<histogram name="Net.SSL_Connection_Latency_Google_Full_Handshake" units="ms">
  <owner>agl@chromium.org</owner>
  <summary>
    Time from when the Connect() starts until it completes for google.com and
    any subdomain of it for full handshakes.
  </summary>
</histogram>

<histogram name="Net.SSL_Connection_Latency_Google_No_Revocation_Checking"
    units="ms">
  <obsolete>
    Removed in 2011.
  </obsolete>
  <owner>agl@chromium.org</owner>
  <summary>
    Time from when the Connect() starts until it completes for google.com and
    any subdomain of it. This only includes users in a 50% field trial that
    disables revocation checking for certificate pinned sites.
  </summary>
</histogram>

<histogram name="Net.SSL_Connection_Latency_Google_Resume_Handshake" units="ms">
  <owner>agl@chromium.org</owner>
  <summary>
    Time from when the Connect() starts until it completes for google.com and
    any subdomain of it for resumption handshakes.
  </summary>
</histogram>

<histogram name="Net.SSL_Connection_Latency_Google_Revocation_Checking"
    units="ms">
  <obsolete>
    Removed in 2011.
  </obsolete>
  <owner>agl@chromium.org</owner>
  <summary>
    Time from when the Connect() starts until it completes for google.com and
    any subdomain of it. This only includes users not in a 50% field trail that
    disables revocation for certificate pinned sites.
  </summary>
</histogram>

<histogram name="Net.SSL_Connection_Latency_Resume_Handshake" units="ms">
  <owner>agl@chromium.org</owner>
  <summary>
    Time from when the Connect() starts until it completes for resumption
    handshakes.
  </summary>
</histogram>

<histogram name="Net.SSL_EVCertificateCTCompliance"
    enum="CTRequirementCompliance">
  <obsolete>
    Deprecated as of 01/2016.
  </obsolete>
  <owner>eranm@chromium.org</owner>
  <owner>rsleevi@chromium.org</owner>
  <summary>
    The state of compliance with Certificate Transparency presence requirements
    for each EV certificate. An EV certificate could be non-compliant (in which
    case it loses the EV status), comply through inclusion in the EV whitelist
    or have the required number of Signed Certificate Timestamps. This metric
    will gauge adoption rate of Certificate Transparency and will help identify
    when the EV whitelist is no longer needed. Emitted during every SSL
    connection establishment, but only if the client is checking compliance with
    Certificate Transparency requirements (currently guarded by a Finch
    experiment).
  </summary>
</histogram>

<histogram name="Net.SSL_EVCertificateInWhitelist" enum="Boolean">
  <owner>eranm@chromium.org</owner>
  <owner>rsleevi@chromium.org</owner>
  <summary>
    Whether an EV certificate is present in the Certificate Transparency
    whitelist. Emitted once for every EV certificate encountered (during SSL
    connection establishment), but only if the client has a valid whitelist.
  </summary>
</histogram>

<histogram name="Net.SSL_EVCTCompliance" enum="EVCTCompliance">
  <owner>eranm@chromium.org</owner>
  <owner>rsleevi@chromium.org</owner>
  <summary>
    The state of compliance with Certificate Transparency presence requirements
    for each EV certificate. An EV certificate could be non-compliant (in which
    case it loses the EV status), comply through inclusion in the EV whitelist
    or comply with the CT certificate policy. This metric will gauge adoption
    rate of Certificate Transparency and will help identify when the EV
    whitelist is no longer needed. Emitted during every SSL connection
    establishment.
  </summary>
</histogram>

<histogram name="Net.SSL_EVWhitelistValidityForNonCompliantCert"
    enum="EVWhitelistStatus">
  <owner>eranm@chromium.org</owner>
  <owner>rsleevi@chromium.org</owner>
  <summary>
    Whether the client holds a valid EV Certificates whitelist or not. Only
    emitted when an EV cert that is not compliant with the Certificate
    Transparency requirement is encountered. This histogram is intended to be
    short-lived and help determine if EV certificates are considered
    non-compliant because they are not whitelisted or if the client does not
    hold a valid instance of the whitelist.
  </summary>
</histogram>

<histogram name="Net.SSL_KeyExchange.DHE">
  <owner>sigbjorn@opera.com</owner>
  <owner>agl@chromium.org</owner>
  <owner>rsleevi@chromium.org</owner>
  <summary>
    Bit strength of the key exchange for DHE. Recorded for each SSL/TLS
    connection in the socket pool where Connect() succeeds.
  </summary>
</histogram>

<histogram name="Net.SSL_KeyExchange.ECDHE" enum="ECDHECurves">
  <owner>sigbjorn@opera.com</owner>
  <owner>agl@chromium.org</owner>
  <owner>rsleevi@chromium.org</owner>
  <summary>
    The curve used for key exchange for ECDHE. Recorded for each SSL/TLS
    connection in the socket pool where Connect() succeeds.
  </summary>
</histogram>

<histogram name="Net.SSL_KeyExchange.RSA">
  <owner>sigbjorn@opera.com</owner>
  <owner>agl@chromium.org</owner>
  <owner>rsleevi@chromium.org</owner>
  <summary>
    Bit strength of the key exchange for RSA. Recorded for each SSL/TLS
    connection in the socket pool where Connect() succeeds. See |SSL_SESSION|'s
    key_exchange_info for more information.
  </summary>
</histogram>

<histogram name="Net.SSLCertBlacklisted">
  <obsolete>
    Removed on 01/2016. Only ever measured blacklisted Comodo serials, not any
    of the other blacklisted certificates and keys.
  </obsolete>
  <owner>agl@chromium.org</owner>
  <summary>
    Counts the number of times that users have hit blacklisted certificates. The
    indexes match up to the indexes in
    net/base/x509_certificate.cc:IsBlacklisted. The details of the certificates
    in question is confidential.
  </summary>
</histogram>

<histogram name="Net.SSLCertVerificationTime" units="ms">
  <owner>rsleevi@chromium.org</owner>
  <summary>Time to complete a certificate verification (success case).</summary>
</histogram>

<histogram name="Net.SSLCertVerificationTimeError" units="ms">
  <owner>rsleevi@chromium.org</owner>
  <summary>Time to complete a certificate verification (error case).</summary>
</histogram>

<histogram name="Net.SSLFallbackErrorCode" enum="NetErrorCodes">
  <owner>davidben@chromium.org</owner>
  <summary>
    For each successful HTTPS request which used the TLS version fallback, the
    error code of the last failed attempt.
  </summary>
</histogram>

<histogram name="Net.SSLFallbackFailureState" enum="SSLFailureState">
  <owner>davidben@chromium.org</owner>
  <summary>
    For each successful HTTPS request which used the TLS version fallback, the
    type of handshake failure of the last failed attempt.
  </summary>
</histogram>

<histogram name="Net.SSLHostInfoDNSLookup" units="ms">
  <obsolete>
    Removed in 2011.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>Time to complete a DNS lookup for a DNS CAA record.</summary>
</histogram>

<histogram name="Net.SSLHostInfoDNSLookupDelayMs" units="ms">
  <obsolete>
    Removed in 2011.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Time that we would have wasted had we waited for a CAA lookup in order to
    validate a certificate.
  </summary>
</histogram>

<histogram name="Net.SSLHostInfoVerificationTimeMs" units="ms">
  <obsolete>
    Removed in 2012.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>Time to complete a speculative certificate verification.</summary>
</histogram>

<histogram name="Net.SSLProtocolErrorCipher" enum="SSLCipherSuite">
  <obsolete>
    Removed in March 2016.
  </obsolete>
  <owner>davidben@chromium.org</owner>
  <summary>
    The cipher suite used when the corresponding operation on an SSLClientSocket
    fails with ERR_SSL_PROTOCOL_ERROR. This histogram will be removed when
    https://crbug.com/593963 is resolved.
  </summary>
</histogram>

<histogram name="Net.SSLProtocolErrorReason" enum="BoringSSLReasonCode">
  <obsolete>
    Removed in March 2016.
  </obsolete>
  <owner>davidben@chromium.org</owner>
  <summary>
    The internal, version-specific BoringSSL error reason reported when the
    corresponding operation on an SSLClientSocket fails with
    ERR_SSL_PROTOCOL_ERROR. This histogram will be removed when
    https://crbug.com/593963 is resolved.
  </summary>
</histogram>

<histogram name="Net.SSLProtocolNegotiation" enum="SSLProtocolNegotiation">
  <owner>bnc@chromium.org</owner>
  <summary>
    TLS extension used to negotiate protocol (ALPN or NPN); in case of NPN,
    whether the protocol is indeed supported by both the client and the server
    or is a fallback because of no overlap; and the negotiated protocol itself.
  </summary>
</histogram>

<histogram name="Net.SSLServerKeyExchangeHash" enum="SSLHashAlgorithm">
  <owner>davidben@chromium.org</owner>
  <summary>
    For each SSL connection with a full handshake using a DHE- or ECDHE-based
    key exchange, the hash function used in the ServerKeyExchange signature.
  </summary>
</histogram>

<histogram name="Net.SSLSessionVersionMatch" enum="BooleanMatched">
  <owner>davidben@chromium.org</owner>
  <obsolete>
    Removed on 2015-11-10.
  </obsolete>
  <summary>
    For each SSL connection that resumed a session, whether the session was
    resumed at the same version it was established at. This is only recorded in
    BoringSSL ports.
  </summary>
</histogram>

<histogram name="Net.SSLv3FallbackToRenegoPatchedServer"
    enum="TLSRenegotiationPatched">
  <obsolete>
    Removed on 2014-08-20.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The number of times that we have performed SSLv3 fallback and found a TLS
    renegotiation patched server.
  </summary>
</histogram>

<histogram name="Net.SSLVerificationMerged">
  <obsolete>
    Removed in 2012.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>Was a speculative certificate verification used?</summary>
</histogram>

<histogram name="Net.SSLVerificationMergedMsSaved" units="ms">
  <obsolete>
    Removed in 2012.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>Time saved by a speculative certificate vertification.</summary>
</histogram>

<histogram name="Net.SSLVersion" enum="SSLOrQUICVersion">
  <owner>davidben@chromium.org</owner>
  <summary>
    The SSL/TLS version that was negotiated. Recorded for each SSL/TLS
    connection in the socket pool where Connect() succeeds.
  </summary>
</histogram>

<histogram name="Net.TCP_Connection_Idle_Sockets">
  <obsolete>
    Deprecated 04/2016 as doesn't have data nor owner.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>Number of idle sockets when the Connect() succeeded.</summary>
</histogram>

<histogram name="Net.TCP_Connection_Latency" units="ms">
  <owner>mmenke@chromium.org</owner>
  <summary>
    Time from when the Connect() starts until it completes.  Only times under 10
    minutes are logged.
  </summary>
</histogram>

<histogram name="Net.TCP_Connection_Latency_IPv4_No_Race" units="ms">
  <owner>mmenke@chromium.org</owner>
  <summary>
    Time from when the Connect() starts until it completes when the network
    address only contains IPv4 addresses.  Only times under 10 minutes are
    logged.
  </summary>
</histogram>

<histogram name="Net.TCP_Connection_Latency_IPv4_Wins_Race" units="ms">
  <owner>mmenke@chromium.org</owner>
  <summary>
    Time from when the Connect() starts until it completes when the IPv4
    fallback connection won the race against IPv6.  Only times under 10 minutes
    are logged.
  </summary>
</histogram>

<histogram name="Net.TCP_Connection_Latency_IPv6_Raceable" units="ms">
  <owner>mmenke@chromium.org</owner>
  <summary>
    Time from when the Connect() starts until it completes when we race an IPv6
    connection against an IPv4 connection with a 300ms delay.  Only times under
    10 minutes are logged.
  </summary>
</histogram>

<histogram name="Net.TCP_Connection_Latency_IPv6_Solo" units="ms">
  <owner>mmenke@chromium.org</owner>
  <summary>
    Time from when the Connect() starts until it completes when the network
    address only contains IPv6 addresses.  Only times under 10 minutes are
    logged.
  </summary>
</histogram>

<histogram name="Net.TcpFastOpenSocketConnection" enum="TcpSocketStatus">
  <owner>jri@chromium.org</owner>
  <summary>
    For sockets for which a TCP Fast Open protocol might be used, the result of
    trying to use it.
  </summary>
</histogram>

<histogram name="Net.TCPForSOCKSSocketIdleTimeBeforeNextUse_ReusedSocket">
  <obsolete>
    see SocketIdleTimeBeforeNextUse_ReusedSocket_TCPforSOCKS
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The time an already used TCP socket sat idle before being used for a SOCKS
    request.
  </summary>
</histogram>

<histogram name="Net.TCPForSOCKSSocketIdleTimeBeforeNextUse_UnusedSocket">
  <obsolete>
    see SocketIdleTimeBeforeNextUse_UnusedSocket_TCPforSOCKS
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The time an unused TCP socket sat idle before being used for a SOCKS
    request.
  </summary>
</histogram>

<histogram name="Net.TCPForSOCKSSocketRequestTime" units="ms">
  <obsolete>
    see SocketRequestTime_TCPforSOCKS
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Time from initial SOCKSClientSocketPool::RequestSocket() call until
    successfully acquiring a connected TCP socket.
  </summary>
</histogram>

<histogram name="Net.TCPForSOCKSSocketType" enum="HttpSocketType">
  <obsolete>
    see SocketType_TCPforSOCKS
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The counts of the type of sockets returned by the TCP pool used by the SOCKS
    pool.
  </summary>
</histogram>

<histogram name="Net.TcpRtt.AtDisconnect" units="ms">
  <owner>bmcquade@chromium.org</owner>
  <summary>
    The kernel's estimated TCP round trip time. Recorded for each TCP socket, at
    the time it is disconnected.
  </summary>
</histogram>

<histogram name="Net.TCPSocketType" enum="HttpSocketType">
  <obsolete>
    Was only used for HTTP[S] connections, renamed to Net.HTTPSocketType.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>The counts of the type of TCP socket returned.</summary>
</histogram>

<histogram name="Net.ThreadHopResourceThrottleTime" units="ms">
  <owner>davidben@chromium.org</owner>
  <summary>
    The time it took to do an IO to UI round-trip in the
    ThreadHopResourceThrottle. This is part of an experiment to determine the
    feasibility to moving some high-level resource loading checks to the UI
    thread.
  </summary>
</histogram>

<histogram name="Net.TokenBinding.HeaderCreationTime" units="ms">
  <owner>nharper@chromium.org</owner>
  <summary>Time spent creating a Token-Binding header.</summary>
</histogram>

<histogram name="Net.TokenBinding.KeyMatch" enum="TokenBinding.KeyMatch">
  <owner>nharper@chromium.org</owner>
  <summary>
    Logs on each request that is sent on a connection where Channel ID was sent
    whether the key that would be used for Token Binding matches the key used
    for Channel ID.
  </summary>
</histogram>

<histogram name="Net.TokenBinding.StoreEphemerality"
    enum="TokenBinding.StoreEphemerality">
  <owner>nharper@chromium.org</owner>
  <summary>
    For each request to accounts.google.com on a connection where Channel ID was
    sent, this logs whether the Cookie store and the Channel ID store were
    ephemeral or persistent.
  </summary>
</histogram>

<histogram name="Net.TokenBinding.Support" enum="TokenBinding.Support">
  <owner>nharper@chromium.org</owner>
  <summary>
    The number of secure HTTP requests broken down by support for Token Binding,
    indicating if Token Binding was negotiated and supported by both client and
    server, or why it wasn't if not.
  </summary>
</histogram>

<histogram name="Net.Transaction_Bandwidth" units="KB/s">
  <obsolete>
    Discontinued as of 4/12/09
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Effective bandwidth in KByte/Second of transactions logged to
    Transaction_Latency histogram.  Note that only samples durations greater
    than zero ms, and less than 1 hour are tallied into this ratio.
  </summary>
</histogram>

<histogram name="Net.Transaction_Connected" units="ms">
  <obsolete>
    Deprecated as of 11/2014.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Time from the when the network transaction is requested, until the first
    byte of the header is received.
  </summary>
</histogram>

<histogram name="Net.Transaction_Connected_New" units="ms">
  <obsolete>
    Replaced by Net.Transaction_Connected_New_b.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    When a new connection is established, the time from the when the network
    transaction is requested, until the first byte of the header is received.
    Only items under 10 minutes are logged.
  </summary>
</histogram>

<histogram name="Net.Transaction_Connected_New_b" units="ms">
  <obsolete>
    Deprecated as of 11/2014.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    When a new connection is established, the time from the when the network
    transaction is requested, until the first byte of the header is received.
  </summary>
</histogram>

<histogram name="Net.Transaction_Connected_Under_10" units="ms">
  <obsolete>
    Replaced by Net.Transaction_Connected.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Time from the when the network transaction is requested, until the first
    byte of the header is received.  Only items under 10 minutes are logged.
  </summary>
</histogram>

<histogram name="Net.Transaction_Latency" units="ms">
  <obsolete>
    Replaced by Net.Transaction_Latency_b.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Time from first byte sent until last byte received by the new network stack.
    Only items under 1 hour are logged.
  </summary>
</histogram>

<histogram name="Net.Transaction_Latency_b" units="ms">
  <obsolete>
    Deprecated as of 11/2014.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Time from first byte sent until last byte received by the new network stack.
  </summary>
</histogram>

<histogram name="Net.Transaction_Latency_Total" units="ms">
  <obsolete>
    Deprecated as of 11/2014.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Time from when a network transaction is requested until last byte received
    by the new network stack.
  </summary>
</histogram>

<histogram name="Net.Transaction_Latency_Total_New_Connection" units="ms">
  <obsolete>
    Deprecated as of 11/2014.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    When an existing TCP/IP connection is NOT reused, the time from when a
    network transaction is requested until last byte received by the new network
    stack.
  </summary>
</histogram>

<histogram name="Net.Transaction_Latency_Total_New_Connection_Under_10"
    units="ms">
  <obsolete>
    Replaced by Net.Transaction_Latency_Total_New_Connection.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    When an existing TCP/IP connection is NOT reused, the time from when a
    network transaction is requested until last byte received by the new network
    stack.  Only items under 10 minutes are logged.
  </summary>
</histogram>

<histogram name="Net.Transaction_Latency_Total_Under_10" units="ms">
  <obsolete>
    Replaced by Net.Transaction_Latency_Total.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Time from when a network transaction is requested until last byte received
    by the new network stack.  Only items under 10 minutes are logged.
  </summary>
</histogram>

<histogram name="Net.Transaction_Latency_Under_10" units="ms">
  <obsolete>
    Replaced by Net.Transaction_Latency.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Time from first byte sent until last byte received by the new network stack.
    Only items under 10 minutes are logged.
  </summary>
</histogram>

<histogram name="Net.Transaction_Latency_WinHTTP" units="ms">
  <obsolete>
    Deprecated a long time ago.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Time from first byte sent until last byte received with old WinHTTP network
    stack.  Only items under 1 hour are logged.
  </summary>
</histogram>

<histogram name="Net.TransportSocketIdleTimeBeforeNextUse_ReusedSocket">
  <obsolete/>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The time an already used TCP socket sat idle before being used (either for
    direct or non-socks use).
  </summary>
</histogram>

<histogram name="Net.TransportSocketIdleTimeBeforeNextUse_UnusedSocket">
  <obsolete/>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The time an unused TCP socket sat idle before being used (either for direct
    or non-socks use).
  </summary>
</histogram>

<histogram name="Net.TransportSocketRequestTime" units="ms">
  <obsolete/>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Time from initial ClientSocketPool::RequestSocket() call until successfully
    acquiring a connected socket (either for direct or non-socks use).
  </summary>
</histogram>

<histogram name="Net.TransportSocketType" enum="HttpSocketType">
  <obsolete/>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The counts of the type of sockets returned by the TCP pool (either for
    direct or non-socks use).
  </summary>
</histogram>

<histogram name="Net.UdpSocketBindErrorFromPosix" units="PosixError">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>Posix error code from call to bind() UDP socket.</summary>
</histogram>

<histogram name="Net.UdpSocketBindErrorFromWinOS" units="WinError">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>Windows error code from call to bind() UDP socket.</summary>
</histogram>

<histogram name="Net.UdpSocketRandomBindErrorCode" enum="NetErrorCodes">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>Chromium error code from call to RandomBind() UDP socket.</summary>
</histogram>

<histogram name="Net.UDPSocketWinClose" units="ms">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>The time spent in closesocket call in UDPSocketWin::Close.</summary>
</histogram>

<histogram name="Net.URLRequest_SetReferrer_IsEmptyOrValid" enum="Boolean">
  <obsolete>
    Deprecated 6/23/2014. No longer tracked.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>True if a URLRequest's referrer is empty or valid when set.</summary>
</histogram>

<histogram name="Net.WebSocket.DeflateMode"
    enum="WebSocketNewPerMessageDeflateContextTakeoverMode">
  <owner>yhirano@chromium.org</owner>
  <owner>ricea@chromium.org</owner>
  <owner>tyoshino@chromium.org</owner>
  <summary>
    Count the number of WebSockets that accepted permessage-deflate extension
    for each context take over mode. Used by the new Chromium-based WebSocket
    implementation.
  </summary>
</histogram>

<histogram name="Net.WebSocket.Duration" units="ms">
  <owner>yhirano@chromium.org</owner>
  <owner>ricea@chromium.org</owner>
  <owner>tyoshino@chromium.org</owner>
  <summary>
    The time from a WebSocket is successfully opened until it's closed. Used to
    study how WebSockets are used.
  </summary>
</histogram>

<histogram name="Net.WebSocket.ErrorCodes" enum="NetErrorCodes">
  <owner>yhirano@chromium.org</owner>
  <owner>ricea@chromium.org</owner>
  <owner>tyoshino@chromium.org</owner>
  <summary>
    Positive net error codes that WebSockets end with, including OK and ABORTED.
  </summary>
</histogram>

<histogram name="Net.WebSocket.HandshakeResult"
    enum="WebSocketNewHandshakeResult">
  <owner>yhirano@chromium.org</owner>
  <owner>ricea@chromium.org</owner>
  <owner>tyoshino@chromium.org</owner>
  <summary>
    Results of WebSocket handshakes. Use this histogram as a baseline for
    investigating feature usage counters.
  </summary>
</histogram>

<histogram name="Net.WebSocket.ResponseCode" enum="HttpResponseCode">
  <owner>yhirano@chromium.org</owner>
  <owner>ricea@chromium.org</owner>
  <owner>tyoshino@chromium.org</owner>
  <summary>All HTTP status codes seen during WebSocket handshakes.</summary>
</histogram>

<histogram name="Net.Wifi.InterfaceCount">
  <owner>mvanouwerkerk@chromium.org</owner>
  <summary>
    The number of Wi-fi adapters on the computer. Because the histogram is
    logged each time Chrome performs a Wi-fi scan, it's better to see results in
    the &quot;user count&quot; view.
  </summary>
</histogram>

<histogram name="Net.Wifi.LbsLatency" units="ms">
  <owner>mvanouwerkerk@chromium.org</owner>
  <summary>The time that a request to Location Based Services takes.</summary>
</histogram>

<histogram name="Net.Wifi.ScanLatency" units="ms">
  <owner>mvanouwerkerk@chromium.org</owner>
  <summary>The time that a Wi-fi scan takes.</summary>
</histogram>

<histogram name="Net.WpadQuickCheckFailure" units="ms">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Duration of time that a failing WPAD QuickCheck takes. WPAD QuickCheck does
    a name lookup for &quot;wpad&quot; and times out quickly to fail fast when
    there's no WPAD server on the network.
  </summary>
</histogram>

<histogram name="Net.WpadQuickCheckSuccess" units="ms">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Duration of time that a successful WPAD QuickCheck takes. WPAD QuickCheck
    does a name lookup for &quot;wpad&quot; and times out quickly to fail fast
    when there's no WPAD server on the network.
  </summary>
</histogram>

<histogram name="NetConnectivity.Pipeline.0.NetworkError" enum="NetErrorCodes">
  <obsolete>
    Deprecated 05/2014, related field trial already long expired.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The network error, if any, of the first pipeline connectivity request.
  </summary>
</histogram>

<histogram name="NetConnectivity.Pipeline.0.ResponseCode">
  <obsolete>
    Deprecated 05/2014, related field trial already long expired.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The HTTP response code, if any, of the first pipeline connectivity response.
  </summary>
</histogram>

<histogram name="NetConnectivity.Pipeline.0.Status" enum="HttpPipelineStatus">
  <obsolete>
    Deprecated 05/2014, related field trial already long expired.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>The result of the first pipeline connectivity request.</summary>
</histogram>

<histogram name="NetConnectivity.Pipeline.1.NetworkError" enum="NetErrorCodes">
  <obsolete>
    Deprecated 05/2014, related field trial already long expired.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The network error, if any, of the second pipeline connectivity request.
  </summary>
</histogram>

<histogram name="NetConnectivity.Pipeline.1.ResponseCode">
  <obsolete>
    Deprecated 05/2014, related field trial already long expired.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The HTTP response code, if any, of the second pipeline connectivity
    response.
  </summary>
</histogram>

<histogram name="NetConnectivity.Pipeline.1.Status" enum="HttpPipelineStatus">
  <obsolete>
    Deprecated 05/2014, related field trial already long expired.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>The result of the second pipeline connectivity request.</summary>
</histogram>

<histogram name="NetConnectivity.Pipeline.2.NetworkError" enum="NetErrorCodes">
  <obsolete>
    Deprecated 05/2014, related field trial already long expired.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The network error, if any, of the third pipeline connectivity request.
  </summary>
</histogram>

<histogram name="NetConnectivity.Pipeline.2.ResponseCode">
  <obsolete>
    Deprecated 05/2014, related field trial already long expired.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The HTTP response code, if any, of the third pipeline connectivity response.
  </summary>
</histogram>

<histogram name="NetConnectivity.Pipeline.2.Status" enum="HttpPipelineStatus">
  <obsolete>
    Deprecated 05/2014, related field trial already long expired.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>The result of the third pipeline connectivity request.</summary>
</histogram>

<histogram name="NetConnectivity.Pipeline.3.NetworkError" enum="NetErrorCodes">
  <obsolete>
    Deprecated 05/2014, related field trial already long expired.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The network error, if any, of the fourth pipeline connectivity request.
  </summary>
</histogram>

<histogram name="NetConnectivity.Pipeline.3.ResponseCode">
  <obsolete>
    Deprecated 05/2014, related field trial already long expired.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The HTTP response code, if any, of the fourth pipeline connectivity
    response.
  </summary>
</histogram>

<histogram name="NetConnectivity.Pipeline.3.Status" enum="HttpPipelineStatus">
  <obsolete>
    Deprecated 05/2014, related field trial already long expired.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>The result of the fourth pipeline connectivity request.</summary>
</histogram>

<histogram name="NetConnectivity.Pipeline.4.NetworkError" enum="NetErrorCodes">
  <obsolete>
    Deprecated 05/2014, related field trial already long expired.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The network error, if any, of the fifth pipeline connectivity request.
  </summary>
</histogram>

<histogram name="NetConnectivity.Pipeline.4.ResponseCode">
  <obsolete>
    Deprecated 05/2014, related field trial already long expired.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The HTTP response code, if any, of the fifth pipeline connectivity response.
  </summary>
</histogram>

<histogram name="NetConnectivity.Pipeline.4.Status" enum="HttpPipelineStatus">
  <obsolete>
    Deprecated 05/2014, related field trial already long expired.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>The result of the fifth pipeline connectivity request.</summary>
</histogram>

<histogram name="NetConnectivity.Pipeline.5.NetworkError" enum="NetErrorCodes">
  <obsolete>
    Deprecated 05/2014, related field trial already long expired.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The network error, if any, of the stats pipeline connectivity request.
  </summary>
</histogram>

<histogram name="NetConnectivity.Pipeline.5.ResponseCode">
  <obsolete>
    Deprecated 05/2014, related field trial already long expired.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The HTTP response code, if any, of the stats pipeline connectivity response.
  </summary>
</histogram>

<histogram name="NetConnectivity.Pipeline.5.Status" enum="HttpPipelineStatus">
  <obsolete>
    Deprecated 05/2014, related field trial already long expired.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>The result of the stats pipeline connectivity request.</summary>
</histogram>

<histogram name="NetConnectivity.Pipeline.AllHTTP11" enum="BooleanSuccess">
  <obsolete>
    Deprecated 05/2014, related field trial already long expired.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    True if all requests received by the pipelining test server were HTTP/1.1.
  </summary>
</histogram>

<histogram name="NetConnectivity.Pipeline.CanarySuccess" enum="BooleanSuccess">
  <obsolete>
    Deprecated 05/2014, related field trial already long expired.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    True if the non-pipelined canary request sent immediately before the
    pipelining test requests succeeded. Note that if this fails, the rest of the
    NetConnectivity.Pipeline.* stats are not collected.
  </summary>
</histogram>

<histogram name="NetConnectivity.Pipeline.Depth">
  <obsolete>
    Deprecated 05/2014, related field trial already long expired.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The maximum depth of pipelined requests received by the test server.
  </summary>
</histogram>

<histogram name="NetConnectivity.Pipeline.Success" enum="BooleanSuccess">
  <obsolete>
    Deprecated 05/2014, related field trial already long expired.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>True if the entire pipeline connectivity trial passed.</summary>
</histogram>

<histogram name="NetConnectivity.Sent21">
  <obsolete>
    Deprecated 6/25/2012. No longer tracked.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    In this experiment, 21 packets were sent to Google via UDP at port 6121 as
    rapidly as possible, just after successfully sending an UMA upload. Each
    packet was numbered, as was its ACK sent back by Google. If no packets (of
    the 21) were ever ACKed, then the port is assumed to be blocked, and no data
    is recorded in this histogram. If the port is not blocked, then this
    histogram shows the number of echo responses received from the first
  </summary>
</histogram>

<histogram name="NetConnectivity.Sent21.AckReceivedForNthPacket">
  <obsolete>
    Deprecated 6/25/2012. No longer tracked.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    In this experiment, 21 packets were sent to Google via UDP at port 6121 as
    rapidly as possible, just after successfully sending an UMA upload. Each
    packet was numbered, as was its ACK sent back by Google. This histogram
    records, for each packet number, how often we received an ACK for that
    packet.
  </summary>
</histogram>

<histogram name="NetConnectivity.Sent21.GotAnAck" enum="BooleanSuccess">
  <obsolete>
    Deprecated 6/25/2012. No longer tracked.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    In this experiment, 21 packets were sent to Google via UDP at port 6121 as
    rapidly as possible, just after successfully sending an UMA upload. If no
    packets (of the 21) were ever ACKed, then the port is assumed to be blocked.
    The histogram shows if we ever got an ACK for a packet in our series of 21.
  </summary>
</histogram>

<histogram name="NetConnectivity.TCP.Fail.100B.RTT" units="ms">
  <obsolete>
    Deprecated 4/2012. No longer tracked.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>The RTT for echoing 100 bytes of TCP data unsuccessfully.</summary>
</histogram>

<histogram name="NetConnectivity.TCP.Fail.1k.RTT" units="ms">
  <obsolete>
    Deprecated 4/2012. No longer tracked.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>The RTT for echoing 1K bytes of TCP data successfully.</summary>
</histogram>

<histogram name="NetConnectivity.TCP.Status"
    enum="NetConnectivityProtocolStatus">
  <obsolete>
    Deprecated 04/2016 as doesn't have data nor owner.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>Status for TCP protocol for echoing</summary>
</histogram>

<histogram name="NetConnectivity.TCP.Status.100B" enum="NetConnectivityStatus">
  <obsolete>
    Deprecated 4/2012. No longer tracked.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>Status for echoing 100 bytes of TCP data.</summary>
</histogram>

<histogram name="NetConnectivity.TCP.Status.1K" enum="NetConnectivityStatus">
  <obsolete>
    Deprecated 4/2012. No longer tracked.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>Status for echoing 1K bytes of TCP data.</summary>
</histogram>

<histogram name="NetConnectivity.TCP.Success" units="ms">
  <obsolete>
    Deprecated 04/2016 as doesn't have data nor owner.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>The RTT for TCP protocol for echoing</summary>
</histogram>

<histogram name="NetConnectivity.TCP.Success.100B.RTT" units="ms">
  <obsolete>
    Deprecated 4/2012. No longer tracked.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>The RTT for echoing 100 bytes of TCP data successfully.</summary>
</histogram>

<histogram name="NetConnectivity.TCP.Success.1K.RTT" units="ms">
  <obsolete>
    Deprecated 4/2012. No longer tracked.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>The RTT for echoing 1K bytes of TCP data successfully.</summary>
</histogram>

<histogram name="NetConnectivity.UDP.Fail.100B.RTT" units="ms">
  <obsolete>
    Deprecated 4/2012. No longer tracked.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>The RTT for echoing 100 bytes of UDP data unsuccessfully.</summary>
</histogram>

<histogram name="NetConnectivity.UDP.Fail.1k.RTT" units="ms">
  <obsolete>
    Deprecated 4/2012. No longer tracked.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>The RTT for echoing 1K bytes of UDP data successfully.</summary>
</histogram>

<histogram name="NetConnectivity.UDP.PacketLoss">
  <obsolete>
    Deprecated 6/25/2012. No longer tracked.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Chrome sends 4 UDP packets in a row to test to see if there is a
    probabalistic dependency in packet loss for consecutive packets.  We record
    a bit vector of packets received, where the least significant bit is a 1 if
    the first packet was received, etc.  For example, if packets 1 and 3 are
    received, but packets 2 and 4 are lost, then we'd record a sample of binary
    0101B, or 5.
  </summary>
</histogram>

<histogram name="NetConnectivity.UDP.PacketLoss6">
  <obsolete>
    Deprecated 6/25/2012. No longer tracked.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Chrome sends 6 UDP packets in a row to test to see if there is a
    probabalistic dependency in packet loss for consecutive packets.  We record
    a bit vector of packets received, where the least significant bit is a 1 if
    the first packet was received, etc.  For example, if all packets other than
    packet 2 and 4 are responded to, then we'd have a sample (in binary) of
    110101B, or 53.
  </summary>
</histogram>

<histogram name="NetConnectivity.UDP.Status"
    enum="NetConnectivityProtocolStatus">
  <obsolete>
    Deprecated 04/2016 as doesn't have data nor owner.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>Status for UDP protocol for echoing</summary>
</histogram>

<histogram name="NetConnectivity.UDP.Status.100B" enum="NetConnectivityStatus">
  <obsolete>
    Deprecated 4/2012. No longer tracked.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>Status for echoing 100 bytes of UDP data.</summary>
</histogram>

<histogram name="NetConnectivity.UDP.Status.1K" enum="NetConnectivityStatus">
  <obsolete>
    Deprecated 4/2012. No longer tracked.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>Status for echoing 1K bytes of UDP data.</summary>
</histogram>

<histogram name="NetConnectivity.UDP.Success" units="ms">
  <obsolete>
    Deprecated 04/2016 as doesn't have data nor owner.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>The RTT for UDP protocol for echoing</summary>
</histogram>

<histogram name="NetConnectivity.UDP.Success.100B.RTT" units="ms">
  <obsolete>
    Deprecated 4/2012. No longer tracked.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>The RTT for echoing 100 bytes of UDP data successfully.</summary>
</histogram>

<histogram name="NetConnectivity.UDP.Success.1K.RTT" units="ms">
  <obsolete>
    Deprecated 4/2012. No longer tracked.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>The RTT for echoing 1k bytes of UDP data successfully.</summary>
</histogram>

<histogram name="NetConnectivity2.Send6.PacketsSent">
  <obsolete>
    Deprecated 04/2016 as doesn't have data nor owner.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    This histogram records how many packets (out of 6 attempted) were sent via
    UDP as rapidly as possible, just after successfully sending an UMA upload.
  </summary>
</histogram>

<histogram name="NetConnectivity2.Send6.SeriesAcked">
  <obsolete>
    Deprecated 04/2016 as doesn't have data nor owner.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Chrome sends 6 UDP packets in a row to test to see if there is a
    probabalistic dependency in packet loss for consecutive packets.  We record
    a bit vector of packets received, where the least significant bit is a 1 if
    the first packet was received, etc.  For example, if all packets other than
    packet 2 and 4 are responded to, then we'd have a sample (in binary) of
    110101B, or 53.
  </summary>
</histogram>

<histogram name="NetConnectivity2.Sent21">
  <obsolete>
    Deprecated 04/2016 as doesn't have data nor owner.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    In this experiment, 21 packets were sent to Google via UDP as rapidly as
    possible, just after successfully sending an UMA upload. Each packet was
    numbered, as was its ACK sent back by Google. If no packets (of the 21) were
    ever ACKed, then the port is assumed to be blocked, and no data is recorded
    in this histogram. If the port is not blocked, then this histogram shows the
    number of echo responses received from the first
  </summary>
</histogram>

<histogram name="NetConnectivity2.Sent21.AckReceivedForNthPacket">
  <obsolete>
    Deprecated 04/2016 as doesn't have data nor owner.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    In this experiment, 21 packets were sent to Google via UDP as rapidly as
    possible, just after successfully sending an UMA upload. Each packet was
    numbered, as was its ACK sent back by Google. This histogram records, for
    each packet number, how often we received an ACK for that packet.
  </summary>
</histogram>

<histogram name="NetConnectivity2.Sent21.GotAnAck" enum="BooleanSuccess">
  <obsolete>
    Deprecated 04/2016 as doesn't have data nor owner.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    In this experiment, 21 packets were sent to Google via UDP as rapidly as
    possible, just after successfully sending an UMA upload. If no packets (of
    the 21) were ever ACKed, then the port is assumed to be blocked. The
    histogram shows if we ever got an ACK for a packet in our series of 21.
  </summary>
</histogram>

<histogram name="NetConnectivity2.Sent21.PacketsSent">
  <obsolete>
    Deprecated 04/2016 as doesn't have data nor owner.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    This histogram records how many packets (out of 21 attempted) were sent via
    UDP as rapidly as possible, just after successfully sending an UMA upload.
  </summary>
</histogram>

<histogram name="NetConnectivity3">
  <obsolete>
    Deprecated 04/2016 as doesn't have data nor owner.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    In this experiment, 21 packets were sent to Google via UDP on port 443 or
    6121.
  </summary>
</histogram>

<histogram name="NetConnectivity3.NonPacedPacket.Sent21.443.100B.PacketDelay"
    units="ms">
  <obsolete>
    Deprecated 04/2016 as doesn't have data nor owner.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary/>
</histogram>

<histogram name="NetConnectivity3.NonPacedPacket.Sent21.443.1200B.PacketDelay"
    units="ms">
  <obsolete>
    Deprecated 04/2016 as doesn't have data nor owner.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary/>
</histogram>

<histogram name="NetConnectivity3.NonPacedPacket.Sent21.443.500B.PacketDelay"
    units="ms">
  <obsolete>
    Deprecated 04/2016 as doesn't have data nor owner.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary/>
</histogram>

<histogram name="NetConnectivity3.NonPacedPacket.Sent21.6121.100B.PacketDelay"
    units="ms">
  <obsolete>
    Deprecated 04/2016 as doesn't have data nor owner.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary/>
</histogram>

<histogram name="NetConnectivity3.NonPacedPacket.Sent21.6121.1200B.PacketDelay"
    units="ms">
  <obsolete>
    Deprecated 04/2016 as doesn't have data nor owner.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary/>
</histogram>

<histogram name="NetConnectivity3.NonPacedPacket.Sent21.6121.500B.PacketDelay"
    units="ms">
  <obsolete>
    Deprecated 04/2016 as doesn't have data nor owner.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary/>
</histogram>

<histogram name="NetConnectivity3.NonPacedPacket.Sent21.GotAnAck"
    enum="BooleanSuccess">
  <obsolete>
    Deprecated 04/2016 as doesn't have data nor owner.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary/>
</histogram>

<histogram name="NetConnectivity3.NonPacedPacket.Sent21.Success.RTT" units="ms">
  <obsolete>
    Deprecated 04/2016 as doesn't have data nor owner.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary/>
</histogram>

<histogram name="NetConnectivity3.PacedPacket.Sent21.443.100B.PacketDelay"
    units="ms">
  <obsolete>
    Deprecated 04/2016 as doesn't have data nor owner.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary/>
</histogram>

<histogram name="NetConnectivity3.PacedPacket.Sent21.443.1200B.PacketDelay"
    units="ms">
  <obsolete>
    Deprecated 04/2016 as doesn't have data nor owner.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary/>
</histogram>

<histogram name="NetConnectivity3.PacedPacket.Sent21.443.500B.PacketDelay"
    units="ms">
  <obsolete>
    Deprecated 04/2016 as doesn't have data nor owner.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary/>
</histogram>

<histogram name="NetConnectivity3.PacedPacket.Sent21.6121.100B.PacketDelay"
    units="ms">
  <obsolete>
    Deprecated 04/2016 as doesn't have data nor owner.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary/>
</histogram>

<histogram name="NetConnectivity3.PacedPacket.Sent21.6121.1200B.PacketDelay"
    units="ms">
  <obsolete>
    Deprecated 04/2016 as doesn't have data nor owner.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary/>
</histogram>

<histogram name="NetConnectivity3.PacedPacket.Sent21.6121.500B.PacketDelay"
    units="ms">
  <obsolete>
    Deprecated 04/2016 as doesn't have data nor owner.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary/>
</histogram>

<histogram name="NetConnectivity3.PacedPacket.Sent21.GotAnAck"
    enum="BooleanSuccess">
  <obsolete>
    Deprecated 04/2016 as doesn't have data nor owner.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary/>
</histogram>

<histogram name="NetConnectivity3.PacedPacket.Sent21.Success.RTT" units="ms">
  <obsolete>
    Deprecated 04/2016 as doesn't have data nor owner.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary/>
</histogram>

<histogram name="NetConnectivity3.StartPacket.Send6.PacketsSent">
  <obsolete>
    Deprecated 9/2012. No longer tracked.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    This histogram records how many packets (out of 6 attempted) were sent via
    UDP as rapidly as possible, just after successfully sending an UMA upload.
  </summary>
</histogram>

<histogram name="NetConnectivity3.StartPacket.Sent21.443.100B.PacketDelay"
    units="ms">
  <obsolete>
    Deprecated 04/2016 as doesn't have data nor owner.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary/>
</histogram>

<histogram name="NetConnectivity3.StartPacket.Sent21.443.1200B.PacketDelay"
    units="ms">
  <obsolete>
    Deprecated 04/2016 as doesn't have data nor owner.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary/>
</histogram>

<histogram name="NetConnectivity3.StartPacket.Sent21.443.500B.PacketDelay"
    units="ms">
  <obsolete>
    Deprecated 04/2016 as doesn't have data nor owner.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary/>
</histogram>

<histogram name="NetConnectivity3.StartPacket.Sent21.6121.100B.PacketDelay"
    units="ms">
  <obsolete>
    Deprecated 04/2016 as doesn't have data nor owner.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary/>
</histogram>

<histogram name="NetConnectivity3.StartPacket.Sent21.6121.1200B.PacketDelay"
    units="ms">
  <obsolete>
    Deprecated 04/2016 as doesn't have data nor owner.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary/>
</histogram>

<histogram name="NetConnectivity3.StartPacket.Sent21.6121.500B.PacketDelay"
    units="ms">
  <obsolete>
    Deprecated 04/2016 as doesn't have data nor owner.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary/>
</histogram>

<histogram name="NetConnectivity3.StartPacket.Sent21.GotAnAck"
    enum="BooleanSuccess">
  <obsolete>
    Deprecated 04/2016 as doesn't have data nor owner.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary/>
</histogram>

<histogram name="NetConnectivity3.StartPacket.Sent21.Success.RTT" units="ms">
  <obsolete>
    Deprecated 04/2016 as doesn't have data nor owner.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary/>
</histogram>

<histogram name="NetConnectivity4">
  <obsolete>
    Deprecated 04/2016 as doesn't have data nor owner.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    In this experiment, a few packets were sent from Google to clients via UDP
    on port 443 or 80 to perform net connectivity test.
  </summary>
</histogram>

<histogram name="NetConnectivity5">
  <obsolete>
    Deprecated 04/2016 as doesn't have data nor owner.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    In this experiment, a few packets were sent from Google to clients via UDP
    on port 443 or 80 to perform net connectivity test.
  </summary>
</histogram>

<histogram name="NetConnectivity5.TestFailed.WritePending"
    enum="BooleanSuccess">
  <obsolete>
    Deprecated 04/2016 as doesn't have data nor owner.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Next NetConnectivity5 experiment weren't started because there is an
    outstading pending write.
  </summary>
</histogram>

<histogram name="Network.3G.Gobi.Activation" units="ms">
  <owner>benchan@chromium.org</owner>
  <summary>The time the Gobi modem takes to complete activation.</summary>
</histogram>

<histogram name="Network.3G.Gobi.Connect" units="ms">
  <owner>benchan@chromium.org</owner>
  <summary>
    The time the Gobi modem takes to connect to the cellular network.
  </summary>
</histogram>

<histogram name="Network.3G.Gobi.Disconnect" units="ms">
  <owner>benchan@chromium.org</owner>
  <summary>
    The time the Gobi modem takes to disconnect from the cellular network.
  </summary>
</histogram>

<histogram name="Network.3G.Gobi.FirmwareDownload.Attempts">
  <owner>benchan@chromium.org</owner>
  <summary>Number of attempts taken to install Gobi firmware.</summary>
</histogram>

<histogram name="Network.3G.Gobi.FirmwareDownload.Time" units="ms">
  <owner>benchan@chromium.org</owner>
  <summary>The time it takes to install Gobi firmware.</summary>
</histogram>

<histogram name="Network.3G.Gobi.Registration" units="ms">
  <owner>benchan@chromium.org</owner>
  <summary>
    The time the Gobi modem takes to register on the cellular network.
  </summary>
</histogram>

<histogram name="Network.3G.Gobi.SetPower" enum="Network3GGobiError">
  <owner>benchan@chromium.org</owner>
  <summary>Errors experienced during Gobi device powerup.</summary>
</histogram>

<histogram name="Network.Cellular.TimeOnline" units="seconds">
  <obsolete>
    Deprecated 04/2016 as doesn't have data nor owner.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Chrome OS network metric sampling the time spent using Cellular to transport
    data.  These data are mostly useful when summed and compared to TimeOnline
    for other network technologies (e.g. WiFi vs Cellular).
  </summary>
</histogram>

<histogram name="Network.Cellular.TimeToConfig" units="ms">
  <obsolete>
    Deprecated 04/2016 as doesn't have data nor owner.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Chrome OS network performance metric sampling the time to join a 3G/Cellular
    network and configure Layer 3 state.
  </summary>
</histogram>

<histogram name="Network.Cellular.TimeToOnline" units="ms">
  <obsolete>
    Deprecated 04/2016 as doesn't have data nor owner.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Chrome OS network performance metric sampling the time to determine that a
    3G/Cellular network is online after configuring Layer 3 state.
  </summary>
</histogram>

<histogram name="Network.Cellular.TimeToPortal" units="ms">
  <obsolete>
    Deprecated 04/2016 as doesn't have data nor owner.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Chrome OS network performance metric sampling the time to determine that a
    3G/Cellular network is in a captive portal after configuring Layer 3 state.
  </summary>
</histogram>

<histogram name="Network.Cellular.UsageRequestStatus"
    enum="NetworkCellularUsageRequestStatus">
  <obsolete>
    Deprecated 04/2016 as doesn't have data nor owner.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>Chrome OS cellular usage API request status codes.</summary>
</histogram>

<histogram name="Network.Ethernet.TimeOnline" units="seconds">
  <obsolete>
    Deprecated 04/2016 as doesn't have data nor owner.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Chrome OS network metric sampling the time spent using Ethernet to transport
    data.  These data are mostly useful when summed and compared to TimeOnline
    for other network technologies (e.g. WiFi vs Cellular).
  </summary>
</histogram>

<histogram name="Network.Ethernet.TimeToConfig" units="ms">
  <obsolete>
    Deprecated 04/2016 as doesn't have data nor owner.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Chrome OS network performance metric sampling the time to join a wired
    Ethernet network and configure Layer 3 state (typically acquire a DHCP
    lease).
  </summary>
</histogram>

<histogram name="Network.Ethernet.TimeToOnline" units="ms">
  <obsolete>
    Deprecated 04/2016 as doesn't have data nor owner.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Chrome OS network performance metric sampling the time to determine that an
    Ethernet network is online after configuring Layer 3 state.
  </summary>
</histogram>

<histogram name="Network.Ethernet.TimeToPortal" units="ms">
  <obsolete>
    Deprecated 04/2016 as doesn't have data nor owner.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Chrome OS network performance metric sampling the time to determine that an
    Ethernet network is in a captive portal after configuring Layer 3 state.
  </summary>
</histogram>

<histogram name="Network.MigrationNssToPem"
    enum="MigrationNssToPemNetworkTypes">
  <obsolete>
    Deprecated 8/2015.
  </obsolete>
  <owner>cschuet@chromium.org</owner>
  <summary>
    Chrome OS metric counting the number of network configurations that
    contained a NSS nickname identifying a CA certificate, which triggered the
    migration to PEM encoding. This metric doesn't consider whether the
    migration was successful but once a migration was successful the nickname is
    removed.
  </summary>
</histogram>

<histogram name="Network.ServiceErrors" enum="NetworkServiceError">
  <obsolete>
    Deprecated 04/2016 as doesn't have data nor owner.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>Chrome OS connection manager service errors seen.</summary>
</histogram>

<histogram name="Network.Shill.Cellular.3GPPRegistrationDelayedDrop"
    enum="NetworkCellular3GPPRegistrationDelayedDrop">
  <owner>quiche@chromium.org</owner>
  <summary>
    Chrome OS network diagnostic metric sampling the number of cellular network
    flakes. A network flake occurs when the signal strength goes below detection
    level for a short duration.
  </summary>
</histogram>

<histogram name="Network.Shill.Cellular.AutoConnectTotalTime" units="ms">
  <owner>quiche@chromium.org</owner>
  <summary>
    Chrome OS network diagnostic metric sampling the total amount of time spent
    from the start of the first auto-connect request until when the cellular
    modem successfully connects to the network.
  </summary>
</histogram>

<histogram name="Network.Shill.Cellular.AutoConnectTries">
  <owner>quiche@chromium.org</owner>
  <summary>
    Chrome OS network diagnostic metric sampling the number of auto-connect
    tries that were attempted before the cellular modem successfully connected
    to the network.
  </summary>
</histogram>

<histogram name="Network.Shill.Cellular.DevicePresenceStatus"
    enum="BooleanPresent">
  <owner>zqiu@chromium.org</owner>
  <summary>
    Chrome OS network metric that tracks the presence of a Cellular device in
    the system. A sample is emitted once every 3 minutes.
  </summary>
</histogram>

<histogram name="Network.Shill.Cellular.DHCPOptionFailureDetected"
    enum="NetworkDHCPOptionFailure">
  <obsolete>
    Deprecated 5/2014, and replaced by Network.Shill.DHCPOptionFailureDetected.
  </obsolete>
  <owner>quiche@chromium.org</owner>
  <summary>
    Chrome OS network metric that tracks the number of DHCP option failures
    encountered by Shill.  This indicates that Shill is using minimal DHCP
    options due to suspected MTU issues on the return path from the DHCP server
    back to the client.
  </summary>
</histogram>

<histogram name="Network.Shill.Cellular.Disconnect"
    enum="NetworkDisconnectType">
  <owner>quiche@chromium.org</owner>
  <summary>
    Chrome OS network usage metric that tracks whether the cellular network was
    disconnected due to an error or was explicitly disconnected by the user.
  </summary>
</histogram>

<histogram name="Network.Shill.Cellular.Drop" enum="NetworkCellularTechnology">
  <owner>quiche@chromium.org</owner>
  <summary>
    Chrome OS cellular network metric that tracks the number of drops based on
    the network technology.
  </summary>
</histogram>

<histogram name="Network.Shill.Cellular.ExpiredLeaseLengthSeconds"
    units="seconds">
  <owner>quiche@chromium.org</owner>
  <summary>
    Chrome OS network performance metric that tracks the length of a lease for a
    cellular network at the time it expired without the DHCP client being able
    to renew it.
  </summary>
</histogram>

<histogram name="Network.Shill.Cellular.IPv6ConnectivityStatus"
    enum="IPv6ConnectivityStatus">
  <owner>zqiu@chromium.org</owner>
  <summary>
    Chrome OS network metric that tracks the presence of complete IPv6
    configuration at the time when cellular connection is established.
  </summary>
</histogram>

<histogram name="Network.Shill.Cellular.NetworkConnectionIPType"
    enum="NetworkConnectionIPType">
  <owner>zqiu@chromium.org</owner>
  <summary>
    Chrome OS network metric that tracks the types of IP configuration used for
    establishing cellular connections.
  </summary>
</histogram>

<histogram name="Network.Shill.Cellular.OutOfCreditsReason"
    enum="NetworkCellularOutOfCreditsReason">
  <owner>quiche@chromium.org</owner>
  <summary>
    Chrome OS cellular network metric that tracks the number of out-of-credits
    detected based on the cause that triggered the out-of-credits.
  </summary>
</histogram>

<histogram name="Network.Shill.Cellular.PortalAttempts">
  <owner>quiche@chromium.org</owner>
  <summary>
    Chrome OS network diagnostic metric sampling the number of portal detection
    attempts per pass for a cellular network. This includes failure, timeout and
    successful attempts.
  </summary>
</histogram>

<histogram name="Network.Shill.Cellular.PortalAttemptsToOnline">
  <owner>quiche@chromium.org</owner>
  <summary>
    Chrome OS network diagnostic metric sampling the total number of portal
    detection attempts performed for a cellular network between the Connected
    and Online state. This includes failure, timeout and successful attempts.
  </summary>
</histogram>

<histogram name="Network.Shill.Cellular.PortalResult"
    enum="NetworkPortalResult">
  <owner>quiche@chromium.org</owner>
  <summary>
    Chrome OS network diagnostic metric sampling the result of portal detections
    for a cellular network.
  </summary>
</histogram>

<histogram name="Network.Shill.Cellular.SignalStrengthBeforeDrop">
  <owner>quiche@chromium.org</owner>
  <summary>
    Chrome OS network metric sampling the signal strength (0-100) of the
    cellular modem before it dropped from the network.
  </summary>
</histogram>

<histogram name="Network.Shill.Cellular.TimeOnline" units="seconds">
  <owner>quiche@chromium.org</owner>
  <summary>
    Chrome OS network metric sampling the time spent using cellular to transport
    data.  These data are mostly useful when summed and compared to TimeOnline
    for other network technologies (e.g. WiFi vs Cellular).
  </summary>
</histogram>

<histogram name="Network.Shill.Cellular.TimeToConfig" units="ms">
  <owner>quiche@chromium.org</owner>
  <summary>
    Chrome OS network performance metric sampling the time to join a cellular
    network and configure Layer 3 state.
  </summary>
</histogram>

<histogram name="Network.Shill.Cellular.TimeToConnect" units="ms">
  <owner>quiche@chromium.org</owner>
  <summary>
    Chrome OS network performance metric sampling the time to connect a cellular
    modem.
  </summary>
</histogram>

<histogram name="Network.Shill.Cellular.TimeToDisable" units="ms">
  <owner>quiche@chromium.org</owner>
  <summary>
    Chrome OS network performance metric sampling the time to disable a cellular
    modem.
  </summary>
</histogram>

<histogram name="Network.Shill.Cellular.TimeToEnable" units="ms">
  <owner>quiche@chromium.org</owner>
  <summary>
    Chrome OS network performance metric sampling the time to enable a cellular
    modem.
  </summary>
</histogram>

<histogram name="Network.Shill.Cellular.TimeToInitialize" units="ms">
  <owner>quiche@chromium.org</owner>
  <summary>
    Chrome OS network performance metric sampling the time to initialize a
    cellular modem.
  </summary>
</histogram>

<histogram name="Network.Shill.Cellular.TimeToOnline" units="ms">
  <owner>quiche@chromium.org</owner>
  <summary>
    Chrome OS network performance metric sampling the time to determine that a
    cellular network is online after configuring Layer 3 state.
  </summary>
</histogram>

<histogram name="Network.Shill.Cellular.TimeToPortal" units="ms">
  <owner>quiche@chromium.org</owner>
  <summary>
    Chrome OS network performance metric sampling the time to determine that a
    cellular network is in a captive portal after configuring Layer 3 state.
  </summary>
</histogram>

<histogram name="Network.Shill.Cellular.TimeToScan" units="ms">
  <owner>quiche@chromium.org</owner>
  <summary>
    Chrome OS network performance metric sampling the time to scan a cellular
    network and register a modem.
  </summary>
</histogram>

<histogram name="Network.Shill.ConnectionDiagnosticsIssue"
    enum="ConnectionDiagnosticsIssue">
  <owner>samueltan@chromium.org</owner>
  <summary>
    Chrome OS network metric that tracks the connectivity issue diagnosed by the
    ConnectionDiagnostics class in Shill. This metric is logged each time a
    ConnectionDiagnostics object completes its diagnostics actions and reports
    the results to its caller.
  </summary>
</histogram>

<histogram name="Network.Shill.CorruptedProfile" enum="NetworkCorruptedProfile">
  <owner>quiche@chromium.org</owner>
  <summary>
    Chrome OS cellular network metric that tracks the number of corrupted
    profiles encountered by Shill.
  </summary>
</histogram>

<histogram name="Network.Shill.DarkResumeActionResult"
    enum="ShillSuspendTerminationDarkResumeActionResult">
  <owner>samueltan@chromium.org</owner>
  <summary>
    Chrome OS network diagnostic metric sampling the number of dark resume
    actions that successfully complete or fail when shill suspends.
  </summary>
</histogram>

<histogram name="Network.Shill.DarkResumeActionsTimeTaken" units="ms">
  <owner>samueltan@chromium.org</owner>
  <summary>
    Chrome OS network diagnostic metric sampling the time in milliseconds it
    takes dark resume actions to complete when shill suspends.
  </summary>
</histogram>

<histogram name="Network.Shill.DarkResumeActionTime" units="ms">
  <owner>samueltan@chromium.org</owner>
  <obsolete>
    Deprecated 01/2015. Migrated to Network.Shill.DarkResumeActionsTimeTaken.
  </obsolete>
  <summary>
    Chrome OS network diagnostic metric sampling the time in milliseconds it
    takes dark resume actions to complete when shill suspends.
  </summary>
</histogram>

<histogram name="Network.Shill.DarkResumeScanNumRetries">
  <owner>samueltan@chromium.org</owner>
  <summary>
    Chrome OS network metric sampling the number of times a dark resume scan is
    retried in a single dark resume.
  </summary>
</histogram>

<histogram name="Network.Shill.DarkResumeScanRetryResult"
    enum="DarkResumeScanRetryResult">
  <owner>samueltan@chromium.org</owner>
  <summary>
    Chrome OS network metric that tracks whether dark resume scan retries led to
    the system suspending from dark resume in a connected state. This metric is
    only recorded in dark resumes when at least one dark resume scan retry was
    launched.
  </summary>
</histogram>

<histogram name="Network.Shill.DeviceConnectionStatus" enum="ConnectionStatus">
  <owner>zqiu@chromium.org</owner>
  <summary>
    Chrome OS network performance metric that tracks the connection status of
    the device. A sample is emitted once every 3 minutes.
  </summary>
</histogram>

<histogram name="Network.Shill.DeviceRemovedEvent" enum="DeviceTechnologyType">
  <owner>zqiu@chromium.org</owner>
  <summary>
    Chrome OS network metric that tracks the network device removed events for
    each device type.
  </summary>
</histogram>

<histogram name="Network.Shill.DHCPClientMTUValue" units="bytes">
  <owner>pstew@chromium.org</owner>
  <summary>
    Chrome OS network diagnostic metric sampling the MTU value proposed by the
    DHCP server.  A sample is emitted each time the DHCP client completes
    negotiation with a server.
  </summary>
</histogram>

<histogram name="Network.Shill.DHCPClientStatus" enum="NetworkDhcpClientStatus">
  <owner>pstew@chromium.org</owner>
  <summary>
    Chrome OS network diagnostic metric sampling the current state of the DHCP
    client.  A sample is emitted each time the DHCP client state changes.
  </summary>
</histogram>

<histogram name="Network.Shill.DHCPOptionFailureDetected"
    enum="NetworkTechnology">
  <owner>zqiu@chromium.org</owner>
  <summary>
    Chrome OS network metric that tracks the number of DHCP option failures
    encountered by Shill for each network technology.  This indicates that Shill
    is using minimal DHCP options due to suspected MTU issues on the return path
    from the DHCP server back to the client.
  </summary>
</histogram>

<histogram name="Network.Shill.Ethernet.DevicePresenceStatus"
    enum="BooleanPresent">
  <owner>zqiu@chromium.org</owner>
  <summary>
    Chrome OS network metric that tracks the presence of an Ethernet device in
    the system. A sample is emitted once every 3 minutes.
  </summary>
</histogram>

<histogram name="Network.Shill.Ethernet.DHCPOptionFailureDetected"
    enum="NetworkDHCPOptionFailure">
  <obsolete>
    Deprecated 5/2014, and replaced by Network.Shill.DHCPOptionFailureDetected.
  </obsolete>
  <owner>quiche@chromium.org</owner>
  <summary>
    Chrome OS network metric that tracks the number of DHCP option failures
    encountered by Shill.  This indicates that Shill is using minimal DHCP
    options due to suspected MTU issues on the return path from the DHCP server
    back to the client.
  </summary>
</histogram>

<histogram name="Network.Shill.Ethernet.Disconnect"
    enum="NetworkDisconnectType">
  <owner>quiche@chromium.org</owner>
  <summary>
    Chrome OS network usage metric that tracks whether the Ethernet network was
    disconnected due to an error or was explicitly disconnected by the user.
  </summary>
</histogram>

<histogram name="Network.Shill.Ethernet.ExpiredLeaseLengthSeconds"
    units="seconds">
  <owner>quiche@chromium.org</owner>
  <summary>
    Chrome OS network performance metric that tracks the length of a lease for
    an Ethernet network at the time it expired without the DHCP client being
    able to renew it.
  </summary>
</histogram>

<histogram name="Network.Shill.Ethernet.LinkMonitorBroadcastErrorsAtFailure">
  <owner>quiche@chromium.org</owner>
  <summary>
    Chrome OS network performance metric that tracks the number of LinkMonitor
    broadcast errors that were accrued on an Ethernet network at the time that
    the link was declaired to be failed.
  </summary>
</histogram>

<histogram name="Network.Shill.Ethernet.LinkMonitorFailure"
    enum="LinkMonitorFailureType">
  <owner>quiche@chromium.org</owner>
  <summary>
    Chrome OS metric that signals the type of failure the LinkMonitor
    encountered which caused it to stop monitoring an Ethernet network.
  </summary>
</histogram>

<histogram name="Network.Shill.Ethernet.LinkMonitorResponseTimeSample"
    units="ms">
  <owner>quiche@chromium.org</owner>
  <summary>
    Chrome OS network performance metric that tracks the number of milliseconds
    between an ARP request and a received reply on an Ethernet network.
  </summary>
</histogram>

<histogram name="Network.Shill.Ethernet.LinkMonitorSecondsToFailure"
    units="seconds">
  <owner>quiche@chromium.org</owner>
  <summary>
    Chrome OS network performance metric that tracks the number of seconds from
    the start of the LinkMonitor until failure on an Ethernet network.
  </summary>
</histogram>

<histogram name="Network.Shill.Ethernet.LinkMonitorUnicastErrorsAtFailure">
  <owner>quiche@chromium.org</owner>
  <summary>
    Chrome OS network performance metric that tracks the number of LinkMonitor
    unicast errors that were accrued on an Ethernet network at the time that the
    link was declaired to be failed.
  </summary>
</histogram>

<histogram name="Network.Shill.Ethernet.PortalAttempts">
  <owner>quiche@chromium.org</owner>
  <summary>
    Chrome OS network diagnostic metric sampling the number of portal detection
    attempts per pass for an Ethernet network. This includes failure, timeout
    and successful attempts.
  </summary>
</histogram>

<histogram name="Network.Shill.Ethernet.PortalAttemptsToOnline">
  <owner>quiche@chromium.org</owner>
  <summary>
    Chrome OS network diagnostic metric sampling the total number of portal
    detection attempts performed for an Ethernet network between the Connected
    and Online state. This includes failure, timeout and successful attempts.
  </summary>
</histogram>

<histogram name="Network.Shill.Ethernet.PortalResult"
    enum="NetworkPortalResult">
  <owner>quiche@chromium.org</owner>
  <summary>
    Chrome OS network diagnostic metric sampling the result of portal detections
    for an Ethernet network.
  </summary>
</histogram>

<histogram name="Network.Shill.Ethernet.TimeOnline" units="seconds">
  <owner>quiche@chromium.org</owner>
  <summary>
    Chrome OS network metric sampling the time spent using Ethernet to transport
    data.  These data are mostly useful when summed and compared to TimeOnline
    for other network technologies (e.g. WiFi vs Cellular).
  </summary>
</histogram>

<histogram name="Network.Shill.Ethernet.TimeToConfig" units="ms">
  <owner>quiche@chromium.org</owner>
  <summary>
    Chrome OS network performance metric sampling the time to join a wired
    Ethernet network and configure Layer 3 state (typically acquire a DHCP
    lease).
  </summary>
</histogram>

<histogram name="Network.Shill.Ethernet.TimeToInitialize" units="ms">
  <owner>quiche@chromium.org</owner>
  <summary>
    Chrome OS network performance metric sampling the time to initialize an
    Ethernet device.
  </summary>
</histogram>

<histogram name="Network.Shill.Ethernet.TimeToOnline" units="ms">
  <owner>quiche@chromium.org</owner>
  <summary>
    Chrome OS network performance metric sampling the time to determine that an
    Ethernet network is online after configuring Layer 3 state.
  </summary>
</histogram>

<histogram name="Network.Shill.Ethernet.TimeToPortal" units="ms">
  <owner>quiche@chromium.org</owner>
  <summary>
    Chrome OS network performance metric sampling the time to determine that an
    Ethernet network is in a captive portal after configuring Layer 3 state.
  </summary>
</histogram>

<histogram name="Network.Shill.PPPMTUValue" units="bytes">
  <owner>gdk@chromium.org</owner>
  <summary>
    Chrome OS network diagnostic metric sampling the MTU value provided by the
    upstream PPP peer.  A sample is emitted each time the client successfully
    negotiates an MTU value via PPP.
  </summary>
</histogram>

<histogram name="Network.Shill.ServiceErrors" enum="NetworkServiceError">
  <owner>quiche@chromium.org</owner>
  <summary>Chrome OS connection manager service errors seen.</summary>
</histogram>

<histogram name="Network.Shill.ServicesOnSameNetwork">
  <owner>zqiu@chromium.org</owner>
  <summary>
    Chrome OS network metric sampling the number of services that are connected
    to the currently connected network.
  </summary>
</histogram>

<histogram name="Network.Shill.SuspendActionResult"
    enum="ShillSuspendTerminationDarkResumeActionResult">
  <owner>samueltan@chromium.org</owner>
  <summary>
    Chrome OS network diagnostic metric sampling the number of suspend actions
    that successfully complete or fail when shill suspends.
  </summary>
</histogram>

<histogram name="Network.Shill.SuspendActionsTimeTaken" units="ms">
  <owner>samueltan@chromium.org</owner>
  <summary>
    Chrome OS network diagnostic metric sampling the time in milliseconds it
    takes suspend actions to complete when shill suspends.
  </summary>
</histogram>

<histogram name="Network.Shill.SuspendActionTime" units="ms">
  <owner>samueltan@chromium.org</owner>
  <obsolete>
    Deprecated 01/2015. Migrated to Network.Shill.SuspendActionsTimeTaken.
  </obsolete>
  <summary>
    Chrome OS network diagnostic metric sampling the time in milliseconds it
    takes suspend actions to complete when shill suspends.
  </summary>
</histogram>

<histogram name="Network.Shill.TerminationActionResult"
    enum="ShillSuspendTerminationDarkResumeActionResult">
  <owner>quiche@chromium.org</owner>
  <summary>
    Chrome OS network diagnostic metric sampling the number of termination
    actions that successfully complete or fail when shill terminates. Previously
    deprecated in 10/2012 and brought back in 10/2014.
  </summary>
</histogram>

<histogram name="Network.Shill.TerminationActionResult.OnSuspend"
    enum="ShillSuspendTerminationDarkResumeActionResult">
  <owner>quiche@chromium.org</owner>
  <obsolete>
    Deprecated 10/2014. Migrated to Network.Shill.SuspendActionResult.
  </obsolete>
  <summary>
    Chrome OS network diagnostic metric sampling the number of termination
    actions that successfully complete or fail when shill suspends.
  </summary>
</histogram>

<histogram name="Network.Shill.TerminationActionResult.OnTerminate"
    enum="ShillSuspendTerminationDarkResumeActionResult">
  <owner>quiche@chromium.org</owner>
  <obsolete>
    Deprecated 10/2014. Migrated to Network.Shill.TerminationActionResult.
  </obsolete>
  <summary>
    Chrome OS network diagnostic metric sampling the number of termination
    actions that successfully complete or fail when shill terminates.
  </summary>
</histogram>

<histogram name="Network.Shill.TerminationActionsTimeTaken" units="ms">
  <owner>samueltan@chromium.org</owner>
  <summary>
    Chrome OS network diagnostic metric sampling the time in milliseconds it
    takes termination actions to complete when shill terminates.
  </summary>
</histogram>

<histogram name="Network.Shill.TerminationActionTime" units="ms">
  <owner>samueltan@chromium.org</owner>
  <obsolete>
    Deprecated 01/2015. Migrated to Network.Shill.TerminationActionsTimeTaken.
  </obsolete>
  <summary>
    Chrome OS network diagnostic metric sampling the time in milliseconds it
    takes termination actions to complete when shill terminates.
  </summary>
</histogram>

<histogram name="Network.Shill.TerminationActionTime.OnSuspend" units="ms">
  <owner>quiche@chromium.org</owner>
  <obsolete>
    Deprecated 10/2014. Migrated to Network.Shill.SuspendActionTime.
  </obsolete>
  <summary>
    Chrome OS network diagnostic metric sampling the time in milliseconds it
    takes termination actions to complete when shill suspends.
  </summary>
</histogram>

<histogram name="Network.Shill.TerminationActionTime.OnTerminate" units="ms">
  <owner>quiche@chromium.org</owner>
  <obsolete>
    Deprecated 10/2014. Migrated to Network.Shill.TerminationActionTime.
  </obsolete>
  <summary>
    Chrome OS network diagnostic metric sampling the time in milliseconds it
    takes termination actions to complete when shill terminates.
  </summary>
</histogram>

<histogram name="Network.Shill.TimeToDrop" units="seconds">
  <owner>quiche@chromium.org</owner>
  <summary>
    Chrome OS network stability metric sampling the time in seconds between the
    networking going online to going offline. Offline events due to device
    shutdown or suspend are ignored (along with the online time before that
    offline event).
  </summary>
</histogram>

<histogram name="Network.Shill.UserInitiatedEvents" enum="UserInitiatedEvent">
  <owner>zqiu@chromium.org</owner>
  <summary>
    Chrome OS network metric that tracks the number of user-initiated events.
  </summary>
</histogram>

<histogram name="Network.Shill.Vpn.Driver" enum="VPNDriver">
  <owner>quiche@chromium.org</owner>
  <summary>
    Chrome OS network usage metric sampled on each successful VPN connection
    that tracks the VPN connection type.
  </summary>
</histogram>

<histogram name="Network.Shill.Vpn.RemoteAuthenticationType"
    enum="VPNRemoteAuthenticationType">
  <owner>quiche@chromium.org</owner>
  <summary>
    Chrome OS network usage metric sampled on each successful VPN connection
    that tracks the remote authentication method.
  </summary>
</histogram>

<histogram name="Network.Shill.Vpn.TimeOnline" units="ms">
  <owner>quiche@chromium.org</owner>
  <summary>
    Chrome OS network metric sampling the time spent using VPN to transport
    data.  These data are mostly useful when summed and compared to TimeOnline
    for other network technologies (e.g. WiFi vs Cellular).  A sample is emitted
    every time the system transitions from primary connectivity through a VPN to
    some other type of connectivity.  The value of the sample is the time delta
    in seconds from the instant the system transitioned to VPN connectivity.
  </summary>
</histogram>

<histogram name="Network.Shill.Vpn.TimeToConfig" units="ms">
  <owner>quiche@chromium.org</owner>
  <summary>
    Chrome OS network performance metric sampling the time to configure Layer 3
    state on a VPN network (typically acquire a DHCP lease).
  </summary>
</histogram>

<histogram name="Network.Shill.Vpn.TimeToOnline" units="ms">
  <owner>quiche@chromium.org</owner>
  <summary>
    Chrome OS network performance metric sampling the time to determine that a
    WiMax network is online after configuring Layer 3 state.
  </summary>
</histogram>

<histogram name="Network.Shill.Vpn.UserAuthenticationType"
    enum="VPNUserAuthenticationType">
  <owner>quiche@chromium.org</owner>
  <summary>
    Chrome OS network usage metric sampled on each successful VPN connection
    that tracks the user authentication method.
  </summary>
</histogram>

<histogram name="Network.Shill.WiFi.ApDisconnectReason" enum="WiFiReasonCode">
  <owner>quiche@chromium.org</owner>
  <summary>
    Chrome OS network usage metric.  Reason code reported when the AP
    disconnects a WiFi connection.
  </summary>
</histogram>

<histogram name="Network.Shill.WiFi.ApDisconnectType" enum="WiFiStatusType">
  <owner>quiche@chromium.org</owner>
  <summary>
    Chrome OS network usage metric.  Broad category of reason AP disconnected a
    WiFi connection.
  </summary>
</histogram>

<histogram name="Network.Shill.Wifi.ApMode" enum="WiFiApMode">
  <owner>quiche@chromium.org</owner>
  <summary>
    Chrome OS network usage metric.  The AP mode setting for each successful
    WiFi connection.
  </summary>
</histogram>

<histogram name="Network.Shill.WiFi.AutoConnectableServices">
  <owner>zqiu@chromium.org</owner>
  <summary>
    Chrome OS network metric sampling the number of wifi services available for
    auto-connect when auto-connect is initiated for wifi device.
  </summary>
</histogram>

<histogram name="Network.Shill.WiFi.AvailableBSSesAtConnect">
  <owner>zqiu@chromium.org</owner>
  <summary>
    Chrome OS network metric sampling the number of BSSes (endpoints) available
    for the currently connecting wifi service.
  </summary>
</histogram>

<histogram name="Network.Shill.Wifi.Channel" enum="NetworkChannelType">
  <owner>quiche@chromium.org</owner>
  <summary>
    Chrome OS network usage metric.  The channel used for each successful WiFi
    connection.
  </summary>
</histogram>

<histogram name="Network.Shill.WiFi.ClientDisconnectReason"
    enum="WiFiReasonCode">
  <owner>quiche@chromium.org</owner>
  <summary>
    Chrome OS network usage metric.  Reason code reported when the client
    disconnects a WiFi connection.
  </summary>
</histogram>

<histogram name="Network.Shill.WiFi.ClientDisconnectType" enum="WiFiStatusType">
  <owner>quiche@chromium.org</owner>
  <summary>
    Chrome OS network usage metric.  Broad category of reason client
    disconnected a WiFi connection.
  </summary>
</histogram>

<histogram name="Network.Shill.WiFi.DarkResumeUnmatchedScanResultsReceived"
    enum="DarkResumeUnmatchedScanResultReceived">
  <owner>samueltan@chromium.org</owner>
  <summary>
    Chrome OS network metric that tracks whether any unmatched scan results are
    received during dark resume cycles. An unmatched scan result is a set of
    scan results received by shill in response to a scan request that was not
    sent directly by shill in the same dark resume cycle.
  </summary>
</histogram>

<histogram name="Network.Shill.WiFi.DarkResumeWakeReason"
    enum="DarkResumeWakeReason">
  <owner>samueltan@chromium.org</owner>
  <summary>
    Chrome OS network metric that tracks the wake reason for dark resume.
  </summary>
</histogram>

<histogram name="Network.Shill.Wifi.DevicePresenceStatus" enum="BooleanPresent">
  <owner>zqiu@chromium.org</owner>
  <summary>
    Chrome OS network metric that tracks the presence of a WiFi device in the
    system. A sample is emitted once every 3 minutes.
  </summary>
</histogram>

<histogram name="Network.Shill.Wifi.DHCPOptionFailureDetected"
    enum="NetworkDHCPOptionFailure">
  <obsolete>
    Deprecated 5/2014, and replaced by Network.Shill.DHCPOptionFailureDetected.
  </obsolete>
  <owner>quiche@chromium.org</owner>
  <summary>
    Chrome OS network metric that tracks the number of DHCP option failures
    encountered by Shill.  This indicates that Shill is using minimal DHCP
    options due to suspected MTU issues on the return path from the DHCP server
    back to the client.
  </summary>
</histogram>

<histogram name="Network.Shill.Wifi.Disconnect" enum="NetworkDisconnectType">
  <owner>quiche@chromium.org</owner>
  <summary>
    Chrome OS network usage metric that tracks whether an 802.11 wireless
    network was disconnected due to an error or was explicitly disconnected by
    the user.
  </summary>
</histogram>

<histogram name="Network.Shill.Wifi.EapInnerProtocol" enum="EAPInnerProtocol">
  <owner>quiche@chromium.org</owner>
  <summary>
    Chrome OS network usage metric sampled on each successful 802.1x wireless
    connection that tracks the configured inner authentication method.
  </summary>
</histogram>

<histogram name="Network.Shill.Wifi.EapOuterProtocol" enum="EAPOuterProtocol">
  <owner>quiche@chromium.org</owner>
  <summary>
    Chrome OS network usage metric sampled on each successful 802.1x wireless
    connection that tracks the configured outer authentication method.
  </summary>
</histogram>

<histogram name="Network.Shill.Wifi.ExpiredLeaseLengthSeconds" units="seconds">
  <owner>quiche@chromium.org</owner>
  <summary>
    Chrome OS network performance metric that tracks the length of a lease for a
    WiFi network at the time it expired without the DHCP client being able to
    renew it.
  </summary>
</histogram>

<histogram name="Network.Shill.Wifi.FallbackDNSTestResult"
    enum="FallbackDNSTestResult">
  <owner>zqiu@chromium.org</owner>
  <summary>
    Chrome OS network performance metric that tracks the result of the fallback
    DNS test. The fallback DNS test is performed when portal detection failed
    due to DNS failure.
  </summary>
</histogram>

<histogram name="Network.Shill.WiFi.FrequenciesConnectedEver">
  <owner>quiche@chromium.org</owner>
  <summary>
    Chrome OS metric sampling the number of different frequencies (i.e.
    channels) on which a device has connected to a WiFi network. This value is
    sampled every time a WiFi connection is established
    (WPASupplicant::kInterfaceStateCompleted). Note that the word
    &quot;Ever&quot; in the metric name is misleading. Chrome OS actually ages
    out historical information, currently after 3 weeks.
  </summary>
</histogram>

<histogram name="Network.Shill.Wifi.IPv6ConnectivityStatus"
    enum="IPv6ConnectivityStatus">
  <owner>zqiu@chromium.org</owner>
  <summary>
    Chrome OS network metric that tracks the presence of complete IPv6
    configuration at the time when WiFi connection is established.
  </summary>
</histogram>

<histogram name="Network.Shill.Wifi.LinkMonitorBroadcastErrorsAtFailure">
  <owner>quiche@chromium.org</owner>
  <summary>
    Chrome OS network performance metric that tracks the number of LinkMonitor
    broadcast errors that were accrued on an 802.11 wireiless network at the
    time that the link was declaired to be failed.
  </summary>
</histogram>

<histogram name="Network.Shill.Wifi.LinkMonitorFailure"
    enum="LinkMonitorFailureType">
  <owner>quiche@chromium.org</owner>
  <summary>
    Chrome OS metric that signals the type of failure the LinkMonitor
    encountered which caused it to stop monitoring an 802.11 wireless network.
  </summary>
</histogram>

<histogram name="Network.Shill.Wifi.LinkMonitorResponseTimeSample" units="ms">
  <owner>quiche@chromium.org</owner>
  <summary>
    Chrome OS network performance metric that tracks the number of milliseconds
    between an ARP request and a received reply on an 802.11 wireless network.
  </summary>
</histogram>

<histogram name="Network.Shill.Wifi.LinkMonitorSecondsToFailure"
    units="seconds">
  <owner>quiche@chromium.org</owner>
  <summary>
    Chrome OS network performance metric that tracks the number of seconds from
    the start of the LinkMonitor until failure on an 802.11 wireless network.
  </summary>
</histogram>

<histogram name="Network.Shill.Wifi.LinkMonitorUnicastErrorsAtFailure">
  <owner>quiche@chromium.org</owner>
  <summary>
    Chrome OS network performance metric that tracks the number of LinkMonitor
    unicast errors that were accrued on an 802.11 wireless network at the time
    that the link was declaired to be failed.
  </summary>
</histogram>

<histogram name="Network.Shill.Wifi.NetworkConnectionIPType"
    enum="NetworkConnectionIPType">
  <owner>zqiu@chromium.org</owner>
  <summary>
    Chrome OS network metric that tracks the types of IP configuration used for
    establishing WiFi connections.
  </summary>
</histogram>

<histogram name="Network.Shill.Wifi.NetworkProblemDetected"
    enum="NetworkProblemType">
  <owner>zqiu@chromium.org</owner>
  <summary>
    Chrome OS network performance metric that tracks the network problems
    encountered by TrafficMonitor after WiFi connection is established.
  </summary>
</histogram>

<histogram name="Network.Shill.Wifi.PhyMode" enum="NetworkPhyModeType">
  <owner>quiche@chromium.org</owner>
  <summary>
    Chrome OS network usage metric.  The channel type used for each successful
    WiFi connection.
  </summary>
</histogram>

<histogram name="Network.Shill.Wifi.PortalAttempts">
  <owner>quiche@chromium.org</owner>
  <summary>
    Chrome OS network diagnostic metric sampling the number of portal detection
    attempts per pass for an 802.11 wireless network. This includes failure,
    timeout and successful attempts.
  </summary>
</histogram>

<histogram name="Network.Shill.Wifi.PortalAttemptsToOnline">
  <owner>quiche@chromium.org</owner>
  <summary>
    Chrome OS network diagnostic metric sampling the total number of portal
    detection attempts performed for an 802.11 wireless network between the
    Connected and Online state. This includes failure, timeout and successful
    attempts.
  </summary>
</histogram>

<histogram name="Network.Shill.Wifi.PortalResult" enum="NetworkPortalResult">
  <owner>quiche@chromium.org</owner>
  <summary>
    Chrome OS network diagnostic metric sampling the result of portal detections
    for an 802.11 wireless network.
  </summary>
</histogram>

<histogram name="Network.Shill.WiFi.RememberedNetworkCount">
  <owner>pstew@chromium.org</owner>
  <summary>
    Chrome OS network diagnostic metric sampling the number of 802.11 wireless
    networks known by the connection manager at the time a configuration profile
    has been loaded.  A configuration profile is loaded at each system startup,
    and when a user logs in.
  </summary>
</histogram>

<histogram name="Network.Shill.WiFi.RememberedSystemNetworkCount">
  <owner>quiche@chromium.org</owner>
  <summary>
    Chrome OS network metric sampling the number of 802.11 wireless networks
    configured from the system configuration profile. This metric is sampled
    each time a user configuration profile is loaded, such as when a user logs
    in.

    It might be surprising to have a system configuration profile metric sampled
    when a user configuration profile is loaded. But this ensures that we have
    equal numbers of samples for system and user configuration profiles.
  </summary>
</histogram>

<histogram name="Network.Shill.WiFi.RememberedUserNetworkCount">
  <owner>quiche@chromium.org</owner>
  <summary>
    Chrome OS network metric sampling the number of 802.11 wireless networks
    configured from a user configuration profile. This metric is sampled each
    time a user configuration profile is loaded, such as when a user logs in.
  </summary>
</histogram>

<histogram name="Network.Shill.WiFi.ScanResult" enum="WiFiScanResult">
  <owner>quiche@chromium.org</owner>
  <summary>
    Chrome OS network usage metric describing, for a WiFi scan attempt, what
    scan method is used and whether it ends in a connection.
  </summary>
</histogram>

<histogram name="Network.Shill.WiFi.ScanTimeInEbusy" units="ms">
  <owner>quiche@chromium.org</owner>
  <summary>
    Chrome OS network usage metric describing, for a WiFi scan attempt, how many
    milliseconds were spent waiting to talk to the kernel/drivers.
  </summary>
</histogram>

<histogram name="Network.Shill.Wifi.Security" enum="NetworkSecurityType">
  <owner>quiche@chromium.org</owner>
  <summary>
    Chrome OS network usage metric.  The security setting for each successful
    WiFi connection.
  </summary>
</histogram>

<histogram name="Network.Shill.Wifi.SignalAtDisconnect" units="negative dBm">
  <owner>silberst@chromium.org</owner>
  <summary>
    Chrome OS network metric indicating the negative of the dBm received signal
    strength recorded at the time of a WiFi disconnect.
  </summary>
</histogram>

<histogram name="Network.Shill.Wifi.SignalStrength" units="negative dBm">
  <owner>quiche@chromium.org</owner>
  <summary>
    Chrome OS network metric indicating the negative of the dBm received signal
    strength recorded at the time a successful WiFi connection started.
  </summary>
</histogram>

<histogram name="Network.Shill.WiFi.StoppedTxQueueLength" units="frames">
  <owner>quiche@chromium.org</owner>
  <summary>
    Chrome OS network metric indicating the maximal length of any stopped
    mac80211 transmit queue. The metric is reported when a queue-status check
    determines that at least one transmit queue is stopped, and has more than a
    threshold number of frames queued.
  </summary>
</histogram>

<histogram name="Network.Shill.WiFi.StoppedTxQueueReason"
    enum="NetworkQueueStopReason">
  <owner>quiche@chromium.org</owner>
  <summary>
    Chrome OS network metric indicating the reason that mac80211 transmit queues
    were stopped. The metric is reported when a queue-status check determines
    that at least one queue is stopped, and has more than a threshold number of
    frames queued.

    One measurement is reported per stop reason, per queue-status check. Reasons
    that apply to multiple queues are reported only once per queue-status check.
    Reasons that only apply to queues that have a below-threshold number of
    frames are skipped.

    Note that, because we may report multiple stop reasons for a single
    queue-status check, this histogram is not suitable for determining the
    number of times a queue-status check found that the queues were stopped. To
    determine that number, use the count of
    Network.Shill.WiFi.StoppedTxQueueLength reports.
  </summary>
</histogram>

<histogram name="Network.Shill.Wifi.TimeOnline" units="seconds">
  <owner>quiche@chromium.org</owner>
  <summary>
    Chrome OS network metric sampling the time spent using WiFi to transport
    data.  These data are mostly useful when summed and compared to TimeOnline
    for other network technologies (e.g. WiFi vs Cellular).
  </summary>
</histogram>

<histogram name="Network.Shill.Wifi.TimeResumeToReady" units="ms">
  <owner>quiche@chromium.org</owner>
  <summary>
    Chrome OS network performance metric sampling the time from the resume event
    to the time when an 802.11 wireless network has configured its Layer 3
    state.
  </summary>
</histogram>

<histogram name="Network.Shill.Wifi.TimeToConfig" units="ms">
  <owner>quiche@chromium.org</owner>
  <summary>
    Chrome OS network performance metric sampling the time to configure Layer 3
    state on an 802.11 wireless network (typically acquire a DHCP lease).
  </summary>
</histogram>

<histogram name="Network.Shill.Wifi.TimeToConnect" units="ms">
  <owner>quiche@chromium.org</owner>
  <summary>
    Chrome OS network performance metric sampling the time to connect to a WiFi
    Basic Service Set (which consists of the access point and associated
    stations on a particular WiFi channel for a specific network).
  </summary>
</histogram>

<histogram name="Network.Shill.Wifi.TimeToInitialize" units="ms">
  <owner>quiche@chromium.org</owner>
  <summary>
    Chrome OS network performance metric sampling the time to initialize an
    802.11 wireless device.
  </summary>
</histogram>

<histogram name="Network.Shill.Wifi.TimeToJoin" units="ms">
  <owner>quiche@chromium.org</owner>
  <summary>
    Chrome OS network performance metric sampling the time to join (associate
    plus authenticate) an 802.11 wireless network.
  </summary>
</histogram>

<histogram name="Network.Shill.Wifi.TimeToOnline" units="ms">
  <owner>quiche@chromium.org</owner>
  <summary>
    Chrome OS network performance metric sampling the time to determine that an
    802.11 wireless network is online after configuring Layer 3 state.
  </summary>
</histogram>

<histogram name="Network.Shill.Wifi.TimeToPortal" units="ms">
  <owner>quiche@chromium.org</owner>
  <summary>
    Chrome OS network performance metric sampling the time to determine that an
    802.11 wireless network is in a captive portal after configuring Layer 3
    state.
  </summary>
</histogram>

<histogram name="Network.Shill.Wifi.TimeToScan" units="ms">
  <owner>quiche@chromium.org</owner>
  <summary>
    Chrome OS network performance metric sampling the time to scan WiFi until a
    connection is found.
  </summary>
</histogram>

<histogram name="Network.Shill.Wifi.TimeToScanAndConnect" units="ms">
  <owner>quiche@chromium.org</owner>
  <summary>
    Chrome OS network performance metric sampling the time between the beginning
    of a WiFi scan (if the scan includes both a progressive scan and a full
    scan, the TimeToScanAndConnect starts with the first scan of the series) and
    the completion of a successful connection.
  </summary>
</histogram>

<histogram name="Network.Shill.WiFi.TransmitBitrateMbps" units="Mbps">
  <owner>zqiu@chromium.org</owner>
  <summary>
    Chrome OS network performance metric that tracks the transmit bitrate in
    Mbps for the wifi device when it is connected to a network. The bitrate is
    reported once every minute after the wifi connection is established.
  </summary>
</histogram>

<histogram name="Network.Shill.Wifi.UnreliableLinkSignalStrength">
  <owner>zqiu@chromium.org</owner>
  <summary>
    Chrome OS network metric sampling the signal strength (0-100) of the wifi
    network when it becomes unreliable (experiencing multiple link failures in a
    short period of time).
  </summary>
</histogram>

<histogram name="Network.Shill.WiFi.UserInitiatedConnectionFailureReason"
    enum="ConnectionFailureReason">
  <owner>zqiu@chromium.org</owner>
  <summary>
    Chrome OS network performance metric that tracks the reasons of failed
    user-initiated WiFi connection attempts. The result of the user-initiated
    WiFi connection attempts are being tracked by
    Network.Shill.WiFi.UserInitiatedConnectionResult.
  </summary>
</histogram>

<histogram name="Network.Shill.WiFi.UserInitiatedConnectionResult"
    enum="ConnectionResult">
  <owner>zqiu@chromium.org</owner>
  <summary>
    Chrome OS network performance metric that tracks the result of
    user-initiated WiFi connection attempts.
  </summary>
</histogram>

<histogram name="Network.Shill.WiFi.VerifyWakeOnWiFiSettingsResult"
    enum="VerifyWakeOnWiFiSettingsResult">
  <owner>samueltan@chromium.org</owner>
  <summary>
    Chrome OS network diagnostic metric sampling the number of times NIC wake on
    WiFi settings verification succeeds or fails in shill. This metric is
    recorded every time wake on WiFi settings are requested and verified after
    the NIC is programmed with wake on WiFi settings.
  </summary>
</histogram>

<histogram name="Network.Shill.WiFi.WakeOnWiFiFeaturesEnabledState"
    enum="WakeOnWiFiFeaturesEnabledState">
  <owner>samueltan@chromium.org</owner>
  <summary>
    Chrome OS network usage metric that tracks the wake on WiFi features that
    are enabled in shill. Recorded once every 10 minutes.
  </summary>
</histogram>

<histogram name="Network.Shill.WiFi.WakeOnWiFiThrottled"
    enum="WakeOnWiFiThrottled">
  <owner>samueltan@chromium.org</owner>
  <summary>
    Chrome OS network metric that tracks whether wake on WiFi was disabled
    during a period of system suspension because of too many dark resume wakes.
    This metric is only recorded for system suspends where wake on WiFi
    functionality has been programmed into the NIC.
  </summary>
</histogram>

<histogram name="Network.Shill.WiFi.WakeReasonReceivedBeforeOnDarkResume"
    enum="WakeReasonReceivedBeforeOnDarkResume">
  <owner>samueltan@chromium.org</owner>
  <summary>
    Chrome OS network metric that tracks whether a wake reason was received
    during dark resume before executing WakeOnWiFi::OnDarkResume.
  </summary>
</histogram>

<histogram name="Network.Shill.WiFi.WiFiConnectionStatusAfterWake"
    enum="WiFiConnectionStatusAfterWake">
  <owner>samueltan@chromium.org</owner>
  <summary>
    Chrome OS network usage metric that tracks the WiFi connection status after
    waking from suspend, both when wake on WiFi is enabled and disabled.
    Recorded 1 second after waking from suspend.
  </summary>
</histogram>

<histogram name="Network.Shill.Wimax.DevicePresenceStatus"
    enum="BooleanPresent">
  <owner>zqiu@chromium.org</owner>
  <summary>
    Chrome OS network metric that tracks the presence of a WiMax device in the
    system. A sample is emitted once every 3 minutes.
  </summary>
</histogram>

<histogram name="Network.Shill.Wimax.DHCPOptionFailureDetected"
    enum="NetworkDHCPOptionFailure">
  <obsolete>
    Deprecated 5/2014, and replaced by Network.Shill.DHCPOptionFailureDetected.
  </obsolete>
  <owner>quiche@chromium.org</owner>
  <summary>
    Chrome OS network metric that tracks the number of DHCP option failures
    encountered by Shill.  This indicates that Shill is using minimal DHCP
    options due to suspected MTU issues on the return path from the DHCP server
    back to the client.
  </summary>
</histogram>

<histogram name="Network.Shill.Wimax.ExpiredLeaseLengthSeconds" units="seconds">
  <owner>quiche@chromium.org</owner>
  <summary>
    Chrome OS network performance metric that tracks the length of a lease for a
    WiMax network at the time it expired without the DHCP client being able to
    renew it.
  </summary>
</histogram>

<histogram name="Network.Shill.Wimax.TimeToConfig" units="ms">
  <owner>quiche@chromium.org</owner>
  <summary>
    Chrome OS network performance metric sampling the time to configure Layer 3
    state on a WiMax network (typically acquire a DHCP lease).
  </summary>
</histogram>

<histogram name="Network.Shill.Wimax.TimeToInitialize" units="ms">
  <owner>quiche@chromium.org</owner>
  <summary>
    Chrome OS network performance metric sampling the time to initialize a WiMax
    device.
  </summary>
</histogram>

<histogram name="Network.Shill.Wimax.TimeToOnline" units="ms">
  <owner>quiche@chromium.org</owner>
  <summary>
    Chrome OS network performance metric sampling the time to determine that a
    WiMax network is online after configuring Layer 3 state.
  </summary>
</histogram>

<histogram name="Network.TimeToConfig.Cellular" units="ms">
  <obsolete>
    Deprecated 04/2016 as doesn't have data nor owner.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Chrome OS network performance metric sampling the time to join a 3G/Cellular
    network and configure Layer 3 state. Note this metric is deprecated; see
    Network.Cellular.TimeToConfig.
  </summary>
</histogram>

<histogram name="Network.TimeToConfig.Ethernet" units="ms">
  <obsolete>
    Deprecated 04/2016 as doesn't have data nor owner.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Chrome OS network performance metric sampling the time to join a wired
    Ethernet network and configure Layer 3 state (typically acquire a DHCP
    lease). Note this metric is deprecated; see Network.Ethernet.TimeToConfig.
  </summary>
</histogram>

<histogram name="Network.TimeToConfig.Wifi" units="ms">
  <obsolete>
    Deprecated 04/2016 as doesn't have data nor owner.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Chrome OS network performance metric sampling the time to configure Layer 3
    state on an 802.11 wireless network (typically acquire a DHCP lease). Note
    this metric is deprecated; see Network.Wifi.TimeToConfig.
  </summary>
</histogram>

<histogram name="Network.TimeToDrop" units="seconds">
  <obsolete>
    Deprecated 04/2016 as doesn't have data nor owner.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Chrome OS network stability metric sampling the time in seconds between the
    networking going online to going offline. Offline events due to device
    shutdown or suspend are ignored (along with the online time before that
    offline event).
  </summary>
</histogram>

<histogram name="Network.TimeToJoin.Wifi" units="ms">
  <obsolete>
    Deprecated 04/2016 as doesn't have data nor owner.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Chrome OS network performance metric sampling the time to join (associate
    plus authenticate) an 802.11 wireless network. Note this metric is
    deprecated; see Network.Wifi.TimeToJoin.
  </summary>
</histogram>

<histogram name="Network.Wifi.AuthMode" enum="NetworkAuthModeType">
  <obsolete>
    Deprecated 04/2016 as doesn't have data nor owner.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Chrome OS network performance metric sampling the time to configure Layer 3
    state on an 802.11 wireless network (typically acquire a DHCP lease).
  </summary>
</histogram>

<histogram name="Network.Wifi.BitRate" units="bps">
  <obsolete>
    Deprecated 04/2016 as doesn't have data nor owner.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Network metric reporting the download speed test results run at setup time.
    Recorded at least once per day.
  </summary>
</histogram>

<histogram name="Network.Wifi.Channel" enum="NetworkChannelType">
  <owner>cast-analytics@google.com</owner>
  <summary>
    Chrome OS network usage metric.  The channel used for each successful WiFi
    connection.
  </summary>
</histogram>

<histogram name="Network.Wifi.PhyMode" enum="NetworkPhyModeType">
  <owner>cast-analytics@google.com</owner>
  <summary>
    Chrome OS network usage metric.  The channel type used for each successful
    WiFi connection.
  </summary>
</histogram>

<histogram name="Network.Wifi.RoundTripTime" units="ms">
  <owner>cast-analytics@google.com</owner>
  <summary>
    Network metric reporting the average round trip time to the WiFi gateway.
    Recorded at least once per day.
  </summary>
</histogram>

<histogram name="Network.Wifi.Security" enum="NetworkSecurityType">
  <owner>cast-analytics@google.com</owner>
  <summary>
    Chrome OS network usage metric.  The security setting for each successful
    WiFi connection.
  </summary>
</histogram>

<histogram name="Network.Wifi.TimeOnline" units="seconds">
  <obsolete>
    Deprecated 04/2016 as doesn't have data nor owner.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Chrome OS network metric sampling the time spent using WiFi to transport
    data.  These data are mostly useful when summed and compared to TimeOnline
    for other network technologies (e.g. WiFi vs Cellular).
  </summary>
</histogram>

<histogram name="Network.Wifi.TimeResumeToReady" units="ms">
  <obsolete>
    Deprecated 04/2016 as doesn't have data nor owner.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Chrome OS network performance metric sampling the time from the resume event
    to the time when an 802.11 wireless network has configured its Layer 3
    state.
  </summary>
</histogram>

<histogram name="Network.Wifi.TimeToConfig" units="ms">
  <obsolete>
    Deprecated 04/2016 as doesn't have data nor owner.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Chrome OS network performance metric sampling the time to configure Layer 3
    state on an 802.11 wireless network (typically acquire a DHCP lease).
  </summary>
</histogram>

<histogram name="Network.Wifi.TimeToJoin" units="ms">
  <obsolete>
    Deprecated 04/2016 as doesn't have data nor owner.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Chrome OS network performance metric sampling the time to join (associate
    plus authenticate) an 802.11 wireless network.
  </summary>
</histogram>

<histogram name="Network.Wifi.TimeToOnline" units="ms">
  <obsolete>
    Deprecated 04/2016 as doesn't have data nor owner.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Chrome OS network performance metric sampling the time to determine that an
    802.11 wireless network is online after configuring Layer 3 state.
  </summary>
</histogram>

<histogram name="Network.Wifi.TimeToPortal" units="ms">
  <obsolete>
    Deprecated 04/2016 as doesn't have data nor owner.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Chrome OS network performance metric sampling the time to determine that an
    802.11 wireless network is in a captive portal after configuring Layer 3
    state.
  </summary>
</histogram>

<histogram name="Networks.RememberedShared">
  <owner>stevenjb@chromium.org</owner>
  <summary>
    Number of shared remembered (preferred) networks on Chrome OS. Updated any
    time the network list changes.
  </summary>
</histogram>

<histogram name="Networks.RememberedUnshared">
  <owner>stevenjb@chromium.org</owner>
  <summary>
    Number of private remembered (preferred) networks on Chrome OS. Updated any
    time the network list changes.
  </summary>
</histogram>

<histogram name="Networks.Visible">
  <owner>stevenjb@chromium.org</owner>
  <summary>
    Number of visible (in-range) networks on Chrome OS. Updated any time the
    network list changes.
  </summary>
</histogram>

<histogram name="NewTabPage.ActionAndroid" enum="NewTabPageActionAndroid">
  <owner>newt@chromium.org</owner>
  <summary>
    Actions taken by users from the new tab page on Android. These actions may
    navigate away from the NTP (e.g. searching in the omnibox or opening a
    bookmark), but can also happen without navigating away from the NTP (e.g.
    opening a bookmark in a new tab).
  </summary>
</histogram>

<histogram name="NewTabPage.AnimatedLogoDownloadTime" units="ms">
  <owner>ianwen@chromium.org</owner>
  <summary>
    The amount of time it takes to download the animated logo. Android only.
  </summary>
</histogram>

<histogram name="NewTabPage.AppsPageDragSource" enum="AppsPageDragSource">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Histogram for the source of app page drags. For any succesful drop onto an
    apps pane of the NTP, this logs where the drag originated.
  </summary>
</histogram>

<histogram name="NewTabPage.BookmarkActionAndroid"
    enum="NewTabPageBookmarkActionAndroid">
  <obsolete>
    Deprecated on M33 with the change to native NTP.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Actions taken by users on partner bookmarks (editing / renaming) on the NTP
    on Android.
  </summary>
</histogram>

<histogram name="NewTabPage.DefaultPageType" enum="NtpPaneType">
  <obsolete>
    Deprecated 2016-02.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>The default pane when the NTP is first opened.</summary>
</histogram>

<histogram name="NewTabPage.HoverTimeClicked">
  <obsolete>
    Deprecated 2016-02 (and not recorded for some time before that).
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Histogram of the time, in milliseconds, users have the cursor over a most
    visited thumbnail before clicking.
  </summary>
</histogram>

<histogram name="NewTabPage.HoverTimeNotClicked">
  <obsolete>
    Deprecated 2016-02 (and not recorded for some time before that).
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Histogram of the time, in milliseconds, users have the cursor over a most
    visited thumbnail before moving it away from the thumbnail without clicking.
  </summary>
</histogram>

<histogram name="NewTabPage.IconsColor">
  <owner>newt@chromium.org</owner>
  <summary>
    The number of most visited tiles on the new tab page that are displayed
    using a fallback color (as opposed to having an icon, or simply being gray).
    Android only.
  </summary>
</histogram>

<histogram name="NewTabPage.IconsGray">
  <owner>newt@chromium.org</owner>
  <summary>
    The number of most visited tiles on the new tab page that are displayed as
    gray (as opposed to having an icon, or a fallback color). Android only.
  </summary>
</histogram>

<histogram name="NewTabPage.IconsReal">
  <owner>newt@chromium.org</owner>
  <summary>
    The number of most visited tiles on the new tab page that are displayed with
    the site's icon (as opposed using a fallback color or just gray). Android
    only.
  </summary>
</histogram>

<histogram name="NewTabPage.Interests.ImageDownloadSuccess"
    enum="BooleanSuccess">
  <owner>knn@chromium.org</owner>
  <summary>
    Android: Whether an attempt to download the image for an interest was
    successful.
  </summary>
</histogram>

<histogram name="NewTabPage.Interests.InterestsFetchSuccess"
    enum="BooleanSuccess">
  <owner>knn@chromium.org</owner>
  <summary>
    Android: Whether an attempt to fetch the interests for a user was
    successful.
  </summary>
</histogram>

<histogram name="NewTabPage.Interests.NumInterests" units="interests">
  <owner>knn@chromium.org</owner>
  <summary>
    Android: The number of interests fetched for a user to display on the NTP.
  </summary>
</histogram>

<histogram name="NewTabPage.LoadTime" units="ms">
  <owner>fserb@chromium.org</owner>
  <summary>
    Histogram of the time, in milliseconds, it took for the NTP to load all of
    its tiles since navigation start.
  </summary>
</histogram>

<histogram name="NewTabPage.LogoClick" enum="NewTabPageLogoClick">
  <owner>ianwen@chromium.org</owner>
  <summary>
    Histogram tracking how many users click on the static logo or animated logo
    on NTP.
  </summary>
</histogram>

<histogram name="NewTabPage.LogoDownloadOutcome"
    enum="NewTabPageLogoDownloadOutcome">
  <owner>ianwen@chromium.org</owner>
  <summary>
    Outcome of downloading search provider's logos. It measures whether
    download/parsing is successful, revalidation and parsing work properly, etc.
    Android only.
  </summary>
</histogram>

<histogram name="NewTabPage.LogoDownloadTime" units="ms">
  <owner>ianwen@chromium.org</owner>
  <summary>
    The amount of time it takes to download the static logo. Android only.
  </summary>
</histogram>

<histogram name="NewTabPage.LogoShown" enum="NewTabPageLogoShown">
  <owner>ianwen@chromium.org</owner>
  <summary>
    Histogram tracking how many static logos and animated logos are shown to
    users.
  </summary>
</histogram>

<histogram name="NewTabPage.MobileIsUserOnline" enum="Boolean">
  <owner>fserb@chromium.org</owner>
  <owner>zmin@chromium.org</owner>
  <summary>
    Record the network status when a new tab page is opened. True if user is
    online and false for offline.
  </summary>
</histogram>

<histogram name="NewTabPage.MobilePromo" enum="NewTabPageMobilePromo">
  <obsolete>
    Deprecated on M33 with the change to native NTP.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Android: Tallies counts for how the user interacted with the NTP promo page.
  </summary>
</histogram>

<histogram name="NewTabPage.MostVisited" enum="MostVisitedTileIndex">
  <owner>beaudoin@chromium.org</owner>
  <owner>justincohen@chromium.org</owner>
  <owner>newt@chromium.org</owner>
  <summary>
    Histogram for user clicks of the most visited thumbnails. The value is equal
    to the index of the thumbnail.
  </summary>
</histogram>

<histogram name="NewTabPage.MostVisitedAction" enum="NtpFollowAction">
  <obsolete>
    Deprecated 2016-02 (and not recorded for some time before that).
  </obsolete>
  <owner>beaudoin@chromium.org</owner>
  <owner>justincohen@chromium.org</owner>
  <owner>newt@chromium.org</owner>
  <summary>
    Action taken by the user on the Most Visited NTP pane.  If the user switches
    panes during this use of the NTP, this action is sometimes not recorded. Ask
    mpearson@ for details.
  </summary>
</histogram>

<histogram name="NewTabPage.MostVisitedScheme" enum="NtpMostVisitedScheme">
  <owner>treib@chromium.org</owner>
  <summary>
    The schemes of URLs of most visited thumbnails that the user clicked on.
  </summary>
</histogram>

<histogram name="NewTabPage.MostVisitedTilePlacementExperiment"
    enum="NtpTileExperimentActions">
  <obsolete>
    Deprecated 2016-02 (and not recorded for some time before that).
  </obsolete>
  <owner>beaudoin@chromium.org</owner>
  <owner>justincohen@chromium.org</owner>
  <owner>newt@chromium.org</owner>
  <summary>
    Records anomalous events for the Most Visited Tile Placement experiment,
    where it is unable to operate as expected. These are recorded during New Tab
    Page load time, once for every NTP.
  </summary>
</histogram>

<histogram name="NewTabPage.MostVisitedTime" units="ms">
  <owner>treib@chromium.org</owner>
  <summary>
    The time from the New Tab page being shown until the user to clicked on a
    most visited tile. Only recorded if the user clicked on a tile, as opposed
    to e.g. searching via the omnibox. Only measured on Android.
  </summary>
</histogram>

<histogram name="NewTabPage.NonVisibleScreenshots">
  <obsolete>
    Deprecated 2016-02 (and not recorded for some time before that).
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The number of screenshots that were cached for the non-visible but ranked
    suggestions on the Suggested NTP pane.
  </summary>
</histogram>

<histogram name="NewTabPage.NonVisibleSuggestedSiteRank">
  <obsolete>
    Deprecated 2016-02 (and not recorded for some time before that).
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Given that the user has typed a URL, and given that that specific URL was
    ranked but not visible on the Suggested pane of the NTP, this is the rank
    that the Suggested pane had for that URL.
  </summary>
</histogram>

<histogram name="NewTabPage.NumberOfExternalTileFallbacks">
  <owner>beaudoin@chromium.org</owner>
  <summary>
    The number of tiles for which we relied on external tiles as a fallback
    because a local screenshot was not available to be used as a thumbnail.
    External tiles are those for which the visuals are handled by the page
    itself, not by the iframe. Recorded before reloading the suggestions,
    navigating to a URL, switching tabs, changing the active window, or closing
    the tab/shutting down Chrome.
  </summary>
</histogram>

<histogram name="NewTabPage.NumberOfExternalTiles">
  <owner>beaudoin@chromium.org</owner>
  <summary>
    The number of external tiles that are displayed on the NTP. External tiles
    are those for which the visuals are handled by the page itself, not by the
    iframe. Recorded before reloading the suggestions, navigating to a URL,
    switching tabs, changing the active window or closing the tab/shutting down
    Chrome.
  </summary>
</histogram>

<histogram name="NewTabPage.NumberOfGrayTileFallbacks">
  <owner>beaudoin@chromium.org</owner>
  <summary>
    The number of tiles for which we displayed a gray tile with the domain name
    as a fallback because a local screenshot was not available to be used as a
    thumbnail. Recorded before reloading the suggestions, navigating to a URL,
    switching tabs, changing the active window or closing the tab/shutting down
    Chrome.
  </summary>
</histogram>

<histogram name="NewTabPage.NumberOfGrayTiles">
  <owner>beaudoin@chromium.org</owner>
  <summary>
    The number of tiles for which no thumbnail was specified, but a domain was
    so we displayed a gray tile with the domain name in it. Recorded before
    reloading the suggestions, navigating to a URL, switching tabs, changing the
    active window or closing the tab/shutting down Chrome.
  </summary>
</histogram>

<histogram name="NewTabPage.NumberOfMouseOvers">
  <owner>beaudoin@chromium.org</owner>
  <summary>
    The total number of times the user hovered the mouse over Most Visited tile
    or title elements before changing focus away from the NTP, be it by
    navigating to a URL, switching tabs, changing the active window or closing
    the tab/shutting down Chrome.
  </summary>
</histogram>

<histogram name="NewTabPage.NumberOfThumbnailAttempts">
  <obsolete>
    Deprecated 01/2014. Replaced by NewTabPage.NumberOfThumbnailTiles.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The number of tiles for which we attempted to use a local screenshot as a
    thumbnail. Recorded before reloading the suggestions, navigating to a URL,
    switching tabs, changing the active window or closing the tab/shutting down
    Chrome.
  </summary>
</histogram>

<histogram name="NewTabPage.NumberOfThumbnailErrors">
  <owner>beaudoin@chromium.org</owner>
  <summary>
    The number of thumbnails for which a local screenshot was not available so
    we were not able to display them on the Most Visited section of the NTP.
    Recorded before reloading the suggestions, navigating to a URL, switching
    tabs, changing the active window or closing the tab/shutting down Chrome.
  </summary>
</histogram>

<histogram name="NewTabPage.NumberOfThumbnailTiles">
  <owner>beaudoin@chromium.org</owner>
  <summary>
    The number of tiles for which we attempted to use a local screenshot as a
    thumbnail. Recorded before reloading the suggestions, navigating to a URL,
    switching tabs, changing the active window or closing the tab/shutting down
    Chrome.
  </summary>
</histogram>

<histogram name="NewTabPage.NumberOfTiles">
  <owner>beaudoin@chromium.org</owner>
  <summary>
    The number of tiles that are displayed on the NTP, no matter if they are
    thumbnails, gray tiles, or external tiles. Recorded before reloading the
    suggestions, navigating to a URL, switching tabs, changing the active window
    or closing the tab/shutting down Chrome.
  </summary>
</histogram>

<histogram name="NewTabPage.OfflineUrlsLoadTime" units="ms">
  <owner>dewittj@chromium.org</owner>
  <summary>
    The amount of time spent waiting for the offline page model to return which
    New Tab Page URLs are available offline.
  </summary>
</histogram>

<histogram name="NewTabPage.OtherSessionsMenu" enum="OtherSessionsActions">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <obsolete>
    Deprecated 05/2015. Feature was removed.
  </obsolete>
  <summary>
    Histogram for usage of the menu on the NTP that allows the user to access
    tabs from other devices.
  </summary>
</histogram>

<histogram name="NewTabPage.PreviousSelectedPageType" enum="NtpPaneType">
  <obsolete>
    Deprecated 2016-02.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The pane that had been previously selected when the user switches panes in
    the NTP.
  </summary>
</histogram>

<histogram name="NewTabPage.Promo.Bubble" enum="NtpPromoAction">
  <obsolete>
    Deprecated 2016-02 (and not recorded for some time before that).
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>Histogram for NTP bubble promo activity.</summary>
</histogram>

<histogram name="NewTabPage.Promo.Notification" enum="NtpPromoAction">
  <obsolete>
    Deprecated 2016-02 (and not recorded for some time before that).
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>Histogram for NTP notification promo activity.</summary>
</histogram>

<histogram name="NewTabPage.RecentTabsPage.TimeVisibleAndroid" units="ms">
  <owner>pkotwicz@chromium.org</owner>
  <summary>
    Records the amount of time that the &quot;Recent Tabs&quot; page is visible
    and Chrome is in the foreground on Android. The metric is recorded whenever
    the &quot;Recent Tabs&quot; page moves out of the foreground. The metric is
    recorded when the &quot;Recent Tabs&quot; page is closed, when the user
    switches from the &quot;Recent Tabs&quot; page to a different tab and when
    Chrome is backgrounded.
  </summary>
</histogram>

<histogram name="NewTabPage.SearchURLs.Total">
  <obsolete>
    Deprecated 2016-02 (and not recorded for some time before that).
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>TBD.</summary>
</histogram>

<histogram name="NewTabPage.SelectedPageType" enum="NtpPaneType">
  <obsolete>
    Deprecated 2016-02.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>The pane selected when the user switches panes in the NTP.</summary>
</histogram>

<histogram name="NewTabPage.SessionRestore">
  <obsolete>
    Deprecated 2016-02 (and not recorded for some time before that).
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Histogram for user clicks of the Recently Closed items. The value is the
    recency of the entry being restored (0 is most recent).
  </summary>
</histogram>

<histogram name="NewTabPage.SingleSessionPageSwitches">
  <obsolete>
    Deprecated 2016-02 (and not recorded for some time before that).
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Histogram to track how many times a user switched pages in a single NTP
    session.
  </summary>
</histogram>

<histogram name="NewTabPage.Snippets.CardClicked">
  <owner>knn@chromium.org</owner>
  <summary>
    Android: The position of the snippets card on the NTP, that is clicked
    through to the host website of the content.
  </summary>
</histogram>

<histogram name="NewTabPage.Snippets.CardExpanded">
  <owner>knn@chromium.org</owner>
  <summary>
    Android: The position of the snippets card on the NTP, that is expanded to
    reveal more content.
  </summary>
  <obsolete>
    Deprecated as of 4/2016
  </obsolete>
</histogram>

<histogram name="NewTabPage.Snippets.CardHidden">
  <owner>knn@chromium.org</owner>
  <summary>
    Android: The position of the snippets card on the NTP, for which the
    expanded content was minimized/hidden.
  </summary>
  <obsolete>
    Deprecated as of 4/2016
  </obsolete>
</histogram>

<histogram name="NewTabPage.Snippets.CardShown">
  <owner>knn@chromium.org</owner>
  <summary>
    Android: The position of the snippets card that is shown on the NTP.
    Depending on the device screen size only some of the cards will be shown
    unless the users scrolls through.
  </summary>
</histogram>

<histogram name="NewTabPage.Snippets.FetchHttpResponseOrErrorCode"
    enum="CombinedHttpResponseAndNetErrorCode">
  <owner>mastiz@chromium.org</owner>
  <summary>
    Response or error codes encountered when attempting to fetch snippets.
  </summary>
</histogram>

<histogram name="NewTabPage.Snippets.FetchResult" enum="NtpSnippetsFetchResult">
  <owner>mastiz@chromium.org</owner>
  <summary>
    Result of attempting a fetch, logged once per issued trigger.
  </summary>
</histogram>

<histogram name="NewTabPage.Snippets.FetchTime" units="ms">
  <owner>mastiz@chromium.org</owner>
  <summary>Time spent fetching snippets.</summary>
</histogram>

<histogram name="NewTabPage.Snippets.IncompleteSnippetsAfterFetch"
    enum="Boolean">
  <owner>maybelle@chromium.org</owner>
  <summary>
    Whether we discarded any of the snippets after fetching them due to having
    incomplete metadata.
  </summary>
</histogram>

<histogram name="NewTabPage.Snippets.Interactions" enum="SnippetsInteractions">
  <owner>knn@chromium.org</owner>
  <summary>
    Android: A histogram giving an overall summary of important events like
    impressions, scroll events, clicks etc.
  </summary>
</histogram>

<histogram name="NewTabPage.Snippets.NumArticles" units="articles">
  <owner>knn@chromium.org</owner>
  <summary>
    Android: The number of snippet articles available to show on the NTP, logged
    once every time the list is updated.
  </summary>
</histogram>

<histogram name="NewTabPage.Snippets.NumArticlesFetched" units="articles">
  <owner>mastiz@chromium.org</owner>
  <summary>
    Android: The number of valid snippet articles fetched from the server,
    logged every time a fetch finishes successfully.
  </summary>
</histogram>

<histogram name="NewTabPage.Snippets.NumArticlesZeroDueToDiscarded"
    units="articles">
  <owner>mastiz@chromium.org</owner>
  <summary>
    Android: The number of snippet articles discarded by the user, logged every
    time the list is updated resulting in an empty list (all articles
    discarded).
  </summary>
</histogram>

<histogram name="NewTabPage.Snippets.NumIncompleteSnippets" units="snippets">
  <owner>maybelle@chromium.org</owner>
  <summary>
    The number of snippets that we discard per fetch due to having incomplete
    data.
  </summary>
</histogram>

<histogram name="NewTabPage.SuggestedSite">
  <obsolete>
    Deprecated 2016-02 (and not recorded for some time before that).
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Histogram for user clicks of the suggested site thumbnails. The value is
    equal to the index of the thumbnail.
  </summary>
</histogram>

<histogram name="NewTabPage.SuggestedSitesAction" enum="NtpFollowAction">
  <obsolete>
    Deprecated 2016-02 (and not recorded for some time before that).
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>Action taken by the user on the Suggested Sites NTP pane.</summary>
</histogram>

<histogram name="NewTabPage.SuggestedSitesLoadTime">
  <obsolete>
    Deprecated 2016-02 (and not recorded for some time before that).
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>Time to load the Suggested Sites NTP pane, in milliseconds.</summary>
</histogram>

<histogram name="NewTabPage.SuggestedSitesViewTime">
  <obsolete>
    Deprecated 2016-02 (and not recorded for some time before that).
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>Time spent on the Suggested Sites NTP pane, in seconds.</summary>
</histogram>

<histogram name="NewTabPage.SuggestionsImpression" enum="MostVisitedTileIndex">
  <owner>beaudoin@chromium.org</owner>
  <summary>
    Histogram for impressions on the various most visited tiles. The value is
    equal to the index of the thumbnail.
  </summary>
</histogram>

<histogram name="NewTabPage.SuggestionsType" enum="NtpSuggestionsType">
  <owner>beaudoin@chromium.org</owner>
  <summary>
    Indicate, for each impression of the New Tab Page, whether the suggestions
    were obtained from the client or server. Recorded before changing focus away
    from the NTP, be it by navigating to a URL, switching tabs, changing the
    active window or closing the tab/shutting down Chrome.
  </summary>
</histogram>

<histogram name="NewTabPage.ThumbnailErrorRate">
  <obsolete>
    Deprecated 01/2014. Replaced by NewTabPage.NumberOfThumbnailAttempts and
    NewTabPage.NumberOfThumbnailErrors.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The percentage of errors per attempts to load image thumbnails on the New
    Tab Page. When an error occurs, a grey tile is shown instead of a thumbnail
    image. We measure the rate instead of the number of errors because multiple
    attempts are made to load images at different times during the NTP's
    lifetime. Each NTP session's error rate is logged after the user navigates
    to a new URL from that NTP.
  </summary>
</histogram>

<histogram name="NewTabPage.ThumbnailFallbackRate" units="%">
  <obsolete>
    Deprecated 01/2014. Replaced by NewTabPage.NumberOfGrayTileFallbacks and
    NewTabPage.NumberOfExternalFallbacks.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The percentage of times most visited tiles use the fallback thumbnail. Only
    requests that actually specify a fallback thumbnail are considered here. We
    measure the rate instead of the number of errors because multiple attempts
    are made to load thumbnails at different times during the NTP's lifetime.
    Each NTP session's error rate is logged after the user navigates to a new
    URL from that NTP.
  </summary>
</histogram>

<histogram name="NewTabPage.TileOfflineAvailable" enum="MostVisitedTileIndex">
  <owner>treib@chromium.org</owner>
  <summary>
    The number of times a tile was available offline, per tile index - compare
    to the NewTabPage.SuggestionsImpression.* histograms. This is recorded when
    the NTP finishes loading. Only measured on Android.
  </summary>
</histogram>

<histogram name="NewTabPage.TileType" enum="MostVisitedTileType">
  <owner>newt@chromium.org</owner>
  <summary>
    The visual type of each most visited tile displayed on the new tab page,
    e.g. actual thumbnail or placeholder thumbnail. This is recorded for each
    most visited item when the NTP is opened. Only measured on Android.
  </summary>
</histogram>

<histogram name="NewTabPage.TileTypeClicked" enum="MostVisitedTileType">
  <owner>newt@chromium.org</owner>
  <summary>
    The visual type of the most visited item that the user clicked on, e.g.
    actual thumbnail or placeholder thumbnail. Only measured on Android.
  </summary>
</histogram>

<histogram name="NewTabPage.TimeSpent" units="ms">
  <owner>knn@chromium.org</owner>
  <summary>
    The time spent on the new tab page as measured from when it was loaded or
    last brought to the foreground until it was navigated away from or hidden.
    Only measured on Android.
  </summary>
</histogram>

<histogram name="NewTabPage.URLState" enum="NewTabURLState">
  <owner>beaudoin@chromium.org</owner>
  <summary>
    Records the status of the New Tab page URL when an NTP is opened.
  </summary>
</histogram>

<histogram name="NewTabPage.VisibleScreenshots">
  <obsolete>
    Deprecated 2016-02 (and not recorded for some time before that).
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The number of screenshots that were cached for the visible suggestions on
    the Suggested NTP pane.
  </summary>
</histogram>

<histogram name="NewTabPage.VisibleSuggestedSiteRank">
  <obsolete>
    Deprecated 2016-02 (and not recorded for some time before that).
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Given that the user has typed a URL, and given that that specific URL was
    visible on the Suggested pane of the NTP, this is the rank that the
    Suggested pane had for that URL.
  </summary>
</histogram>

<histogram name="Notifications.Actions" enum="NotificationActionType">
  <owner>dewittj@chromium.org</owner>
  <summary>
    The actions taken on notifications, recorded every time they happen.  This
    histogram will record every single event that happens separately.
  </summary>
</histogram>

<histogram name="Notifications.AppNotificationStatus"
    enum="NotificationAppStatus">
  <owner>peter@chromium.org</owner>
  <summary>
    Records whether notifications are enabled for Chrome, as the Android app,
    for each Web Notification that is being shown to the user.
  </summary>
</histogram>

<histogram name="Notifications.AuthorDataSize" units="bytes">
  <owner>peter@chromium.org</owner>
  <summary>
    The size, in bytes, of the author-provided data associated with a Web
    Notification. Recorded when a persistent Web Notification is being shown by
    the developer.
  </summary>
</histogram>

<histogram name="Notifications.AuthorDataSizeKB" units="KB">
  <owner>peter@chromium.org</owner>
  <obsolete>
    Replaced by Notifications.AuthorDataSize in February 2016.
  </obsolete>
  <summary>
    The size, in kilobytes, of the author-provided data associated with a Web
    Notification. Recorded when a persistent Web Notification is being shown by
    the developer.
  </summary>
</histogram>

<histogram name="Notifications.Database.DeleteResult"
    enum="NotificationDatabaseStatus">
  <owner>peter@chromium.org</owner>
  <summary>
    Records the result status codes of deleting notification data from the Web
    Notification database.
  </summary>
</histogram>

<histogram name="Notifications.Database.DeleteServiceWorkerRegistrationResult"
    enum="NotificationDatabaseStatus">
  <owner>peter@chromium.org</owner>
  <summary>
    Records the result status codes of deleting all notification data associated
    with a Service Worker registration ID.
  </summary>
</histogram>

<histogram name="Notifications.Database.DestroyResult"
    enum="NotificationDatabaseStatus">
  <owner>peter@chromium.org</owner>
  <summary>
    Records the result status codes of destroying the Web Notification database
    altogether.
  </summary>
</histogram>

<histogram name="Notifications.Database.OpenAfterCorruptionResult"
    enum="NotificationDatabaseStatus">
  <owner>peter@chromium.org</owner>
  <summary>
    Records the result status codes of opening the Web Notification database
    after it has been destroyed in response to data corruption.
  </summary>
</histogram>

<histogram name="Notifications.Database.OpenResult"
    enum="NotificationDatabaseStatus">
  <owner>peter@chromium.org</owner>
  <summary>
    Records the result status codes of opening the Web Notification database.
  </summary>
</histogram>

<histogram name="Notifications.Database.ReadForServiceWorkerResult"
    enum="NotificationDatabaseStatus">
  <owner>peter@chromium.org</owner>
  <summary>
    Records the result status codes of reading data of all notifications
    associated with a Service Worker from the Web Notification database.
  </summary>
</histogram>

<histogram name="Notifications.Database.ReadResult"
    enum="NotificationDatabaseStatus">
  <owner>peter@chromium.org</owner>
  <summary>
    Records the result status codes of reading data of a single notification
    from the Web Notification database.
  </summary>
</histogram>

<histogram name="Notifications.Database.WriteResult"
    enum="NotificationDatabaseStatus">
  <owner>peter@chromium.org</owner>
  <summary>
    Records the result status codes of writing data for a notification to the
    Web Notification database.
  </summary>
</histogram>

<histogram name="Notifications.DifferentRequestingEmbeddingOrigins"
    enum="Boolean">
  <obsolete>
    Deprecated July 2015. No longer tracked since M42.
  </obsolete>
  <owner>peter@chromium.org</owner>
  <summary>
    Records if the requesting and embedding origins are different when
    requesting permission to display Web Notifications.
  </summary>
</histogram>

<histogram name="Notifications.ExtensionNotificationActionCount"
    units="buttons">
  <owner>dewittj@chromium.org</owner>
  <owner>peter@chromium.org</owner>
  <summary>
    The number of action buttons the developer provided for a notification
    created using the extensions notification API. Logged when creating the
    notification.
  </summary>
</histogram>

<histogram name="Notifications.ExtensionNotificationType"
    enum="ExtensionNotificationType">
  <owner>dewittj@chromium.org</owner>
  <owner>peter@chromium.org</owner>
  <summary>
    The type of a notification created using the extensions notification API.
    Logged when creating the notification.
  </summary>
</histogram>

<histogram name="Notifications.Icon.FileSize" units="bytes">
  <owner>mvanouwerkerk@chromium.org</owner>
  <summary>The number of bytes loaded for a Web Notification icon.</summary>
</histogram>

<histogram name="Notifications.Icon.LoadFailTime" units="ms">
  <owner>mvanouwerkerk@chromium.org</owner>
  <summary>
    The number of milliseconds it took to fail loading an icon for a Web
    Notification.
  </summary>
</histogram>

<histogram name="Notifications.Icon.LoadFinishTime" units="ms">
  <owner>mvanouwerkerk@chromium.org</owner>
  <summary>
    The number of milliseconds it took to finish successfully loading an icon
    for a Web Notification.
  </summary>
</histogram>

<histogram name="Notifications.Icon.ScaleDownTime" units="ms">
  <owner>mvanouwerkerk@chromium.org</owner>
  <summary>
    The number of milliseconds it took to scale down an icon for a Web
    Notification.
  </summary>
</histogram>

<histogram name="Notifications.PerNotificationActions"
    enum="NotificationActionType">
  <owner>dewittj@chromium.org</owner>
  <summary>
    The actions taken on notifications, recorded once per notification, when it
    is closed.  This differs from the Notifications.Actions histogram in that
    multiple events of the same type on a single notification will only record a
    single UMA event.
  </summary>
</histogram>

<histogram name="Notifications.PersistentNotificationActionCount"
    units="buttons">
  <owner>johnme@chromium.org</owner>
  <summary>
    The number of action buttons the developer provided for a persistent Web
    Notification. Logged whenever showNotification is called.
  </summary>
</histogram>

<histogram name="Notifications.PersistentNotificationDataDeleted"
    enum="BooleanSuccess">
  <owner>peter@chromium.org</owner>
  <owner>deepak.m1@samsung.com</owner>
  <obsolete>
    Deprecated 01/2016, no longer used.
  </obsolete>
  <summary>
    Recorded when the data associated with a persistent Web Notification gets
    deleted. The value will be true if data deletion succeeded, and false if
    there was an error.
  </summary>
</histogram>

<histogram name="Notifications.PersistentWebNotificationClickResult"
    enum="PlatformNotificationStatus">
  <owner>peter@chromium.org</owner>
  <owner>deepak.m1@samsumg.com</owner>
  <summary>
    Recorded delivery status for persistent notification clicks to a Service
    Worker when handling a click on a persistent WebNotification has finished.
  </summary>
</histogram>

<histogram name="Notifications.PersistentWebNotificationCloseResult"
    enum="PlatformNotificationStatus">
  <owner>peter@chromium.org</owner>
  <owner>nsatragno@chromium.org</owner>
  <summary>
    Records delivery status for persistent notification close events sent to a
    Service Worker when the event has been handled.
  </summary>
</histogram>

<histogram name="NQE.DifferenceRTTActualAndEstimated" units="ms">
  <owner>bengr@chromium.org</owner>
  <owner>tbansal@chromium.org</owner>
  <summary>
    Difference between the actual RTT observation and the estimated RTT. This
    metric is recorded on every request when the actual observation is higher
    than the estimated value.
  </summary>
</histogram>

<histogram name="NQE.DifferenceRTTEstimatedAndActual" units="ms">
  <owner>bengr@chromium.org</owner>
  <owner>tbansal@chromium.org</owner>
  <summary>
    Difference between the estimated RTT and the actual RTT observation. This
    metric is recorded on every request when the estimated value is higher than
    the actual observation.
  </summary>
</histogram>

<histogram name="NQE.ExternalEstimateProvider.DownlinkBandwidth" units="Kbps">
  <owner>bengr@chromium.org</owner>
  <owner>tbansal@chromium.org</owner>
  <summary>
    Records the estimate of the downlink bandwidth (in Kbps) provided by the
    external estimate provided. Recorded every time the external estimate
    provider provides a valid downlink bandwidth estimate to the network quality
    estimator.
  </summary>
</histogram>

<histogram name="NQE.ExternalEstimateProvider.RTT" units="ms">
  <owner>bengr@chromium.org</owner>
  <owner>tbansal@chromium.org</owner>
  <summary>
    Records the estimate of the RTT provided by the external estimate provided.
    Recorded every time the external estimate provider provides a valid RTT
    estimate to the network quality estimator.
  </summary>
</histogram>

<histogram name="NQE.ExternalEstimateProviderStatus"
    enum="NQEExternalEstimateProviderStatus">
  <owner>bengr@chromium.org</owner>
  <owner>tbansal@chromium.org</owner>
  <summary>
    Records the interaction (availability and query count) of Network Quality
    Estimator with external estimates provider. Logged on network change events,
    everytime external estimate provider is queried for an updated estimate, and
    when it proactively notifies that an updated estimate is available.
  </summary>
</histogram>

<histogram name="NQE.FastestRTT" units="ms">
  <owner>bengr@chromium.org</owner>
  <owner>tbansal@chromium.org</owner>
  <summary>
    Rough estimate of the fastest round-trip-time, before a connectivity change
    is detected.

    This metric is recorded when a connectivity change is detected. This will
    miss data from users whose connection type never changes and will be biased
    to users whose connection type changes frequently.
  </summary>
</histogram>

<histogram name="NQE.PeakKbps" units="Kbps">
  <owner>bengr@chromium.org</owner>
  <owner>tbansal@chromium.org</owner>
  <summary>
    Rough estimate of downstream peak throughput, before a connectivity change
    is detected.

    This metric is recorded when a connectivity change is detected. This will
    miss data from users whose connection type never changes and will be biased
    to users whose connection type changes frequently.
  </summary>
</histogram>

<histogram name="NQE.RatioEstimatedToActualRTT" units="100 times">
  <owner>bengr@chromium.org</owner>
  <owner>tbansal@chromium.org</owner>
  <summary>
    Ratio of the estimated RTT to the actual RTT observation multiplied by 100.
  </summary>
</histogram>

<histogram name="NQE.RTT" units="ms">
  <owner>bengr@chromium.org</owner>
  <owner>tbansal@chromium.org</owner>
  <summary>
    Rough estimate of the computed round-trip-time at different percentiles,
    before a connectivity change is detected.

    This metric is recorded when a connectivity change is detected. This will
    miss data from users whose connection type never changes and will be biased
    to users whose connection type changes frequently.
  </summary>
</histogram>

<histogram name="NQE.RTTObservations" units="ms">
  <owner>bengr@chromium.org</owner>
  <owner>tbansal@chromium.org</owner>
  <summary>
    RTT observations made by network quality estimator, recorded on every
    request.
  </summary>
</histogram>

<histogram name="ntp.searchurls.total">
  <obsolete>
    Deprecated 04/2016 as doesn't have data nor owner.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>TBD</summary>
</histogram>

<histogram name="NtpHandler.AttachShownPageType" enum="NtpPaneType">
  <obsolete>
    Deprecated 10/2011. No longer tracked, replaced with
    NewTabPage.DefaultPageType
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>The default pane when the NTP is first opened.</summary>
</histogram>

<histogram name="NtpHandler.SelectedShownPageType" enum="NtpPaneType">
  <obsolete>
    Deprecated 10/2011. No longer tracked, replaced with
    NewTabPage.SelectedPageType
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>The pane selected when the user switches panes in the NTP.</summary>
</histogram>

<histogram name="OAuth2Login.AccountRevoked.IsEmailId" enum="Boolean">
  <owner>knn@chromium.org</owner>
  <summary>
    This histogram records whether the account ID is actually an email if we
    detect an account that has an account ID but not email.
  </summary>
</histogram>

<histogram name="OAuth2Login.AccountRevoked.MigrationState"
    enum="OAuth2LoginAccountRevokedMigrationState">
  <owner>knn@chromium.org</owner>
  <summary>
    This histogram records the account ID migration status from email to GAIA ID
    if we detect an account that has an account ID but not email.
  </summary>
</histogram>

<histogram name="OAuth2Login.GetOAuth2AccessTokenFailure"
    enum="GoogleServiceAuthError">
  <owner>zelidrag@chromium.org</owner>
  <summary>
    Failure reason of final OAuth2 access token retrieval call during Chrome OS
    login.
  </summary>
</histogram>

<histogram name="OAuth2Login.GetOAuth2AccessTokenRetry"
    enum="GoogleServiceAuthError">
  <owner>zelidrag@chromium.org</owner>
  <summary>
    Retry reason of failed OAuth2 access token retrieval call during Chrome OS
    login.
  </summary>
</histogram>

<histogram name="OAuth2Login.ListAccountsFailure" enum="GoogleServiceAuthError">
  <obsolete>
    Deprecated 2015-05-22. Replaced by Signin.ListAccountsFailure.
  </obsolete>
  <owner>zelidrag@chromium.org</owner>
  <summary>
    Failure reason of final ListAccounts call failure during Chrome OS login.
    This data is now included in Signin.ListAccountsFailure.
  </summary>
</histogram>

<histogram name="OAuth2Login.ListAccountsRetry" enum="GoogleServiceAuthError">
  <owner>zelidrag@chromium.org</owner>
  <obsolete>
    Deprecated 2015-05-22. Replaced by Signin.ListAccountsRetry.
  </obsolete>
  <summary>
    Retry reason of failed ListAccounts call during Chrome OS login. This data
    is now included in Signin.ListAccountsRetry.
  </summary>
</histogram>

<histogram name="OAuth2Login.MergeSessionFailure" enum="GoogleServiceAuthError">
  <owner>zelidrag@chromium.org</owner>
  <summary>
    Failure reason of MergeSession call during Chrome OS login, Chrome Signin or
    account addition. On all OSes as of M44 (previously CrOS only).
  </summary>
</histogram>

<histogram name="OAuth2Login.MergeSessionRetry" enum="GoogleServiceAuthError">
  <owner>zelidrag@chromium.org</owner>
  <summary>
    Retry reason of failed MergeSession call during Chrome OS login, Chrome
    Signin or account addition. On all OSes as of M44 (previously CrOS only).
  </summary>
</histogram>

<histogram name="OAuth2Login.OAuthLoginGaiaCredFailure"
    enum="GoogleServiceAuthError">
  <owner>zelidrag@chromium.org</owner>
  <summary>
    Failure reason of final OAuthLogin (with SID+LSID) call during Chrome OS
    login.
  </summary>
</histogram>

<histogram name="OAuth2Login.OAuthLoginGaiaCredRetry"
    enum="GoogleServiceAuthError">
  <owner>zelidrag@chromium.org</owner>
  <summary>
    Retry reason of failed OAuthLogin (with SID+LSID) call during Chrome OS
    login.
  </summary>
</histogram>

<histogram name="OAuth2Login.OAuthLoginUberTokenFailure"
    enum="GoogleServiceAuthError">
  <obsolete>
    Deprecated 2015-05-22
  </obsolete>
  <owner>zelidrag@chromium.org</owner>
  <summary>
    Failure reason of final OAuthLogin (with uber token) call during Chrome OS
    login. This data is now (M44+) included in Signin.UberTokenFailure.
  </summary>
</histogram>

<histogram name="OAuth2Login.OAuthLoginUberTokenRetry"
    enum="GoogleServiceAuthError">
  <obsolete>
    Deprecated 2015-05-22
  </obsolete>
  <owner>zelidrag@chromium.org</owner>
  <summary>
    Retry reason of failed OAuthLogin (with uber token) call during Chrome OS
    login. This data is now (M44+) included in Signin.UberTokenRetry.
  </summary>
</histogram>

<histogram name="OAuth2Login.PostMergeVerification"
    enum="PostMergeVerificationOutcome">
  <owner>zelidrag@chromium.org</owner>
  <summary>
    Outcome of Chrome OS GAIA cookie post-merge session verification process. It
    measures how often /MergeSession request collided with browser session
    restore process resulting in partially authenticated primary GAIA session.
  </summary>
</histogram>

<histogram name="OAuth2Login.PreMergeVerification"
    enum="PostMergeVerificationOutcome">
  <owner>zelidrag@chromium.org</owner>
  <summary>
    Outcome of Chrome OS GAIA cookie pre-merge session verification process. It
    measures how often we need to perform /MergeSession request to
    re-authenticated exisitng user with GAIA.
  </summary>
</histogram>

<histogram name="OAuth2Login.SeedState" enum="OAuth2LoginSeedState">
  <owner>knn@chromium.org</owner>
  <summary>
    Only applicable on M47 on Android. Measure the frequency of a suppressed
    error state when the account is not seeded.
  </summary>
</histogram>

<histogram name="OAuth2Login.SessionRestore" enum="GaiaSessionRestoreOutcome">
  <owner>zelidrag@chromium.org</owner>
  <summary>Outcome of Chrome OS GAIA cookie session restore process.</summary>
</histogram>

<histogram name="OAuth2Login.SessionRestoreTimeToFailure" units="ms">
  <owner>zelidrag@chromium.org</owner>
  <summary>How long it takes for the session restore to fail.</summary>
</histogram>

<histogram name="OAuth2Login.SessionRestoreTimeToSuccess" units="ms">
  <owner>zelidrag@chromium.org</owner>
  <summary>
    How long it takes for the session restore to finish succeessfully.
  </summary>
</histogram>

<histogram name="OfflinePages.BatchDelete.Count">
  <owner>jianli@chromium.org</owner>
  <summary>Number of offline pages that are deleted in a batch.</summary>
</histogram>

<histogram name="OfflinePages.BatchDelete.TotalPageSize" units="KB">
  <owner>jianli@chromium.org</owner>
  <summary>
    Total size, in kilobytes, of all offline pages that are deleted in a batch.
  </summary>
</histogram>

<histogram name="OfflinePages.CanSaveRecentPage" enum="Boolean">
  <owner>bburns@chromium.org</owner>
  <summary>
    Can a recent page be saved or not? Logged for all attempts to save
  </summary>
</histogram>

<histogram name="OfflinePages.ClearAllStatus" enum="OfflinePagesClearAllStatus">
  <obsolete>
    Deprecated 3/2016, and replaced by OfflinePages.ClearAllStatus2.
  </obsolete>
  <owner>jianli@chromium.org</owner>
  <summary>Status code of wiping out the offline page data.</summary>
</histogram>

<histogram name="OfflinePages.ClearAllStatus2"
    enum="OfflinePagesClearAllStatus">
  <owner>jianli@chromium.org</owner>
  <summary>Status code of wiping out the offline page data.</summary>
</histogram>

<histogram name="OfflinePages.DeletePage.AccessCount">
  <owner>jianli@chromium.org</owner>
  <summary>
    Number of accesses to the offline page since its creation. This is reported
    when the offline page was deleted.
  </summary>
</histogram>

<histogram name="OfflinePages.DeletePage.FreeSpaceMB" units="MB">
  <owner>jianli@chromium.org</owner>
  <summary>
    The amount of free space available, in megabytes, on the user's device after
    the page is deleted.

    Note that before M52 this operation was started before delete operation.
  </summary>
</histogram>

<histogram name="OfflinePages.DeletePage.FreeSpacePercentage" units="%">
  <obsolete>
    Deprecated as of 5/2016. Marginal applicability.
  </obsolete>
  <owner>jianli@chromium.org</owner>
  <summary>
    The percentage of free space available on the user's device when the page is
    being deleted.
  </summary>
</histogram>

<histogram name="OfflinePages.DeletePage.LastOpenToCreated" units="minutes">
  <owner>jianli@chromium.org</owner>
  <summary>
    Length of time between when an offline page was created and was opened last
    time. This is reported when the page was deleted.
  </summary>
</histogram>

<histogram name="OfflinePages.DeletePage.PageSize" units="KB">
  <owner>jianli@chromium.org</owner>
  <summary>Size of the offline page, in kilobytes, that was deleted.</summary>
</histogram>

<histogram name="OfflinePages.DeletePage.TimeSinceLastOpen" units="minutes">
  <owner>jianli@chromium.org</owner>
  <summary>
    Length of time between when an offline page was last opened and was deleted.
  </summary>
</histogram>

<histogram name="OfflinePages.DeletePage.TotalPageSizeAsPercentageOfFreeSpace"
    units="%">
  <owner>fgorski@chromium.org</owner>
  <owner>jianli@chromium.org</owner>
  <summary>
    The percentage of space taken by offline pages from the free space that
    could be available, if the feature was not present. I.e. considering
    situation where the user has: Free Space, Offline content, other apps and
    data. This is a percentage of: Offline content / (Offline content + Free
    Space).

    The value will be recorded after user deletes a single or multiple offline
    pages. In case pages are removed in bulk, this value will be reported once.
    This value is only reported with deleting, as we are trying to infer if lack
    of free space might have caused the user to delete.
  </summary>
</histogram>

<histogram name="OfflinePages.DeletePageResult"
    enum="OfflinePagesDeletePageResult">
  <owner>jianli@chromium.org</owner>
  <summary>Result of removing an offline copy for a page.</summary>
</histogram>

<histogram name="OfflinePages.Edit.BookmarkUrlChangedForOfflinePage"
    enum="BooleanMatched">
  <obsolete>
    Deprecated 5/2016. Offline pages no longer depend on bookmarks UI.
  </obsolete>
  <owner>dougarnett@chromium.org</owner>
  <summary>
    Whether a user-edited bookmark URL had a saved offline page.
  </summary>
</histogram>

<histogram name="OfflinePages.Filter.OnlineWhenEntering" enum="Boolean">
  <obsolete>
    Deprecated 5/2016. Offline pages no longer depend on bookmarks UI.
  </obsolete>
  <owner>fgorski@chromium.org</owner>
  <owner>jianli@chromium.org</owner>
  <summary>
    Whether user is connected when entering the filter with offline only
    content.
  </summary>
</histogram>

<histogram name="OfflinePages.Filter.OnlineWhenLeaving" enum="Boolean">
  <obsolete>
    Deprecated 5/2016. Offline pages no longer depend on bookmarks UI.
  </obsolete>
  <owner>fgorski@chromium.org</owner>
  <owner>jianli@chromium.org</owner>
  <summary>
    Whether user is connected when leaving the filter with offline only content.
  </summary>
</histogram>

<histogram name="OfflinePages.FirstOpenSinceCreated" units="minutes">
  <owner>jianli@chromium.org</owner>
  <summary>
    The time elapsed between creation of the offline page and the first time it
    was opened.
  </summary>
</histogram>

<histogram name="OfflinePages.IncognitoSave" enum="Boolean">
  <obsolete>
    Deprecated 5/2016. Not longer needed.
  </obsolete>
  <owner>jianli@chromium.org</owner>
  <summary>
    Whether the page that was being saved offline was in incognito mode.
  </summary>
</histogram>

<histogram name="OfflinePages.LaunchLocation" enum="StarsLaunchLocation">
  <obsolete>
    Deprecated 5/2016. Offline pages no longer depend on bookmarks UI.
  </obsolete>
  <owner>fgorski@chromium.org</owner>
  <owner>jianli@chromium.org</owner>
  <summary>Logs a UI location from which an offline page is launched.</summary>
</histogram>

<histogram name="OfflinePages.LoadStatus" enum="OfflinePagesLoadStatus">
  <owner>jianli@chromium.org</owner>
  <summary>
    Status code of loading from the offline pages metadata store.
  </summary>
</histogram>

<histogram name="OfflinePages.LoadSuccess" enum="BooleanSuccess">
  <obsolete>
    Deprecated 10/2015, and replaced by OfflinePages.LoadStatus.
  </obsolete>
  <owner>jianli@chromium.org</owner>
  <summary>
    Whether an attempt to load the offline pages metadata store was successful.
  </summary>
</histogram>

<histogram name="OfflinePages.Model.ArchiveDirCreationTime" units="ms">
  <owner>dewittj@chromium.org</owner>
  <owner>jianli@chromium.org</owner>
  <summary>
    The amount of time to create the offline pages archive directory.
  </summary>
</histogram>

<histogram name="OfflinePages.Model.ConstructionToLoadedEventTime" units="ms">
  <owner>dewittj@chromium.org</owner>
  <owner>jianli@chromium.org</owner>
  <summary>
    The amount of time to create the offline pages archive directory and load
    the offline page model.
  </summary>
</histogram>

<histogram name="OfflinePages.OfflinePageCount">
  <obsolete>
    Deprecated 5/2016. This was the dup of OfflinePages.SavedPageCount.
  </obsolete>
  <owner>fgorski@chromium.org</owner>
  <owner>jianli@chromium.org</owner>
  <summary>Number of offline pages the user has. Android only.</summary>
</histogram>

<histogram name="OfflinePages.OnlineOnOpen" enum="Boolean">
  <obsolete>
    Deprecated 5/2016. Offline pages no longer depend on bookmarks UI.
  </obsolete>
  <owner>jianli@chromium.org</owner>
  <summary>
    Whether the user was online when a saved page with offline copy was opened.
  </summary>
</histogram>

<histogram name="OfflinePages.OpenSinceLastOpen" units="minutes">
  <owner>jianli@chromium.org</owner>
  <summary>Length of time between two consecutive opens.</summary>
</histogram>

<histogram name="OfflinePages.PageLifetime" units="minutes">
  <owner>jianli@chromium.org</owner>
  <summary>
    Length of time between when an offline page was created and was removed.
  </summary>
</histogram>

<histogram name="OfflinePages.PageSize" units="KB">
  <owner>jianli@chromium.org</owner>
  <summary>Size of the saved copy of an offline page.</summary>
</histogram>

<histogram name="OfflinePages.RedirectToOfflineCount" units="count">
  <owner>jianli@chromium.org</owner>
  <summary>
    Number of times an offline copy was loaded instead when the user is trying
    to load the online version of a saved page and there is no network
    connection.
  </summary>
</histogram>

<histogram name="OfflinePages.RedirectToOnlineCount" units="count">
  <owner>jianli@chromium.org</owner>
  <summary>
    Number of times an online version was loaded instead when the user is trying
    to load the offline copy of a saved page and there is network connection.
    connection.
  </summary>
</histogram>

<histogram name="OfflinePages.SavedPageCount" units="pages">
  <owner>jianli@chromium.org</owner>
  <summary>
    Number of saved pages restored from the offline pages metadata store when it
    is logged.
  </summary>
</histogram>

<histogram name="OfflinePages.SavePage.FreeSpaceMB" units="MB">
  <owner>jianli@chromium.org</owner>
  <summary>
    The amount of free space available, in megabytes, on the user's device after
    the page is saved.

    Note that before M52 this operation was started before save operation.
  </summary>
</histogram>

<histogram name="OfflinePages.SavePage.FreeSpacePercentage" units="%">
  <obsolete>
    Deprecated as of 5/2016. Marginal applicability.
  </obsolete>
  <owner>jianli@chromium.org</owner>
  <summary>
    The percentage of free space available on the user's device when the page is
    being saved.
  </summary>
</histogram>

<histogram name="OfflinePages.SavePageResult" enum="OfflinePagesSavePageResult">
  <owner>jianli@chromium.org</owner>
  <summary>Result of saving an offline copy for a page.</summary>
</histogram>

<histogram name="OfflinePages.SavePageTime" units="ms">
  <owner>jianli@chromium.org</owner>
  <summary>
    The amount of time taken to save an offline copy for a page.
  </summary>
</histogram>

<histogram name="OfflinePages.SharedPageWasOffline"
    enum="OfflinePagesSharedPageWasOffline">
  <owner>dewittj@chromium.org</owner>
  <summary>Whether a shared page was an offline page or not.</summary>
</histogram>

<histogram name="OfflinePages.ShowOfflinePageOnBadNetwork" enum="Boolean">
  <owner>jianli@chromium.org</owner>
  <summary>
    Whether an offline page is shown, instead of error page, when the network is
    disconnected or poor condition.
  </summary>
</histogram>

<histogram name="OfflinePages.TotalPageSize" units="MB">
  <owner>fgorski@chromium.org</owner>
  <owner>jianli@chromium.org</owner>
  <summary>
    Total size of all the offline pages saved by the user.

    This value is recorded whenever the number of pages change, meaning after a
    page is added or removed. If pages are removed in bulk, this value will be
    reported only once.
  </summary>
</histogram>

<histogram name="OfflinePages.TotalPageSizePercentage" units="%">
  <obsolete>
    Deprecated as of 5/2016. Marginal applicability.
  </obsolete>
  <owner>fgorski@chromium.org</owner>
  <owner>jianli@chromium.org</owner>
  <summary>
    Total size of all the offline pages saved by the user as a percentage of
    total storage size.

    This value is recorded whenever the number of pages change, meaning after a
    page is added or removed.
  </summary>
</histogram>

<histogram name="OfflinePages.Wakeup.BatteryPercentage" units="%">
  <owner>petewil@chromium.org</owner>
  <owner>jianli@chromium.org</owner>
  <summary>
    Percentage of battery remaining when the offline page background loading
    task wakes up to check for work.
  </summary>
</histogram>

<histogram name="OfflinePages.Wakeup.ConnectedToPower" enum="BooleanConnected">
  <owner>petewil@chromium.org</owner>
  <owner>jianli@chromium.org</owner>
  <summary>
    Whether the device is plugged in when the offline page background load task
    wakes up to check or work.
  </summary>
</histogram>

<histogram name="OfflinePages.Wakeup.NetworkAvailable"
    enum="NetworkConnectionType">
  <owner>petewil@chromium.org</owner>
  <owner>jianli@chromium.org</owner>
  <summary>
    Which network is available (if any) when the offling page background loading
    task wakes up to check for work.
  </summary>
</histogram>

<histogram name="OfflinePolicy.SuccessfulResourceLoadPercentage" units="%">
  <obsolete>
    Deprecated 04/2016 as doesn't have data nor owner.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    When a page is loaded in offline mode, the percentage of resources on that
    page that were successfully loaded.
  </summary>
</histogram>

<histogram name="Omnibox.AggressiveHistoryURLProviderFieldTrialBeacon"
    enum="OmniboxAggressiveHistoryURLProviderFieldTrialBeacon">
  <obsolete>
    Aggressive HistoryURL provider field trial deleted in spring 2012.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    A number that indicates what omnibox ranking behavior the user is seeing as
    part of the OmniboxAggressiveHistoryURLProvider field trial
    (OmniboxAggressiveHistoryURLProvider).
  </summary>
</histogram>

<histogram name="Omnibox.AnswerParseSuccess" enum="BooleanSuccess">
  <owner>jdonnelly@chromium.org</owner>
  <summary>
    For each answer received in suggest responses, the number that are
    well-formed and contain all the required elements.
  </summary>
</histogram>

<histogram name="Omnibox.CharTypedToRepaintLatency" units="ms">
  <owner>asvitkine@chromium.org</owner>
  <summary>
    Records the time taken between a keystroke being typed in the omnibox and
    the text being painted. If there are multiple keystrokes before a paint,
    logs the time since the earliest one.
  </summary>
</histogram>

<histogram name="Omnibox.CutOrCopyAllText" units="count">
  <owner>mpearson@chromium.org</owner>
  <summary>
    The number of cut or copy commands on all selected text in the omnibox.
    Gathered on desktop platforms (Win, Mac, Linux, Chrome OS).
  </summary>
</histogram>

<histogram name="Omnibox.EnteredKeywordMode" enum="OmniboxEnteredKeywordMode">
  <owner>mpearson@chromium.org</owner>
  <summary>
    The number of times users enter keyword hint mode &quot;Search ___
    for:&quot; and how.
  </summary>
</histogram>

<histogram name="Omnibox.FocusToEditTime" units="ms">
  <owner>mpearson@chromium.org</owner>
  <summary>
    The length of time between when a user focused on the omnibox and first
    modifies the omnibox.
  </summary>
</histogram>

<histogram name="Omnibox.FocusToOpenTime" units="ms">
  <owner>mpearson@chromium.org</owner>
  <obsolete>
    Replaced with Omnibox.FocusToOpenTimeAnyPopupState in April 2014.
  </obsolete>
  <summary>
    The length of time between when a user focused on the omnibox and opened an
    omnibox match (which could be what they typed or a suggestion).
  </summary>
</histogram>

<histogram name="Omnibox.FocusToOpenTimeAnyPopupState" units="ms">
  <owner>mpearson@chromium.org</owner>
  <summary>
    The length of time between when a user focused on the omnibox and opened an
    omnibox match (which could be what they typed or a suggestion).  This is
    recorded regardless of whether the omnibox dropdown (a.k.a. popup) is open.
  </summary>
</histogram>

<histogram name="Omnibox.HardwareKeyboardModeEnabled" enum="BooleanEnabled">
  <owner>lpromero@chromium.org</owner>
  <summary>
    iOS: Records whether a hardware keyboard is used to input text. This is
    recorded each time a UIKeyboardWillChangeFrameNotification is sent while
    editing the omnibox text.
  </summary>
</histogram>

<histogram name="Omnibox.HasLegalDefaultMatchWithoutCompletion" enum="Boolean">
  <obsolete>
    Deprecated 2015-01-27
  </obsolete>
  <owner>mpearson@chromium.org</owner>
  <summary>
    Whether there was at least one legal default match without an
    |inline_autocompletion|.  Recorded every time
    AutocompleteResult::SortAndCull() is called, which could happen multiple
    times on each keystroke.
  </summary>
</histogram>

<histogram name="Omnibox.InputType" enum="OmniboxInputType">
  <owner>mpearson@chromium.org</owner>
  <summary>
    The kind of input the user provided when using the omnibox to go somewhere.
    The type can be misleading.  For example if the user typed 'http:/', it gets
    marked as a query because it cannot be opened as a URL even though the user
    probably wanted and selected a URL from the list of suggestions.
  </summary>
</histogram>

<histogram name="Omnibox.IsPasteAndGo" enum="Boolean">
  <owner>mpearson@chromium.org</owner>
  <summary>
    Whether an omnibox interaction is a paste-and-search/paste-and-go action.
    (This histogram records both of these in the &quot;True&quot; bucket for
    this histogram because both of these are referred to as paste-and-go in the
    code.)  These typically involve right-clicking in the omnibox and selecting
    that option from the dropdown.
  </summary>
</histogram>

<histogram name="Omnibox.IsPopupOpen" enum="Boolean">
  <owner>mpearson@chromium.org</owner>
  <summary>
    Whether the omnibox popup (a.k.a. dropdown) is open at the time the user
    used the omnibox to go somewhere.  It can be closed if, for instance, the
    user clicked in the omnibox and hit return to reload the same page.  Also,
    because paste-and-search/paste-and-go actions ignore the current content of
    the omnibox dropdown (if it is open) when they happen, we pretend the
    dropdown is closed when logging these.
  </summary>
</histogram>

<histogram name="Omnibox.JustDeletedText" enum="Boolean">
  <owner>mpearson@chromium.org</owner>
  <summary>
    Whether the user deleted text immediately before selecting an omnibox
    suggestion.  This is usually the result of pressing backspace or delete.
  </summary>
</histogram>

<histogram name="Omnibox.NumEvents">
  <owner>mpearson@chromium.org</owner>
  <summary>The number of times users used the omnibox to go somewhere.</summary>
</histogram>

<histogram name="Omnibox.NumTypedTerms" units="terms">
  <owner>mpearson@chromium.org</owner>
  <summary>
    The number of terms in the text the user entered in the omnibox when they
    used the omnibox to go somewhere.  Terms are defined by splitting on
    whitespace.  All values larger than 6 are recorded in bucket 6.
  </summary>
</histogram>

<histogram name="Omnibox.PageContext" enum="OmniboxPageContext">
  <owner>mpearson@chromium.org</owner>
  <summary>
    What the user was viewing when the user used the omnibox to go somewhere.
  </summary>
</histogram>

<histogram name="Omnibox.Paste" units="count">
  <owner>mpearson@chromium.org</owner>
  <summary>
    The number of paste commands on the text in the omnibox. Reported every time
    a paste command is done.
  </summary>
</histogram>

<histogram name="Omnibox.PasteAndGo" units="count">
  <owner>mpearson@chromium.org</owner>
  <summary>
    The number of paste-and-go commands on the text in the omnibox. Reported
    every time a paste-and-go command is done.
  </summary>
</histogram>

<histogram name="Omnibox.ProgressBarBreakPointUpdateCount"
    units="break point updates">
  <owner>kkimlabs@chromium.org</owner>
  <summary>
    The number of progress bar break point updates from page load started to
    page load finished.
  </summary>
</histogram>

<histogram name="Omnibox.ProgressBarUpdateCount" units="frame updates">
  <owner>kkimlabs@chromium.org</owner>
  <summary>
    The number of progress bar frame updates from page load started to page load
    finished. If there is no animation, this matches
    Omnibox.ProgressBarBreakPointUpdateCount. Note that there can be additional
    updates after page load finished, animating to 100%, but this histogram
    doesn't include them.
  </summary>
</histogram>

<histogram name="Omnibox.ProviderTime" units="ms">
  <obsolete>
    Deprecated 2015-06-12. Replaced by Omnibox.ProviderTime2.
  </obsolete>
  <owner>mpearson@chromium.org</owner>
  <summary>
    The length of time taken by the named provider&quot;s synchronous pass.
  </summary>
</histogram>

<histogram name="Omnibox.ProviderTime2" units="ms">
  <owner>mpearson@chromium.org</owner>
  <summary>
    The length of time taken by the named provider&quot;s synchronous pass.
  </summary>
</histogram>

<histogram name="Omnibox.QueryBookmarksTime">
  <obsolete>
    Deprecated 2012-11-14. Replaced by Omnibox.ProviderTime.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Time the HistoryContentProvider takes to perform a bookmark search.
  </summary>
</histogram>

<histogram name="Omnibox.QueryTime" units="ms">
  <obsolete>
    Deprecated 2015-06-12. Replaced by Omnibox.QueryTime2.
  </obsolete>
  <owner>mpearson@chromium.org</owner>
  <summary>
    Time it takes for the omnibox to become responsive to user input after the
    user has typed N characters. This measures the time it takes to start all
    the asynchronous autocomplete providers (but not wait for them to finish).
  </summary>
</histogram>

<histogram name="Omnibox.QueryTime2" units="ms">
  <owner>mpearson@chromium.org</owner>
  <summary>
    Time it takes for the omnibox to become responsive to user input after the
    user has typed N characters. This measures the time it takes to start all
    the asynchronous autocomplete providers (but not wait for them to finish).
  </summary>
</histogram>

<histogram name="Omnibox.SaveStateForTabSwitch.UserInputInProgress"
    units="count">
  <owner>mpearson@chromium.org</owner>
  <summary>
    When a user switches tabs, whether the omnibox had an edit in progress.
  </summary>
</histogram>

<histogram name="Omnibox.SearchEngine" enum="OmniboxSearchEngine">
  <obsolete>
    Made obsolete around Chrome 32.  Use Omnibox.SearchEngineType instead.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The id of search engine that was used for search in omnibox. See
    src/chrome/browser/search_engines/template_url_prepopulate_data.cc for more
    info.
  </summary>
</histogram>

<histogram name="Omnibox.SearchEngineType" enum="OmniboxSearchEngineType">
  <owner>mpearson@chromium.org</owner>
  <summary>
    The type of search engine associated with a match opened from the omnibox.
  </summary>
</histogram>

<histogram name="Omnibox.SearchProvider.AddHistoryResultsTime" units="ms">
  <owner>mpearson@chromium.org</owner>
  <summary>
    Time it takes to add all the raw history results to the list of matches.
  </summary>
</histogram>

<histogram name="Omnibox.SearchProvider.ConvertResultsTime" units="ms">
  <owner>mpearson@chromium.org</owner>
  <summary>
    Time it takes to convert all the results to matches and add them to a map,
    to keep the most relevant match for each result.
  </summary>
</histogram>

<histogram name="Omnibox.SearchProviderMatches">
  <owner>mpearson@chromium.org</owner>
  <summary>
    The number of matches returned by SearchProvider.  Emitted on every call to
    SearchProvider::Start(), which effectively means every key stroke in the
    omnibox.
  </summary>
</histogram>

<histogram name="Omnibox.SelectedPosition" units="position">
  <owner>mpearson@chromium.org</owner>
  <summary>
    The index of the item that the user selected in the omnibox popup (a.k.a.
    dropdown) list.  0 means the inline suggestion shown within the omnibox.
    This is also the same suggestion shown as the top item in the dropdown.  The
    second item in the dropdown will be recorded as bucket 1. The selected
    position is always set to 0 when the popup is closed at the time of
    navigation or if the user did a paste-and-search or paste-and-go action.
  </summary>
</histogram>

<histogram name="Omnibox.SuggestionUsed.Provider" enum="OmniboxProviderType">
  <owner>mpearson@chromium.org</owner>
  <summary>
    The provider of the suggestion the user selected when the user used the
    omnibox to go somewhere.
  </summary>
</histogram>

<histogram name="Omnibox.SuggestionUsed.ProviderAndResultType"
    enum="OmniboxProviderAndResultType">
  <owner>mpearson@chromium.org</owner>
  <summary>
    The provider and result type of the suggestion the user selected when the
    user used the omnibox to go somewhere.
  </summary>
</histogram>

<histogram name="Omnibox.SuggestionUsed.SearchVsUrl"
    enum="OmniboxSummarizedResultType">
  <owner>mpearson@google.com</owner>
  <summary>
    The rough type of the suggestion the user selected when the user used the
    omnibox to go somewhere.
  </summary>
</histogram>

<histogram name="Omnibox.SuggestRequest.Failure.GoogleResponseTime" units="ms">
  <owner>mpearson@chromium.org</owner>
  <summary>
    The time elapsed between the sending of a suggest request to Google until
    the time the request was returned with status==failed. Ignores requests that
    were canceled before being returned.
  </summary>
</histogram>

<histogram name="Omnibox.SuggestRequest.Success.GoogleResponseTime" units="ms">
  <owner>mpearson@chromium.org</owner>
  <summary>
    The time elapsed between the sending of a suggest request to Google until
    the time the request was returned with status==success. Ignores requests
    that were canceled before being returned.
  </summary>
</histogram>

<histogram name="Omnibox.SuggestRequests" enum="OmniboxSuggestRequests">
  <owner>mpearson@chromium.org</owner>
  <summary>
    Counts about the number of suggest requests the omnibox sent, invalidated,
    and replies received.
  </summary>
</histogram>

<histogram name="Omnibox.TypedLength" units="characters">
  <owner>mpearson@chromium.org</owner>
  <summary>
    The length of the text the user entered in the omnibox when he/she used the
    omnibox to go somewhere.  All values larger than 500 are recorded in bucket
    500.
  </summary>
</histogram>

<histogram name="Omnibox.TypingDuration" units="ms">
  <owner>mpearson@chromium.org</owner>
  <summary>
    The amount of time, in milliseconds, since the user first began modifying
    the text in the omnibox until the user used the omnibox to go somewhere. If
    at some point after modifying the text, the user reverted the modifications
    (thus seeing the current web page's URL again), then wrote in the omnibox
    again, this duration starts from the time of the second series of
    modification.
  </summary>
</histogram>

<histogram name="Omnibox.UserTextCleared" enum="OmniboxUserTextCleared">
  <owner>kenjibaheux@chromium.org</owner>
  <owner>mpearson@chromium.org</owner>
  <summary>
    Counts the number of times that the user text is cleared.  IME users are
    sometimes in the situation that IME was unintentionally turned on and failed
    to input latin alphabets (ASCII characters) or the opposite case.  In that
    case, users may delete all the text and the user text gets cleared.  This
    histogram helps us estimate how often this scenario happens.

    Note that since we don't currently correlate &quot;text cleared&quot; events
    with IME usage, this also captures many other cases where users clear the
    text; though it explicitly doesn't log deleting all the permanent text as
    the first action of an editing sequence (see comments in
    OnAfterPossibleChange()).
  </summary>
</histogram>

<histogram name="Omnibox.ZeroSuggest.MostVisitedResultsCounterfactual">
  <owner>hfung@chromium.org</owner>
  <summary>
    The number of most visited suggestions returned when ZeroSuggest would have
    triggered.  The suggestions appear when the user has focused but not
    modified the omnibox.
  </summary>
</histogram>

<histogram name="Omnibox.ZeroSuggestRequests" enum="OmniboxZeroSuggestRequests">
  <owner>hfung@chromium.org</owner>
  <summary>
    Counts about the number of zero suggest requests (requests for suggestions
    when the user has focused but not modified the omnibox) the omnibox sent,
    invalidated, and replies received.
  </summary>
</histogram>

<histogram name="OOBE.BootToSignInCompleted" units="ms">
  <owner>merkulova@chromium.org</owner>
  <summary>Time from boot to sign-in completed.</summary>
</histogram>

<histogram name="OOBE.ErrorScreensTime.Enrollment" units="ms">
  <owner>achuith@chromium.org</owner>
  <summary>
    Time spent on error screens during enrollment or autoenrollment.
  </summary>
</histogram>

<histogram name="OOBE.ErrorScreensTime.Signin" units="ms">
  <owner>achuith@chromium.org</owner>
  <summary>Time spent on error screens during signin.</summary>
</histogram>

<histogram name="OOBE.ErrorScreensTime.Supervised" units="ms">
  <owner>achuith@chromium.org</owner>
  <summary>
    Time spent on error screens during supervised user creation.
  </summary>
</histogram>

<histogram name="OOBE.ErrorScreensTime.Update" units="ms">
  <owner>achuith@chromium.org</owner>
  <summary>Time spent on error screens during update.</summary>
</histogram>

<histogram name="OOBE.NetworkErrorShown.Enrollment" enum="NetworkErrorType">
  <owner>achuith@google.com</owner>
  <summary>
    Number of times error screen has appeared during enrollment or
    autoenrollment.
  </summary>
</histogram>

<histogram name="OOBE.NetworkErrorShown.Signin" enum="NetworkErrorType">
  <owner>achuith@google.com</owner>
  <summary>Number of times error screen has appeared during signin.</summary>
</histogram>

<histogram name="OOBE.NetworkErrorShown.Supervised" enum="NetworkErrorType">
  <owner>achuith@google.com</owner>
  <summary>
    Number of times error screen has appeared during supervised user creation.
  </summary>
</histogram>

<histogram name="OOBE.NetworkErrorShown.Update" enum="NetworkErrorType">
  <owner>achuith@google.com</owner>
  <summary>Number of times error screen has appeared during update.</summary>
</histogram>

<histogram name="OOBE.StepCompletionTime" units="ms">
  <owner>merkulova@chromium.org</owner>
  <summary>Time spent on specific OOBE screen.</summary>
</histogram>

<histogram name="OriginChip.Pressed">
  <obsolete>
    Deprecated with CL 731423002. OriginChip has been removed.
  </obsolete>
  <owner>gbillock@chromium.org</owner>
  <summary>The number of clicks on the origin chip.</summary>
</histogram>

<histogram name="OriginTrials.FeatureEnabled" enum="OriginTrialEnableResult">
  <owner>chasej@chromium.org</owner>
  <owner>iclelland@chromium.org</owner>
  <summary>
    Counts the results of origin trial checks to enable experimental features.
    The result for each feature check is counted at most once per execution
    context (e.g. page, worker).
  </summary>
</histogram>

<histogram name="OriginTrials.FeatureEnabled.MessageGenerated"
    enum="OriginTrialMessageGeneratedResult">
  <owner>chasej@chromium.org</owner>
  <owner>iclelland@chromium.org</owner>
  <summary>
    Counts how often an error message is generated for each origin trial check
    to enable an experimental feature.
  </summary>
</histogram>

<histogram name="OSX.BluetoothAvailability" enum="BluetoothAvailability">
  <owner>erikchen@chromium.org</owner>
  <summary>
    The availability and capabilities of the Bluetooth driver on OSX devices.
    This metric is logged on startup.
  </summary>
</histogram>

<histogram name="OSX.CatSixtyFour" enum="CatSixtyFour">
  <obsolete>
    Obselete as of Chrome 43. See OmahaProxy for more relevant statistics.
  </obsolete>
  <owner>mark@chromium.org</owner>
  <summary>The cat's flavor and how many bits there are in it.</summary>
</histogram>

<histogram name="OSX.ExceptionHandlerEvents" enum="OSXExceptionHandlerEvents">
  <owner>mark@chromium.org</owner>
  <summary>Events seen by the OSX NSException swizzle.</summary>
</histogram>

<histogram name="OSX.Fullscreen.Enter" enum="OSXFullscreenParameters">
  <obsolete>
    Deprecated as of Chrome 40. See OSX.Fullscreen.Enter.Style,
    OSX.Fullscreen.Enter.WindowLocation and
    OSX.Settings.ScreensHaveSeparateSpaces.
  </obsolete>
  <owner>erikchen@chromium.org</owner>
  <summary>
    This event is recorded each time a user triggers fullscreen for a browser
    window. The value's bits reflect different parameters. Bit 0: Fullscreen
    entry mechanism (AppKit vs Immersive). Bit 1: Whether the window was on the
    primary screen (Primary vs. Secondary). Bit 2: Whether displays have
    separate spaces options is enabled (Seperate vs Shared). Bit 3: Whether
    there are multiple screens.
  </summary>
</histogram>

<histogram name="OSX.Fullscreen.Enter.Style" enum="OSXFullscreenStyle">
  <owner>erikchen@chromium.org</owner>
  <summary>
    This event is recorded each time a user triggers fullscreen for a browser
    window. It indicates the mechanism (immersive vs. AppKit) and the type of
    AppKit Fullscreen (Presentation Mode vs. Canonical Fullscreen).
  </summary>
</histogram>

<histogram name="OSX.Fullscreen.Enter.WindowLocation"
    enum="OSXFullscreenWindowLocation">
  <owner>erikchen@chromium.org</owner>
  <summary>
    This event is recorded each time a user triggers fullscreen for a browser
    window. It indicates the screen in which the window was fullscreened, and
    the number of screens available.
  </summary>
</histogram>

<histogram name="OSX.Handoff.Origin" enum="OSXHandoffOrigin">
  <owner>erikchen@chromium.org</owner>
  <summary>
    This event is recorded each time a Handoff is received by Chrome on OSX. The
    enumeration indicates the source of the Handoff.
  </summary>
</histogram>

<histogram name="OSX.RendererHost.SurfaceWaitTime" units="ms">
  <obsolete>
    Deprecated as of 11/2015.
  </obsolete>
  <owner>erikchen@chromium.org</owner>
  <summary>
    This event records the amount of time that the browser process main thread
    blocks, waiting for a frame with the right dimensions to arrive from the gpu
    process.
  </summary>
</histogram>

<histogram name="OSX.Settings.ScreensHaveSeparateSpaces"
    enum="OSXScreensHaveSeparateSpaces">
  <owner>erikchen@chromium.org</owner>
  <summary>
    The configuration of the setting &quot;Screens Have Separate Spaces&quot;
    available in OSX 10.9+.
  </summary>
</histogram>

<histogram name="OSX.SharedMemory.Mechanism" enum="OSXSharedMemoryMechanism">
  <obsolete>
    Deprecated as of Chrome 51 since Mach has become the default mechanism.
  </obsolete>
  <owner>erikchen@chromium.org</owner>
  <summary>
    A histogram entry is emitted each time a base::SharedMemory object is
    constructed. The value of the entry indicates the mechanism used to back the
    shared memory region.
  </summary>
</histogram>

<histogram name="OSX.SystemHotkeyMap.LoadSuccess" enum="BooleanSuccess">
  <owner>erikchen@chromium.org</owner>
  <summary>
    Whether an attempt to load the system hotkeys on a Mac was successful.
  </summary>
</histogram>

<histogram name="OutdatedUpgradeBubble.NumLaterPerEnableAU">
  <owner>mad@chromium.org</owner>
  <summary>
    Counts the number of times the user clicked on the later button of the
    outdated upgrade bubble, before clicking on the enable updates button in the
    same Chrome session.
  </summary>
</histogram>

<histogram name="OutdatedUpgradeBubble.NumLaterPerReinstall">
  <owner>mad@chromium.org</owner>
  <summary>
    Counts the number of times the user clicked on the later button of the
    outdated upgrade bubble, before clicking on the reinstall button in the same
    Chrome session.
  </summary>
</histogram>

<histogram name="Overscroll.Cancelled" enum="NavigationDirection">
  <owner>rbyers@chromium.org</owner>
  <owner>mfomitchev@chromium.org</owner>
  <summary>
    Overscroll gestures that were aborted before they were completed.
  </summary>
</histogram>

<histogram name="Overscroll.Completed" enum="OverscrollMode">
  <obsolete>
    Deprecated as of Chrome 44 in favour of Overscroll.Cancelled and
    Overscroll.Navigated2.
  </obsolete>
  <owner>rbyers@chromium.org</owner>
  <owner>mfomitchev@chromium.org</owner>
  <summary>Completed overscroll gestures.</summary>
  <details>
    An overscroll gesture starts when user scrolls past the edge of the web page
    and continues scrolling in the same direction. An overscroll gesture is
    completed when user stops scrolling (e.g. by lifting the fingers from the
    touchscreen or touchpad).
  </details>
</histogram>

<histogram name="Overscroll.Navigated" enum="OverscrollMode">
  <owner>rbyers@chromium.org</owner>
  <owner>mfomitchev@chromium.org</owner>
  <obsolete>
    Deprecated as of Chrome 44 to switch to NavigationDirection enum.
  </obsolete>
  <summary>
    Navigations that were triggered due to completed overscroll gesture. Note
    that not all completed overscroll gestures trigger a navigation.
  </summary>
</histogram>

<histogram name="Overscroll.Navigated2" enum="NavigationDirection">
  <owner>rbyers@chromium.org</owner>
  <owner>mfomitchev@chromium.org</owner>
  <summary>
    Navigations that were triggered due to completed overscroll gesture. Note
    that not all completed overscroll gestures trigger a navigation.
  </summary>
</histogram>

<histogram name="Overscroll.Started" enum="OverscrollMode">
  <owner>rbyers@chromium.org</owner>
  <owner>mfomitchev@chromium.org</owner>
  <obsolete>
    Deprecated as of Chrome 44 to switch to NavigationDirection enum.
  </obsolete>
  <summary>
    Overscroll gestures initiated by the user. Note that not all overcroll
    gestures started are completed (e.g. the overscroll gesture is aborted if
    user clicks or presses a key during the gesture).
  </summary>
</histogram>

<histogram name="Overscroll.Started2" enum="NavigationDirection">
  <owner>rbyers@chromium.org</owner>
  <owner>mfomitchev@chromium.org</owner>
  <summary>
    Overscroll gestures initiated by the user. Note that not all overcroll
    gestures started are completed (e.g. the overscroll gesture is aborted if
    user clicks or presses a key during the gesture).
  </summary>
</histogram>

<histogram name="Ozone.TouchNoiseFilter.FarApartTapDistance"
    units="squared pixels">
  <owner>pkotwicz@google.com</owner>
  <summary>
    The squared distance between taps which occur in quick succession. Only
    reported when the taps are far apart and touch noise filtering is enabled.
  </summary>
</histogram>

<histogram name="Ozone.TouchNoiseFilter.HorizontallyAlignedDistance"
    units="pixels">
  <owner>pkotwicz@google.com</owner>
  <summary>
    The horizontal distance from a &quot;touch press&quot; to the closest other
    touch. Only reported if there are two or more fingers onscreen and touch
    noise filtering is enabled.
  </summary>
</histogram>

<histogram name="Ozone.TouchNoiseFilter.TimeSinceLastNoiseOccurrence"
    units="ms">
  <owner>pkotwicz@google.com</owner>
  <summary>
    The amount of time between noisy touches. The amount of time since Chrome
    startup is recorded for the first noisy touch after startup.
  </summary>
</histogram>

<histogram name="Ozone.TouchNoiseFilter.TouchesAtSinglePositionDuration"
    units="ms">
  <owner>pkotwicz@google.com</owner>
  <summary>
    The time between taps which occur in quick succession at the same screen
    location. Only reported when touch noise filtering is enabled.
  </summary>
</histogram>

<histogram name="P2P.Client.Canceled.WaitingTimeSeconds" units="seconds">
  <owner>zeuthen@chromium.org</owner>
  <summary>
    The wall-clock time spent until a lookup was canceled.  This is reported
    every time p2p is used to find a candidate but the request was canceled.
  </summary>
</histogram>

<histogram name="P2P.Client.Found.CandidateCount" units="count">
  <owner>zeuthen@chromium.org</owner>
  <summary>
    The number of candidates on the LAN, i.e. the number of peers on the LAN
    offering at least N bytes of the requested file X. This is reported after
    examining responses from all peers on the LAN and picking a candidate.
  </summary>
</histogram>

<histogram name="P2P.Client.Found.ConnectionCount" units="count">
  <owner>zeuthen@chromium.org</owner>
  <summary>
    The number of p2p downloads of the peer that the returned URL points to.
    This is reported after examining responses from all peers on the LAN and
    picking a candidate.
  </summary>
</histogram>

<histogram name="P2P.Client.Found.WaitingTimeSeconds" units="seconds">
  <owner>zeuthen@chromium.org</owner>
  <summary>
    The wall-clock time spent waiting for the LAN-wide number of p2p downloads
    (i.e. the sum of p2p downloads from each peer on the LAN) to drop below the
    threshold.  This is reported after examining responses from all peers on the
    LAN and picking a candidate.
  </summary>
</histogram>

<histogram name="P2P.Client.LookupResult" enum="P2PLookupResult">
  <owner>zeuthen@chromium.org</owner>
  <summary>
    The result of the lookup. Possible values include &quot;Found&quot; (if a
    candidate - i.e. a peer offering at least N bytes of file X - was chosen),
    &quot;Not Found&quot; (if no candidate could be found), &quot;Vanished&quot;
    (if a candidate was found but vanished while waiting in line),
    &quot;Canceled&quot; (if a candidate was found but the request was canceled
    while waiting in line), and &quot;Filtered&quot; (if it was detected that
    mDNS was filtered). This is reported after examining responses from all
    peers on the LAN when p2p is used to find a candidate.
  </summary>
</histogram>

<histogram name="P2P.Client.NumPeers" units="count">
  <owner>zeuthen@chromium.org</owner>
  <summary>
    The number of peers implementing p2p file sharing on the network. This is
    reported every time p2p is used to look up a resource on a network where
    mDNS is not filtered.
  </summary>
</histogram>

<histogram name="P2P.Client.Vanished.WaitingTimeSeconds" units="seconds">
  <owner>zeuthen@chromium.org</owner>
  <summary>
    The wall-clock time spent waiting for one or more candidates (i.e. peers
    offering at least N bytes of file X) that all vanished before the LAN-wide
    number of p2p downloads dropped below the threshold. This is reported every
    time candidates were found using p2p but then vanished.
  </summary>
</histogram>

<histogram name="P2P.Server.ClientCount" units="count">
  <owner>zeuthen@chromium.org</owner>
  <summary>
    The number of currently connected HTTP clients. This is reported every time
    a HTTP client connects.
  </summary>
</histogram>

<histogram name="P2P.Server.ContentServedInterruptedMB" units="MB">
  <owner>zeuthen@chromium.org</owner>
  <summary>
    Number of megabytes (1,000,000 bytes) served from the device (via HTTP)
    where the client disconnects prematurely. This is reported every time a file
    is served and the client disconnects before receiving all data.
  </summary>
</histogram>

<histogram name="P2P.Server.ContentServedSuccessfullyMB" units="MB">
  <owner>zeuthen@chromium.org</owner>
  <summary>
    Number of megabytes (1,000,000 bytes) served from the device (via HTTP).
    This is reported every time a file have been served successfully.
  </summary>
</histogram>

<histogram name="P2P.Server.DownloadSpeedKBps" units="kB/s">
  <owner>zeuthen@chromium.org</owner>
  <summary>
    The average speed at which the download was served at, in kB/s. This is
    reported every time a file have been served successfully.
  </summary>
</histogram>

<histogram name="P2P.Server.FileCount" units="count">
  <owner>zeuthen@chromium.org</owner>
  <summary>
    The number of files available via p2p. This is reported every time a file is
    added or removed to the /var/cache/p2p directory.
  </summary>
</histogram>

<histogram name="P2P.Server.RangeBeginPercentage" units="%">
  <owner>zeuthen@chromium.org</owner>
  <summary>
    When a client resumes a download, the HTTP request includes range specifier
    to skip the bytes it already has. This metric conveys this as a percentage
    of the file size.  This is reported every time a file is served, even if the
    request does not include a range specifier (in which case 0 is reported).
  </summary>
</histogram>

<histogram name="P2P.Server.RequestResult" enum="P2PServerResult">
  <owner>zeuthen@chromium.org</owner>
  <summary>
    The result of the HTTP request. Possible values include &quot;Response
    Sent&quot; (the resource was found and the response was successfully sent),
    &quot;Response Interrupted&quot; (the resource was found but the client
    disconnected), &quot;Malformed&quot; (the request was malformed), &quot;Not
    Found&quot; (the request was for a resource that was not found), and
    &quot;Index&quot; (the request was for the '/' or '/index.html' resource).
    This is reported for every HTTP request handled.
  </summary>
</histogram>

<histogram name="PageActionController.ExtensionsWithPageActions">
  <owner>finnur@chromium.org</owner>
  <summary>
    The number of Extensions that have Page Actions. Measured once per startup
    per profile.
  </summary>
</histogram>

<histogram name="PageImportanceSignals.HadFormInteraction.OnCommitLoad"
    enum="HadFormInteraction">
  <owner>kouhei@chromium.org</owner>
  <summary>
    Number of pages that had any HTML form interaction before next page load.
  </summary>
</histogram>

<histogram name="PageLoad.AbortTiming.Close" units="ms">
  <owner>csharrison@chromium.org</owner>
  <summary>
    This metric is still experimental and not yet ready to be relied upon.
    Measures the time from navigation start to the time the page load was
    aborted by the user closing the tab or browser.
  </summary>
</histogram>

<histogram name="PageLoad.AbortTiming.ForwardBackNavigation" units="ms">
  <owner>csharrison@chromium.org</owner>
  <summary>
    This metric is still experimental and not yet ready to be relied upon.
    Measures the time from navigation start to the time the page load was
    aborted by a forward or back navigation.
  </summary>
</histogram>

<histogram name="PageLoad.AbortTiming.NewNavigation" units="ms">
  <owner>csharrison@chromium.org</owner>
  <summary>
    This metric is still experimental and not yet ready to be relied upon.
    Measures the time from navigation start to the time the page load was
    aborted by a new navigation.
  </summary>
</histogram>

<histogram name="PageLoad.AbortTiming.Other" units="ms">
  <owner>csharrison@chromium.org</owner>
  <summary>
    This metric is still experimental and not yet ready to be relied upon.
    Measures the time from navigation start to the time the page load was
    aborted. The abort cause is unknown.
  </summary>
</histogram>

<histogram name="PageLoad.AbortTiming.Reload" units="ms">
  <owner>csharrison@chromium.org</owner>
  <summary>
    This metric is still experimental and not yet ready to be relied upon.
    Measures the time from navigation start to the time the page load was
    aborted by a reload.
  </summary>
</histogram>

<histogram name="PageLoad.AbortTiming.Stop" units="ms">
  <owner>csharrison@chromium.org</owner>
  <summary>
    This metric is still experimental and not yet ready to be relied upon.
    Measures the time from navigation start to the time the page load was
    aborted by the user pressing stop.
  </summary>
</histogram>

<histogram name="PageLoad.AbortTiming.UnknownNavigation" units="ms">
  <owner>csharrison@chromium.org</owner>
  <summary>
    This metric is still experimental and not yet ready to be relied upon.
    Measures the time from navigation start to the time the page load was
    aborted by a navigation with unknown transition type.
  </summary>
</histogram>

<histogram name="PageLoad.Clients.DocWrite.Block.ReloadCount">
  <owner>shivanisha@chromium.org</owner>
  <owner>bmcquade@chromium.org</owner>
  <summary>
    This metric measures reloads in pages that have synchronous, cross-origin
    document.written scripts that could be blocked if document.write script
    blocking feature is enabled.
  </summary>
</histogram>

<histogram name="PageLoad.Clients.GoogleCaptcha.Events"
    enum="GoogleCaptchaEvent">
  <owner>mdw@chromium.org</owner>
  <summary>Events related to Google CAPTCHA pages being seen by users.</summary>
</histogram>

<histogram
    name="PageLoad.DocumentTiming.NavigationToDOMContentLoadedEventFired"
    units="ms">
  <owner>bmcquade@chromium.org</owner>
  <owner>csharrison@chromium.org</owner>
  <summary>
    Measures the time from navigation timing's navigation start to the time the
    DOMContentLoaded event is fired, for main frame documents.
  </summary>
</histogram>

<histogram name="PageLoad.DocumentTiming.NavigationToFirstLayout" units="ms">
  <owner>bmcquade@chromium.org</owner>
  <owner>csharrison@chromium.org</owner>
  <summary>
    Measures the time from navigation timing's navigation start to the time the
    first layout is performed, for main frame documents.
  </summary>
</histogram>

<histogram name="PageLoad.DocumentTiming.NavigationToLoadEventFired" units="ms">
  <owner>bmcquade@chromium.org</owner>
  <owner>csharrison@chromium.org</owner>
  <summary>
    Measures the time from navigation timing's navigation start to the time the
    load event is fired, for main frame documents.
  </summary>
</histogram>

<histogram name="PageLoad.EventCounts" enum="PageLoadEvent">
  <owner>csharrison@chromium.org</owner>
  <owner>bmcquade@chromium.org</owner>
  <obsolete>
    deprecated in favor of PageLoad.Events.*
  </obsolete>
  <summary>
    Captures counts of various page load events. These are enumerated in the
    enum page_load_metrics::PageLoadEvent, and include events like 'page load
    aborted before first layout'
  </summary>
</histogram>

<histogram name="PageLoad.Events.Committed" enum="CommittedLoadEvent">
  <owner>csharrison@chromium.org</owner>
  <owner>bmcquade@chromium.org</owner>
  <obsolete>
    Deprecated in favor of PageLoad.Timing2.NavigationToCommit and
    PageLoad.AbortTiming.
  </obsolete>
  <summary>
    Captures counts of load events post-commit, on relevant page loads (i.e.
    http/https, not same-page, not an error page). These events include aborts
    before first layout and successful first layouts. Note that the event
    'Committed load started' when segmented by background/foreground specifies
    whether the eventually committed load started in the background or
    foreground, not whether we backgrounded before the actual commit event. This
    is because we don't have all the data to filter relevant page loads on
    provisional loads.
  </summary>
</histogram>

<histogram name="PageLoad.Events.InternalError" enum="InternalErrorLoadEvent">
  <owner>csharrison@chromium.org</owner>
  <owner>bmcquade@chromium.org</owner>
  <summary>
    Counts of various internal error conditions in the page_load_metrics system.
  </summary>
</histogram>

<histogram name="PageLoad.Events.Provisional" enum="ProvisionalLoadEvent">
  <owner>csharrison@chromium.org</owner>
  <owner>bmcquade@chromium.org</owner>
  <obsolete>
    Deprecated Feb 2016 in favor of PageLoad.AbortTiming and
    PageLoad.Timing2.NavigationToFailedProvisionalLoad. Note that the
    corresponding background enumerations are no longer being tracked in the
    timing histograms.
  </obsolete>
  <summary>
    Captures counts of provisional load events. These include aborted, failed,
    and successful (committed) provisional loads.
  </summary>
</histogram>

<histogram name="PageLoad.Internal.ProvisionalAbortChainSize.ForwardBack"
    units="length">
  <owner>csharrison@chromium.org</owner>
  <summary>
    This histogram counts the number of provisional loads aborted by other
    navigations, until a final forward back navigation commits.
  </summary>
</histogram>

<histogram name="PageLoad.Internal.ProvisionalAbortChainSize.NewNavigation"
    units="length">
  <owner>csharrison@chromium.org</owner>
  <summary>
    This histogram counts the number of provisional loads aborted by new
    navigations, until a final new navigation commits.
  </summary>
</histogram>

<histogram name="PageLoad.Internal.ProvisionalAbortChainSize.NoCommit"
    units="length">
  <owner>csharrison@chromium.org</owner>
  <summary>
    This histogram counts the number of provisional loads aborted by new
    navigations. In this case the chain never ends with a commit. This is logged
    on the next abort signal comes in (e.g. tab close or new navigation).
  </summary>
</histogram>

<histogram name="PageLoad.Internal.ProvisionalAbortChainSize.Reload"
    units="length">
  <owner>csharrison@chromium.org</owner>
  <summary>
    This histogram counts the number of provisional loads aborted by other
    navigations, until a final reload navigation commits.
  </summary>
</histogram>

<histogram name="PageLoad.Internal.ProvisionalAbortChainSize.SameURL"
    units="length">
  <owner>csharrison@chromium.org</owner>
  <summary>
    This histogram counts the number of consecutive provisional loads aborted by
    other navigations with the same url (before redirects). It's logged when a
    provisional abort does not share a URL, or when a load finally commits. Note
    that we don't log chains of length 0.
  </summary>
</histogram>

<histogram name="PageLoad.PaintTiming.NavigationToFirstContentfulPaint"
    units="ms">
  <owner>ksakamoto@chromium.org</owner>
  <summary>
    The time from navigation start to first &quot;contentful&quot; paint.
  </summary>
</histogram>

<histogram name="PageLoad.PaintTiming.NavigationToFirstImagePaint" units="ms">
  <owner>ksakamoto@chromium.org</owner>
  <summary>
    Measures the time from navigation timing's navigation start to the time the
    first image is painted, for main frame documents. For images that render
    progressively, this is recorded as soon as any image pixels have been drawn.
  </summary>
</histogram>

<histogram name="PageLoad.PaintTiming.NavigationToFirstPaint" units="ms">
  <owner>ksakamoto@chromium.org</owner>
  <summary>
    Measures the time from navigation timing's navigation start to the time the
    first paint is performed, for main frame documents.
  </summary>
</histogram>

<histogram name="PageLoad.PaintTiming.NavigationToFirstTextPaint" units="ms">
  <owner>ksakamoto@chromium.org</owner>
  <summary>
    Measures the time from navigation timing's navigation start to the time the
    first non-blank text is painted, for main frame documents.
  </summary>
</histogram>

<histogram name="PageLoad.PaintTiming.ParseStartToFirstContentfulPaint"
    units="ms">
  <owner>bmcquade@chromium.org</owner>
  <owner>csharrison@chromium.org</owner>
  <summary>
    Measures the time from when the HTML parser started, to when the page first
    paints content.
  </summary>
</histogram>

<histogram name="PageLoad.ParseTiming.NavigationToParseStart" units="ms">
  <owner>bmcquade@chromium.org</owner>
  <owner>csharrison@chromium.org</owner>
  <summary>
    Measures the time from navigation timing's navigation start to the time the
    parser started, for main frame documents.
  </summary>
</histogram>

<histogram name="PageLoad.ParseTiming.ParseBlockedOnScriptLoad" units="ms">
  <owner>bmcquade@chromium.org</owner>
  <owner>csharrison@chromium.org</owner>
  <summary>
    Measures the time that the HTML parser spent blocked on the load of scripts,
    for main frame documents that finished parsing.
  </summary>
</histogram>

<histogram
    name="PageLoad.ParseTiming.ParseBlockedOnScriptLoadFromDocumentWrite"
    units="ms">
  <owner>bmcquade@chromium.org</owner>
  <owner>csharrison@chromium.org</owner>
  <summary>
    Measures the time that the HTML parser spent blocked on the load of scripts
    inserted from document.write, for main frame documents that finished
    parsing.
  </summary>
</histogram>

<histogram name="PageLoad.ParseTiming.ParseDuration" units="ms">
  <owner>bmcquade@chromium.org</owner>
  <owner>csharrison@chromium.org</owner>
  <summary>
    Measures the time that the HTML parser was active, for main frame documents
    that finished parsing.
  </summary>
</histogram>

<histogram name="PageLoad.Timing.NavigationToDOMContentLoadedEventFired"
    units="ms">
  <owner>bmcquade@chromium.org</owner>
  <owner>csharrison@chromium.org</owner>
  <obsolete>
    deprecated in favor of PageLoad.Timing2.*
  </obsolete>
  <summary>
    Measures the time from navigation timing's navigation start to the time the
    DOMContentLoaded event is fired, for main frame documents.
  </summary>
</histogram>

<histogram name="PageLoad.Timing.NavigationToFirstLayout" units="ms">
  <owner>bmcquade@chromium.org</owner>
  <owner>csharrison@chromium.org</owner>
  <obsolete>
    deprecated in favor of PageLoad.Timing2.*
  </obsolete>
  <summary>
    Measures the time from navigation timing's navigation start to the time the
    first layout is performed, for main frame documents.
  </summary>
</histogram>

<histogram name="PageLoad.Timing.NavigationToLoadEventFired" units="ms">
  <owner>bmcquade@chromium.org</owner>
  <owner>csharrison@chromium.org</owner>
  <obsolete>
    deprecated in favor of PageLoad.Timing2.*
  </obsolete>
  <summary>
    Measures the time from navigation timing's navigation start to the time the
    load event is fired, for main frame documents.
  </summary>
</histogram>

<histogram name="PageLoad.Timing2.DOMLoadingToDOMContentLoadedEventFired"
    units="ms">
  <owner>bmcquade@chromium.org</owner>
  <owner>csharrison@chromium.org</owner>
  <summary>
    Measures the time from when DOM loading occurs (the time that HTML parsing
    begins) to the time the DOMContentLoaded event is fired, for main frame
    documents. This is equivalent to the time that the HTML document resource
    was being parsed.
  </summary>
</histogram>

<histogram name="PageLoad.Timing2.DOMLoadingToFirstContentfulPaint" units="ms">
  <owner>bmcquade@chromium.org</owner>
  <owner>csharrison@chromium.org</owner>
  <summary>
    Measures the time from when DOM loading occurs (the time that HTML parsing
    begins) to first &quot;contentful&quot; paint.
  </summary>
</histogram>

<histogram name="PageLoad.Timing2.ForegroundToFirstPaint" units="ms">
  <owner>pkotwicz@chromium.org</owner>
  <summary>
    Measures the time from a background tab being switched to the foreground to
    the time the first paint is performed, for main frame documents.
  </summary>
</histogram>

<histogram name="PageLoad.Timing2.NavigationToCommit" units="ms">
  <owner>bmcquade@chromium.org</owner>
  <owner>csharrison@chromium.org</owner>
  <summary>
    Measures the time from navigation timing's navigation start to the time the
    navigation committed, for main frame documents.
  </summary>
</histogram>

<histogram name="PageLoad.Timing2.NavigationToDOMContentLoadedEventFired"
    units="ms">
  <owner>bmcquade@chromium.org</owner>
  <owner>csharrison@chromium.org</owner>
  <summary>
    Measures the time from navigation timing's navigation start to the time the
    DOMContentLoaded event is fired, for main frame documents. This metric is
    being phased out in favor of the PageLoad.DocumentTiming equivalent and will
    be deprecated in M54.
  </summary>
</histogram>

<histogram name="PageLoad.Timing2.NavigationToFailedProvisionalLoad" units="ms">
  <owner>bmcquade@chromium.org</owner>
  <owner>shivanisha@chromium.org</owner>
  <summary>
    Measures the time from navigation timing's navigation start to the time the
    provisional load failed. Only measures provisional loads that failed in the
    foreground.
  </summary>
</histogram>

<histogram name="PageLoad.Timing2.NavigationToFirstBackground" units="ms">
  <owner>bmcquade@chromium.org</owner>
  <owner>csharrison@chromium.org</owner>
  <summary>
    Measures the time from navigation timing's navigation start to the time the
    user first backgrounds the tab. Only measures navigations that started in
    the foreground.
  </summary>
</histogram>

<histogram name="PageLoad.Timing2.NavigationToFirstContentfulPaint" units="ms">
  <owner>ksakamoto@chromium.org</owner>
  <summary>
    The time from navigation start to first &quot;contentful&quot; paint.  This
    metric is being phased out in favor of the PageLoad.PaintTiming equivalent
    and will be deprecated in M54.
  </summary>
</histogram>

<histogram name="PageLoad.Timing2.NavigationToFirstForeground" units="ms">
  <owner>bmcquade@chromium.org</owner>
  <owner>csharrison@chromium.org</owner>
  <summary>
    Measures the time from navigation timing's navigation start to the time the
    user first foregrounds an initially backgrounded tab. Only measures
    navigations that started in the background.
  </summary>
</histogram>

<histogram name="PageLoad.Timing2.NavigationToFirstImagePaint" units="ms">
  <owner>ksakamoto@chromium.org</owner>
  <summary>
    Measures the time from navigation timing's navigation start to the time the
    first image is painted, for main frame documents. For images that render
    progressively, this is recorded as soon as any image pixels have been drawn.
    This metric is being phased out in favor of the PageLoad.PaintTiming
    equivalent and will be deprecated in M54.
  </summary>
</histogram>

<histogram name="PageLoad.Timing2.NavigationToFirstLayout" units="ms">
  <owner>bmcquade@chromium.org</owner>
  <owner>csharrison@chromium.org</owner>
  <summary>
    Measures the time from navigation timing's navigation start to the time the
    first layout is performed, for main frame documents. This metric is being
    phased out in favor of the PageLoad.DocumentTiming equivalent and will be
    deprecated in M54.
  </summary>
</histogram>

<histogram name="PageLoad.Timing2.NavigationToFirstPaint" units="ms">
  <owner>ksakamoto@chromium.org</owner>
  <summary>
    Measures the time from navigation timing's navigation start to the time the
    first paint is performed, for main frame documents. This metric is being
    phased out in favor of the PageLoad.PaintTiming equivalent and will be
    deprecated in M54.
  </summary>
</histogram>

<histogram name="PageLoad.Timing2.NavigationToFirstTextPaint" units="ms">
  <owner>ksakamoto@chromium.org</owner>
  <summary>
    Measures the time from navigation timing's navigation start to the time the
    first non-blank text is painted, for main frame documents. This metric is
    being phased out in favor of the PageLoad.PaintTiming equivalent and will be
    deprecated in M54.
  </summary>
</histogram>

<histogram name="PageLoad.Timing2.NavigationToLoadEventFired" units="ms">
  <owner>bmcquade@chromium.org</owner>
  <owner>csharrison@chromium.org</owner>
  <summary>
    Measures the time from navigation timing's navigation start to the time the
    load event is fired, for main frame documents. This metric is being phased
    out in favor of the PageLoad.DocumentTiming equivalent and will be
    deprecated in M54.
  </summary>
</histogram>

<histogram name="PageLoad.Timing2.ParseBlockedOnScriptLoad" units="ms">
  <owner>bmcquade@chromium.org</owner>
  <owner>csharrison@chromium.org</owner>
  <summary>
    Measures the time that the HTML parser spent blocked on the load of scripts,
    for main frame documents that started parsing.
  </summary>
</histogram>

<histogram name="PageLoad.Timing2.ParseBlockedOnScriptLoad.ParseComplete"
    units="ms">
  <owner>bmcquade@chromium.org</owner>
  <owner>csharrison@chromium.org</owner>
  <summary>
    Measures the time that the HTML parser spent blocked on the load of scripts,
    for main frame documents that finished parsing. This metric is being phased
    out in favor of the PageLoad.ParseTiming equivalent and will be deprecated
    in M54.
  </summary>
</histogram>

<histogram name="PageLoad.Timing2.ParseBlockedOnScriptLoadFromDocumentWrite"
    units="ms">
  <owner>bmcquade@chromium.org</owner>
  <owner>csharrison@chromium.org</owner>
  <summary>
    Measures the time that the HTML parser spent blocked on the load of scripts
    inserted from document.write, for main frame documents that started parsing.
  </summary>
</histogram>

<histogram
    name="PageLoad.Timing2.ParseBlockedOnScriptLoadFromDocumentWrite.ParseComplete"
    units="ms">
  <owner>bmcquade@chromium.org</owner>
  <owner>csharrison@chromium.org</owner>
  <summary>
    Measures the time that the HTML parser spent blocked on the load of scripts
    inserted from document.write, for main frame documents that finished
    parsing. This metric is being phased out in favor of the
    PageLoad.ParseTiming equivalent and will be deprecated in M54.
  </summary>
</histogram>

<histogram name="PageLoad.Timing2.ParseDuration" units="ms">
  <owner>bmcquade@chromium.org</owner>
  <owner>csharrison@chromium.org</owner>
  <summary>
    Measures the time that the HTML parser was active, for main frame documents
    that finished parsing. This metric is being phased out in favor of the
    PageLoad.ParseTiming equivalent and will be deprecated in M54.
  </summary>
</histogram>

<histogram name="PageLoad.Timing2.ParseStartToFirstContentfulPaint" units="ms">
  <owner>bmcquade@chromium.org</owner>
  <owner>csharrison@chromium.org</owner>
  <summary>
    Measures the time from when the HTML parser started, to when the page first
    paints content. This metric is being phased out in favor of the
    PageLoad.PaintTiming equivalent and will be deprecated in M54.
  </summary>
</histogram>

<histogram name="PartitionAlloc.CommittedSize" units="MB">
  <owner>haraken@chromium.org</owner>
  <summary>
    The committed memory size in PartitionAlloc. The value is reported when we
    see the highest memory usage we've ever seen in the renderer process.
  </summary>
</histogram>

<histogram name="PasswordBubble.DisplayDisposition"
    enum="PasswordBubbleDisplayDisposition">
  <owner>vasilii@chromium.org</owner>
  <summary>
    When the password management bubble opened, what state was it in?
  </summary>
</histogram>

<histogram name="PasswordGeneration.Event" enum="PasswordGenerationEvent">
  <owner>gcasto@chromium.org</owner>
  <summary>
    Measures the frequency of various password generation events.

    Note that this histogram is logged from the renderer process, and
    consequently the numbers should not be directly compared to the other
    PasswordGeneration.* histograms, which are logged from the browser process.
    Histograms logged in different processes are lost at different rates, which
    introduces systematic bias between histograms logged in the renderer process
    vs. those logged in the browser process.
  </summary>
</histogram>

<histogram name="PasswordGeneration.SubmissionAvailableEvent"
    enum="PasswordSubmissionEvent">
  <owner>gcasto@chromium.org</owner>
  <owner>vabr@chromium.org</owner>
  <summary>
    Measures the frequency of submission events for passwords that could have
    been generated, but the user didn't choose to use the feature. This is to
    compare with PasswordGeneration.SubmssionEvent.
  </summary>
</histogram>

<histogram name="PasswordGeneration.SubmissionEvent"
    enum="PasswordSubmissionEvent">
  <owner>gcasto@chromium.org</owner>
  <owner>vabr@chromium.org</owner>
  <summary>
    Measures the frequency of submission events for generated passwords. This is
    similar to PasswordManager.ActionsTakenWithPsl but only tracks events which
    are interesting for generated passwords.
  </summary>
</histogram>

<histogram name="PasswordGeneration.UploadStarted" enum="Boolean">
  <owner>gcasto@chromium.org</owner>
  <summary>
    The number of times that we try to upload a form that we believe should
    trigger password generation. False means that something about the form would
    not allow us to try upload (not an Autofillable field, uploading disabled,
    Autofill servers in backoff, etc.). True does not mean that the upload
    actually completed successfully, just that it was started.
  </summary>
</histogram>

<histogram name="PasswordHash.CreateTime">
  <owner>mlerman@chromium.org</owner>
  <summary>
    Time required to create the local hash of the user's GAIA password.
  </summary>
</histogram>

<histogram name="PasswordManager.AccountChooserDialog"
    enum="AccountChooserDismissalReason">
  <owner>vasilii@chromium.org</owner>
  <summary>The dismissal reason of the account chooser.</summary>
</histogram>

<histogram name="PasswordManager.AccountsPerSite">
  <owner>gcasto@chromium.org</owner>
  <owner>vabr@chromium.org</owner>
  <summary>
    The number of accounts stored per site in the password manager (one event
    per site)
  </summary>
</histogram>

<histogram name="PasswordManager.AccountsReusingPassword" units="accounts">
  <owner>engedy@chromium.org</owner>
  <owner>vabr@chromium.org</owner>
  <summary>
    Records, for each account, the number of other accounts (across all sites
    and usernames) that reuse the same password. Only non-blacklisted,
    HTML-form-based accounts are considered.

    For each account, samples will only be recorded into the histograms that
    have the first suffix corresponding to whether that account was saved on a
    secure website or not. The second suffix is used to further categorize the
    other accounts that reuse the same password based on how they relate to the
    account in question, and whether they are secure. The number of other
    accounts in each category will be reported into histogram with the
    respective second suffixes.

    Metrics are collected once per browser start-up. In case of multiple
    profiles, the counts are for the profile for which a WebContents is first
    created.
  </summary>
</histogram>

<histogram name="PasswordManager.ActionsTaken"
    enum="PasswordManagerActionsTaken">
  <obsolete>
    Deprecated as of Chrome 32. See PasswordManagerActionsTakenWithPsl
  </obsolete>
  <owner>vabr@chromium.org</owner>
  <summary>
    Stats documenting how we handle every form containing a password, bucketed
    by the actions taken.
  </summary>
</histogram>

<histogram name="PasswordManager.ActionsTakenV3"
    enum="PasswordManagerActionsTakenV3">
  <owner>vabr@chromium.org</owner>
  <owner>yfriedman@chromium.org</owner>
  <summary>
    Stats documenting how we handle every form containing a password, bucketed
    by the actions taken.
  </summary>
</histogram>

<histogram name="PasswordManager.ActionsTakenWithPsl"
    enum="PasswordManagerActionsTakenWithPsl">
  <obsolete>
    Deprecated as of 3/18/2014. See PasswordManagerActionsTakenV3.
  </obsolete>
  <owner>vabr@chromium.org</owner>
  <owner>yfriedman@chromium.org</owner>
  <summary>
    Stats documenting how we handle every form containing a password, bucketed
    by the actions taken.
  </summary>
</histogram>

<histogram name="PasswordManager.AffiliationBackend.FetchSize" units="facets">
  <owner>engedy@chromium.org</owner>
  <summary>
    The number of facets for which affiliation information was requested in a
    network fetch. Recorded for each network fetch.
  </summary>
</histogram>

<histogram name="PasswordManager.AffiliationBackend.FirstFetchDelay" units="ms">
  <owner>engedy@chromium.org</owner>
  <summary>
    The time elapsed between creation of the AffiliationBackend and the first
    time it needed to issue a network fetch.
  </summary>
</histogram>

<histogram name="PasswordManager.AffiliationBackend.SubsequentFetchDelay"
    units="ms">
  <owner>engedy@chromium.org</owner>
  <summary>
    The elapsed time between subsequent network fetches. Recorded whenever the
    AffiliationBackend initiated a network fetch, regardless of success or
    failure.
  </summary>
</histogram>

<histogram name="PasswordManager.AffiliationDummyData.RequestResultCount"
    units="results">
  <owner>engedy@chromium.org</owner>
  <summary>
    The number of facets affiliated with a dummy Web facet, according to the
    affiliation information retrieved from the cache. Recorded for each dummy
    Web facet, once shortly after start-up, and then periodically every hour;
    but only if getting affiliations succeeded for the Web facet.
  </summary>
</histogram>

<histogram name="PasswordManager.AffiliationDummyData.RequestSuccess"
    enum="BooleanSuccess">
  <owner>engedy@chromium.org</owner>
  <summary>
    Whether or not affiliations of a dummy Web facet could be successfully
    retrieved from the cache. Recorded for each dummy Web facet, once shortly
    after start-up, and then periodically every hour.
  </summary>
</histogram>

<histogram name="PasswordManager.AffiliationFetcher.FetchErrorCode"
    enum="NetErrorCodes">
  <owner>engedy@chromium.org</owner>
  <summary>
    The network error code, as reported by the underlying URLFetcher. Recorded
    only for each network fetch that failed due to network/server errors.
  </summary>
</histogram>

<histogram name="PasswordManager.AffiliationFetcher.FetchHttpResponseCode"
    enum="HttpResponseCode">
  <owner>engedy@chromium.org</owner>
  <summary>
    The HTTP response code, as reported by the underlying URLFetcher. Recorded
    only for each network fetch that failed due to network/server errors.
  </summary>
</histogram>

<histogram name="PasswordManager.AffiliationFetcher.FetchResult"
    enum="AffiliationFetchResult">
  <owner>engedy@chromium.org</owner>
  <summary>
    Whether the network fetch succeeded, failed due to network/server errors, or
    contained malformed data. Recorded for each network fetch.
  </summary>
</histogram>

<histogram name="PasswordManager.AllowToCollectURLBubble.UIDismissalReason"
    enum="PasswordManagerAllowToCollectURLBubble.UIDismissalReason">
  <obsolete>
    The bubble isn't shown anymore. Become obsolete in Feb. 2015.
  </obsolete>
  <owner>melandory@chromium.org</owner>
  <owner>vasilii@chromium.org</owner>
  <summary>Why was &quot;Allow to collect URL?&quot; bubble closed?</summary>
</histogram>

<histogram name="PasswordManager.AutocompletePopupSuppressedByGeneration"
    enum="BooleanSuppressed">
  <owner>gcasto@chromium.org</owner>
  <summary>
    If the password manager UI was suppressed because generation UI was already
    being displayed for the same field.
  </summary>
</histogram>

<histogram name="PasswordManager.AutoSigninFirstRunDialog"
    enum="AutoSigninFirstRun">
  <owner>vasilii@chromium.org</owner>
  <summary>
    The dismissal reason of the auto-signin first run experience.
  </summary>
</histogram>

<histogram name="PasswordManager.BlacklistedSites">
  <owner>gcasto@chromium.org</owner>
  <owner>vabr@chromium.org</owner>
  <summary>
    The total number of sites that the user has blacklisted. Recorded by
    iterating over stored passwords once per run of Chrome.
  </summary>
</histogram>

<histogram name="PasswordManager.EmptyUsernames.CountInDatabase">
  <owner>vasilii@chromium.org</owner>
  <summary>
    Number of password forms with empty username in the Login Database. This is
    recorded on startup.
  </summary>
</histogram>

<histogram
    name="PasswordManager.EmptyUsernames.FormWithoutUsernameFieldIsPasswordChangeForm"
    enum="PasswordManagerEmptyUsernamePasswordChangeForm">
  <owner>msramek@chromium.org</owner>
  <owner>vasilii@chromium.org</owner>
  <summary>
    When parsing a password form, and no username field is detected, whether
    this was a password change form.
  </summary>
</histogram>

<histogram name="PasswordManager.EmptyUsernames.OfferedToSave"
    enum="PasswordManagerShowEmptyUsername">
  <owner>vasilii@chromium.org</owner>
  <summary>
    When offering to save a password, whether the username is empty.
  </summary>
</histogram>

<histogram name="PasswordManager.EmptyUsernames.ParsedUsernameField"
    enum="PasswordManagerEmptyUsernameField">
  <owner>vasilii@chromium.org</owner>
  <summary>
    When parsing a password form, whether a username field is detected.
  </summary>
</histogram>

<histogram name="PasswordManager.EmptyUsernames.PasswordFieldCount">
  <owner>msramek@chromium.org</owner>
  <owner>vasilii@chromium.org</owner>
  <summary>
    The number of password fields for password forms that do not have a username
    field. This is recorded every time such a password form is successfully
    parsed. Note that the parsing is attempted when the form is encountered (i.e
    when the document is loaded) and also when it is submitted.
  </summary>
</histogram>

<histogram name="PasswordManager.EmptyUsernames.TextAndPasswordFieldCount">
  <owner>msramek@chromium.org</owner>
  <owner>vasilii@chromium.org</owner>
  <summary>
    The total number of text and password fields for password forms that do not
    have a username field. This is recorded every time such a password form is
    successfully parsed. Note that the parsing is attempted when the form is
    encountered (i.e when the document is loaded) and also when it is submitted.
  </summary>
</histogram>

<histogram name="PasswordManager.EmptyUsernames.WithoutCorrespondingNonempty">
  <owner>msramek@chromium.org</owner>
  <owner>vasilii@chromium.org</owner>
  <summary>
    Number of password forms with empty username in the Login Database for which
    there is not another password form from the same realm with a nonempty
    username. In other words, number of password forms with empty username which
    we do not suspect to be reauthentication forms.
  </summary>
</histogram>

<histogram name="PasswordManager.Enabled" enum="BooleanEnabled">
  <owner>vabr@chromium.org</owner>
  <summary>
    Indicates whether the password manager is enabled when a tab is opened. This
    includes prerendered tabs.
  </summary>
</histogram>

<histogram name="PasswordManager.ExportedPasswordsPerUserInCSV">
  <owner>xunlu@chromium.org</owner>
  <owner>vabr@chromium.org</owner>
  <summary>The number of passwords exported in CSV format per user.</summary>
</histogram>

<histogram name="PasswordManager.FilledCredentialWasFromAndroidApp"
    enum="PasswordManagerFilledAndroidCredentials">
  <owner>msramek@chromium.org</owner>
  <owner>engedy@chromium.org</owner>
  <summary>
    When a credential is filled, whether it comes from an Android app.
  </summary>
</histogram>

<histogram name="PasswordManager.FillSuggestionsIncludeAndroidAppCredentials"
    enum="PasswordManagerOfferedAndroidCredentials">
  <owner>msramek@chromium.org</owner>
  <owner>engedy@chromium.org</owner>
  <summary>
    When offering to fill the username and password, whether at least one of the
    credentials in the dropdown comes from an Android app.
  </summary>
</histogram>

<histogram name="PasswordManager.FormDataDeserializationStatus"
    enum="FormDataDeserializationStatus">
  <owner>gcasto@chromium.org</owner>
  <owner>dvadym@chromium.org</owner>
  <summary>
    The success or failure of deserializing saved FormData. Failure either
    indicates corrupted data or the presence of bugs in the serialization or
    deserialization code.
  </summary>
</histogram>

<histogram name="PasswordManager.GeneratedFormHasNoFormManager"
    enum="BooleanFormManager">
  <owner>gcasto@chromium.org</owner>
  <owner>vabr@chromium.org</owner>
  <owner>deepak.m1@samsung.com</owner>
  <summary>
    When the generation state of a password was changed, records whether an
    existing form corresponding to the password was found.
  </summary>
</histogram>

<histogram name="PasswordManager.ImportedPasswordsPerUserInCSV">
  <owner>xunlu@chromium.org</owner>
  <owner>vabr@chromium.org</owner>
  <summary>The number of passwords imported in CSV format per user</summary>
</histogram>

<histogram name="PasswordManager.ImportPasswordFromCSVResult"
    enum="PasswordImportFromCSVResult">
  <owner>xunlu@chromium.org</owner>
  <owner>vabr@chromium.org</owner>
  <summary>
    The response code of successful or failed password import attempt from a CSV
    file.
  </summary>
</histogram>

<histogram name="PasswordManager.InfoBarResponse" enum="InfoBarResponse">
  <owner>vabr@chromium.org</owner>
  <obsolete>
    Deprecated as of 03/2016. This metric has been replaced by
    PasswordManager.UIDismissalReason.
  </obsolete>
  <summary>
    The distribution of responses to the &quot;Do you want Chrome to remember
    this password&quot;? info bar prompt.
  </summary>
</histogram>

<histogram
    name="PasswordManager.KeychainMigration.NumChromeOwnedInaccessiblePasswords">
  <owner>vasilii@chromium.org</owner>
  <summary>
    After migration from the Mac Keychain fails, records the number of passwords
    in the Keychain owned by Chrome but not accessible by it.
  </summary>
</histogram>

<histogram name="PasswordManager.KeychainMigration.NumFailedPasswords">
  <owner>vasilii@chromium.org</owner>
  <summary>
    After migration from the Mac Keychain fails, records the number of passwords
    in the Chrome Password Manager database for which the corresponding values
    in the Keychain are not accessible by Chrome.
  </summary>
</histogram>

<histogram name="PasswordManager.KeychainMigration.NumPasswordsOnFailure">
  <owner>vasilii@chromium.org</owner>
  <summary>
    After migration from the Mac Keychain fails, records the number of passwords
    in the Chrome Password Manager database to be migrated. As there is no
    partial migration, it's the total number of passwords in the DB.
  </summary>
</histogram>

<histogram name="PasswordManager.KeychainMigration.Status"
    enum="KeychainMigrationStatus">
  <owner>vasilii@chromium.org</owner>
  <summary>
    The status of passwords migration from the Keychain. It's recorded shortly
    after startup.
  </summary>
</histogram>

<histogram name="PasswordManager.KWalletDeserializationStatus"
    enum="BooleanSuccess">
  <owner>gcasto@chromium.org</owner>
  <owner>dvadym@chromium.org</owner>
  <summary>
    The success or failure of deserializing PasswordForms in KWallet. Failure
    either indicates corrupted data or the presense of bugs in the
    deserialization code.
  </summary>
</histogram>

<histogram name="PasswordManager.LinuxBackendStatistics">
  <owner>dvadym@chromium.org</owner>
  <owner>vabr@chromium.org</owner>
  <summary>
    Information about usage of password storage backends on Linux. It also
    includes whether a command line flag for a specific backend is given.
  </summary>
</histogram>

<histogram name="PasswordManager.LoginDatabaseFailedVersion">
  <owner>vasilii@chromium.org</owner>
  <summary>
    The version of LoginDatabase if the migration to a new one failed.
  </summary>
</histogram>

<histogram name="PasswordManager.LoginDatabaseInit"
    enum="LoginDatabaseInitError">
  <owner>vasilii@chromium.org</owner>
  <summary>An error on LoginDatabase initialization.</summary>
</histogram>

<histogram name="PasswordManager.MultiAccountPasswordUpdateAction"
    enum="MultiAccountUpdateBubbleUserAction">
  <owner>dvadym@chromium.org</owner>
  <summary>
    A user action when a password update bubble with multiple accounts is shown.
  </summary>
</histogram>

<histogram name="PasswordManager.NumPasswordsDeletedByBulkDelete">
  <owner>vabr@chromium.org</owner>
  <summary>
    Number of passwords deleted when the user chooses to clear passwords via the
    clear browsing data UI.
  </summary>
</histogram>

<histogram name="PasswordManager.NumPasswordsDeletedDuringRollback">
  <owner>vasilii@chromium.org</owner>
  <summary>
    Number of passwords deleted when browsing data is cleared during rollback.
  </summary>
</histogram>

<histogram name="PasswordManager.NumPasswordsDeletedWhenBlacklisting">
  <obsolete>
    Deprecated as of 08/2015.
  </obsolete>
  <owner>vabr@chromium.org</owner>
  <summary>
    When the user chooses to never remember passwords for a form, we remove all
    previously saved credentials for that form. This is the count of those
    credentials.
  </summary>
</histogram>

<histogram name="PasswordManager.NumPasswordsNotShown">
  <owner>vabr@chromium.org</owner>
  <summary>
    The password manager only shows those credentials that are considered the
    best match for a particular form. This stat keep track of the credentials
    that were not as good of a match and were suppressed.
  </summary>
</histogram>

<histogram name="PasswordManager.OsPasswordStatus"
    enum="PasswordManagerOsPasswordStatus">
  <owner>vabr@chromium.org</owner>
  <owner>wfh@chromium.org</owner>
  <summary>
    Indicates whether the user's OS password is blank or not at browser startup.
  </summary>
</histogram>

<histogram name="PasswordManager.OtherPossibleUsernamesUsage"
    enum="OtherPossibleUsernamesUsage">
  <owner>vabr@chromium.org</owner>
  <summary>
    Breakdown of how other possible usernames are displayed. Recorded every time
    we autofill a password form.
  </summary>
</histogram>

<histogram name="PasswordManager.PasswordSyncState" enum="PasswordSyncState">
  <owner>gcasto@chromium.org</owner>
  <owner>rouslan@chromium.org</owner>
  <summary>
    Whether the passwords are syncing and, if not, then what's causing sync
    failures. Recorded after the first sync attempt either succeeds or fails.
  </summary>
</histogram>

<histogram name="PasswordManager.ProvisionalSaveFailure"
    enum="ProvisionalSaveFailure">
  <owner>vabr@chromium.org</owner>
  <summary>
    Breakdown of cases where a password is submitted, but we don't even try and
    save it. Recorded for every password form submit.
  </summary>
</histogram>

<histogram name="PasswordManager.PslDomainMatchTriggering"
    enum="PasswordManagerPslDomainMatchTriggering">
  <owner>vabr@chromium.org</owner>
  <owner>yfriedman@chromium.org</owner>
  <summary>
    Breakdown on trigger rate of providing a password form autofill entry based
    on matching stored information using the public suffix list for possible
    matches.
  </summary>
</histogram>

<histogram name="PasswordManager.SavePasswordPromptDisappearedQuickly"
    enum="Boolean">
  <owner>vabr@chromium.org</owner>
  <obsolete>
    Deprecated as of 03/2016.
  </obsolete>
  <summary>
    Indicates whether the save password prompt disappeared in less than one
    second. This most likely indicates that the prompt was dismissed
    automatically, e.g. due to a page navigation, before the user was able to
    respond to the infobar.
  </summary>
</histogram>

<histogram name="PasswordManager.SavePasswordPromptDisplayed" enum="Boolean">
  <owner>vabr@chromium.org</owner>
  <obsolete>
    Deprecated as of 03/2016.
  </obsolete>
  <summary>Indicates whether the save password prompt was displayed.</summary>
</histogram>

<histogram name="PasswordManager.SavePasswordPromptResponse"
    enum="SavePasswordPromptResponseType">
  <owner>vabr@chromium.org</owner>
  <obsolete>
    Deprecated as of 03/2016.
  </obsolete>
  <summary>
    Breakdown of which response the user selected from the save password prompt.
  </summary>
</histogram>

<histogram name="PasswordManager.SettingsReconciliation.InitialAndFinalValues"
    enum="PasswordManagerPreferencesInitialAndFinalValues">
  <owner>engedy@chromium.org</owner>
  <owner>melandory@chromium.org</owner>
  <summary>
    Tracks the pair of initial values and pair of final values for the legacy
    preference for controlling the Chrome Password Manager and the new
    preference for controlling Smart Lock on Android. A single sample is
    recorded after sync has merged last snaphot and finished initialization for
    sync users, and on profile initialization for non-sync users.
  </summary>
</histogram>

<histogram name="PasswordManager.SettingsReconciliation.InitialValues"
    enum="PasswordManagerPreferencesInitialValues">
  <owner>engedy@chromium.org</owner>
  <owner>melandory@chromium.org</owner>
  <summary>
    Tracks the pair of initial values for both for the legacy preference for
    controlling the Chrome Password Manager and new preference for controlling
    Smart Lock on Android. Sample is recorded on every profile initialization
    before reconciliation logic is taken place, e.g. when user logs in to
    browser, on a startup of a browser.
  </summary>
</histogram>

<histogram name="PasswordManager.StorePasswordImportedFromCSVResult"
    enum="BooleanSuccess">
  <owner>xunlu@chromium.org</owner>
  <owner>vabr@chromium.org</owner>
  <summary>
    Whether password manager stored passwords imported from CSV file
    successfully.
  </summary>
</histogram>

<histogram name="PasswordManager.StoreReadyWhenWiping" enum="Boolean">
  <owner>vabr@chromium.org</owner>
  <summary>
    When the user logs in with their sync credential, PasswordManager checks if
    there are any outdated copies of it in the password store, in order to purge
    them. This histogram records whether password store data are ready during
    this check.
  </summary>
</histogram>

<histogram name="PasswordManager.SubmitNavigatesToDifferentDomain"
    enum="PostSubmitNavigation">
  <owner>vabr@chromium.org</owner>
  <summary>
    Indicates whether submitting a password login form changes the registry
    controlled domain of the main frame.
  </summary>
</histogram>

<histogram name="PasswordManager.SubmittedFormType" enum="PasswordFormType">
  <owner>gcasto@chromium.org</owner>
  <owner>vabr@chromium.org</owner>
  <summary>
    The type (e.g. signup, login, change password) of all submitted password
    forms. This is logged on form submission, but doesn't require that the
    password manager saves.
  </summary>
</histogram>

<histogram name="PasswordManager.SyncCredentialFiltered"
    enum="CredentialFilteredType">
  <owner>gcasto@chromium.org</owner>
  <owner>vabr@chromium.org</owner>
  <summary>
    This histogram is reported for those forms on accounts.google.com, on which
    Chrome is forced by Finch/flags during autofilling to remove sync
    credentials from password store results. It reports true if sync credentials
    were indeed removed from the store results, and false if there were no sync
    credentials in the results to begin with.
  </summary>
</histogram>

<histogram name="PasswordManager.SyncingAccountState"
    enum="PasswordManagerSyncingAccountState">
  <owner>gcasto@chromium.org</owner>
  <owner>vabr@chromium.org</owner>
  <summary>
    Information about the user's current sync status crossed with whether their
    synced password is saved.
  </summary>
</histogram>

<histogram name="PasswordManager.TimesGeneratedPasswordUsed">
  <owner>gcasto@chromium.org</owner>
  <owner>vabr@chromium.org</owner>
  <obsolete>
    Deprecated as of 11/11/14. New statistic is
    PasswordManager.TimesPasswordUsed.AutoGenerated.
  </obsolete>
  <summary>
    The number of times each generated password has been used to log in.
    Recorded by iterating over stored passwords once per run. This information
    is persisted and synced.
  </summary>
</histogram>

<histogram name="PasswordManager.TimesPasswordUsed">
  <owner>gcasto@chromium.org</owner>
  <owner>vabr@chromium.org</owner>
  <summary>
    The number of times each saved password has been used to log in. Does not
    include generated passwords. Recorded by iterating over stored passwords
    once per run. This information is persisted and synced.
  </summary>
</histogram>

<histogram name="PasswordManager.TotalAccounts">
  <owner>gcasto@chromium.org</owner>
  <owner>vabr@chromium.org</owner>
  <summary>
    The number of accounts stored in the password manager (across all sites)
  </summary>
</histogram>

<histogram name="PasswordManager.TotalAccountsHiRes.WithScheme"
    units="accounts">
  <owner>engedy@chromium.org</owner>
  <owner>vabr@chromium.org</owner>
  <summary>
    The number of accounts stored in the password manager (across all sites) for
    origins with the scheme (e.g., HTTP, HTTPS, FTP) as given in the histogram
    suffix. For each scheme, the count is recorded once per browser start-up.
    (In case of multiple profiles, the counts are for the profile that first has
    a WebContents created.)
  </summary>
</histogram>

<histogram name="PasswordManager.UIDismissalReason"
    enum="PasswordManagerUIDismissalReason">
  <owner>vasilii@chromium.org</owner>
  <summary>
    Why was the password manager's UI (bubble or infobar) closed?
  </summary>
</histogram>

<histogram name="PasswordManager.UpdatePasswordSubmissionEvent"
    enum="UpdatePasswordSubmissionEvent">
  <owner>dvadym@chromium.org</owner>
  <owner>vasilii@chromium.org</owner>
  <summary>
    The password submission event happened when the user changes her password on
    a website, say foo.com or types new password on a sign-in form for saved
    credential (which might mean that the password was changed in a different
    browser). The later case called password overriding. This histogram measures
    whether the user has any passwords saved in the Chrome password manager for
    foo.com or the password was overriden on sign-in form, and what action the
    user performed on the offered bubble. It's recorded when the bubble is
    closed.
  </summary>
</histogram>

<histogram name="PasswordManager.UserStoredPasswordWithInvalidSSLCert"
    enum="Boolean">
  <owner>xunlu@chromium.org</owner>
  <owner>gcasto@chromium.org</owner>
  <summary>
    Whether saved password for HTTPS site had a valid SSL cert when the password
    was saved.
  </summary>
</histogram>

<histogram name="PDF.DocumentFeature" enum="PDFFeatures">
  <owner>tsergeant@chromium.org</owner>
  <summary>
    Tracks which features are used by documents opened in the PDF viewer, logged
    when the document finishes loading.
  </summary>
</histogram>

<histogram name="Pepper.InterfaceUsed" enum="PepperInterface">
  <owner>mackinlay@google.com</owner>
  <owner>teravest@chromium.org</owner>
  <summary>
    The number of out-of-process plugin processes that have loaded a particular
    PPB interface version.
  </summary>
</histogram>

<histogram name="Pepper.PluginContextSecurity.TCPConnect" enum="BooleanSecure">
  <owner>raymes@chromium.org</owner>
  <owner>jww@chromium.org</owner>
  <owner>rsleevi@chromium.org</owner>
  <summary>
    Whether a Pepper TCP connect attempt comes from a plugin in a secure or an
    insecure origin.
  </summary>
</histogram>

<histogram name="Pepper.PluginContextSecurity.UDPBind" enum="BooleanSecure">
  <owner>raymes@chromium.org</owner>
  <owner>jww@chromium.org</owner>
  <owner>rsleevi@chromium.org</owner>
  <summary>
    Whether a Pepper UDP bind attempt comes from a plugin in a secure or an
    insecure origin.
  </summary>
</histogram>

<histogram name="Pepper.SecureOrigin.MediaStreamRequest" enum="BooleanSecure">
  <owner>raymes@chromium.org</owner>
  <summary>
    Whether a Pepper media stream request (mic/cam access) comes from a plugin
    in a secure or an insecure origin.
  </summary>
</histogram>

<histogram name="PerformanceMonitor.AverageCPU" units="PercentCPUUsage">
  <owner>oysteine@chromium.org</owner>
  <summary>
    Average CPU utilization of a process, read out at each two-minute interval.
    The utilization is in the 0-100% range per CPU, which is then summed up.
    I.e. a quadcore system fully loaded would read as 400%.
  </summary>
</histogram>

<histogram name="PerformanceMonitor.HighCPU" enum="BooleanHit">
  <owner>oysteine@chromium.org</owner>
  <summary>
    The number of times a process has continuously stayed above a certain
    threshold of CPU utilization over a certain time period (currently set to
    two minutes).
  </summary>
</histogram>

<histogram name="Permissions.Action" enum="PermissionAction">
  <owner>miguelg@chromium.org</owner>
  <owner>mlamouri@chromium.org</owner>
  <summary>
    Tracks whether a permission was granted, rejected, etc. The suffix of the
    histogram indicates which particular permission.
  </summary>
</histogram>

<histogram name="Permissions.Action.InsecureOrigin" enum="PermissionAction">
  <owner>miguelg@chromium.org</owner>
  <owner>mlamouri@chromium.org</owner>
  <summary>
    Tracks whether a permission was granted, rejected, etc on an insecure
    origin. The suffix of the histogram indicates which particular permission.
  </summary>
</histogram>

<histogram name="Permissions.Action.SecureOrigin" enum="PermissionAction">
  <owner>miguelg@chromium.org</owner>
  <owner>mlamouri@chromium.org</owner>
  <summary>
    Tracks whether a permission was granted, rejected, etc on a secure origin.
    The suffix of the histogram indicates which particular permission.
  </summary>
</histogram>

<histogram name="Permissions.Prompt.MergedBubbleTypes"
    enum="PermissionBubbleType">
  <owner>benwells@chromium.org</owner>
  <owner>tsergeant@chromium.org</owner>
  <summary>
    Tracks the permission bubble request types that are being merged into
    coalesced bubbles.
  </summary>
</histogram>

<histogram name="Permissions.Prompt.RequestsPerPrompt">
  <owner>benwells@chromium.org</owner>
  <owner>tsergeant@chromium.org</owner>
  <summary>
    How many permission requests each permissions prompt shown to the user
    contains.
  </summary>
</histogram>

<histogram name="Permissions.Prompt.Shown" enum="PermissionBubbleType">
  <owner>benwells@chromium.org</owner>
  <owner>tsergeant@chromium.org</owner>
  <summary>
    Tracks how many times permission prompts are shown to users.
  </summary>
</histogram>

<histogram name="Permissions.Requested.CrossOrigin" enum="PermissionStatus">
  <owner>keenanb@google.com</owner>
  <owner>jww@chromium.org</owner>
  <summary>
    The embedder's permission setting at the time of a cross-origin iframe
    permission request for a given permission type. See the corresponding
    histogram suffixes.
  </summary>
</histogram>

<histogram name="Permissions.Requested.SameOrigin" enum="PermissionType">
  <owner>keenanb@google.com</owner>
  <owner>jww@chromium.org</owner>
  <summary>
    The permission type (geolocation, and such) of a same-origin permission
    request.
  </summary>
</histogram>

<histogram name="PhysicalWeb.ActivityReferral"
    enum="PhysicalWebActivityReferer">
  <owner>cco3@chromium.org</owner>
  <owner>mattreynolds@chromium.org</owner>
  <owner>mmocny@chromium.org</owner>
  <summary>
    Referer used by user to reach the main Physical Web Activity.
  </summary>
</histogram>

<histogram name="PhysicalWeb.ReferralDelay.OptInNotification" units="ms">
  <owner>cco3@chromium.org</owner>
  <owner>mattreynolds@chromium.org</owner>
  <owner>mmocny@chromium.org</owner>
  <summary>
    Time between the most recent opt in notification update and when the user
    arrives at the ListUrlsActivity.
  </summary>
</histogram>

<histogram name="PhysicalWeb.ReferralDelay.StandardNotification" units="ms">
  <owner>cco3@chromium.org</owner>
  <owner>mattreynolds@chromium.org</owner>
  <owner>mmocny@chromium.org</owner>
  <summary>
    Time between the most recent standard notification update and when the user
    arrives at the ListUrlsActivity.
  </summary>
</histogram>

<histogram name="PhysicalWeb.ResolveTime.Background" units="ms">
  <owner>cco3@chromium.org</owner>
  <owner>mattreynolds@chromium.org</owner>
  <owner>mmocny@chromium.org</owner>
  <summary>
    Round trip time to the metadata server for a Physical Web URL resolution
    which the client requests during a background scan.
  </summary>
</histogram>

<histogram name="PhysicalWeb.ResolveTime.Foreground" units="ms">
  <owner>cco3@chromium.org</owner>
  <owner>mattreynolds@chromium.org</owner>
  <owner>mmocny@chromium.org</owner>
  <summary>
    Round trip time to the metadata server for a Physical Web URL resolution
    which the client requests during a foreground scan.
  </summary>
</histogram>

<histogram name="PhysicalWeb.State.Bluetooth" enum="BluetoothStatus">
  <owner>cco3@chromium.org</owner>
  <owner>mattreynolds@chromium.org</owner>
  <owner>mmocny@chromium.org</owner>
  <summary>Whether bluetooth is on, off, or unknown.</summary>
</histogram>

<histogram name="PhysicalWeb.State.DataConnectionActive" enum="BooleanActive">
  <owner>cco3@chromium.org</owner>
  <owner>mattreynolds@chromium.org</owner>
  <owner>mmocny@chromium.org</owner>
  <summary>Whether the data connection is active.</summary>
</histogram>

<histogram name="PhysicalWeb.State.LocationPermission" enum="BooleanAccepted">
  <owner>cco3@chromium.org</owner>
  <owner>mattreynolds@chromium.org</owner>
  <owner>mmocny@chromium.org</owner>
  <summary>Whether location permission has been accepted.</summary>
</histogram>

<histogram name="PhysicalWeb.State.LocationServices" enum="BooleanEnabled">
  <owner>cco3@chromium.org</owner>
  <owner>mattreynolds@chromium.org</owner>
  <owner>mmocny@chromium.org</owner>
  <summary>Whether location services are enabled.</summary>
</histogram>

<histogram name="PhysicalWeb.State.Preference"
    enum="PhysicalWebPreferenceStatus">
  <owner>cco3@chromium.org</owner>
  <owner>mattreynolds@chromium.org</owner>
  <owner>mmocny@chromium.org</owner>
  <summary>
    Whether the preference is on, off, or if the user is in an onboarding state
    when Chrome first starts up.
  </summary>
</histogram>

<histogram name="PhysicalWeb.TotalUrls.OnInitialDisplay" units="urls">
  <owner>cco3@chromium.org</owner>
  <owner>mattreynolds@chromium.org</owner>
  <owner>mmocny@chromium.org</owner>
  <summary>
    The number of URLs displayed to a user when a list of nearby URLs is first
    displayed.
  </summary>
</histogram>

<histogram name="PhysicalWeb.TotalUrls.OnRefresh" units="urls">
  <owner>cco3@chromium.org</owner>
  <owner>mattreynolds@chromium.org</owner>
  <owner>mmocny@chromium.org</owner>
  <summary>
    The number of URLs displayed to a user when a list of nearby URLs is
    displayed after refreshing.
  </summary>
</histogram>

<histogram name="Platform.AnyCrashesDaily" units="count per day">
  <owner>semenzato@chromium.org</owner>
  <owner>bsimonnet@chromium.org</owner>
  <summary>
    Count of crashes (user, kernel, and unclean shutdowns) during the previous
    day, or the most recent day the device was in use.  Reported at most once a
    day.
  </summary>
</histogram>

<histogram name="Platform.AnyCrashesWeekly" units="count per week">
  <owner>semenzato@chromium.org</owner>
  <owner>bsimonnet@chromium.org</owner>
  <summary>
    Count of crashes (user, kernel, and unclean shutdowns) during the previous
    epoch-week, or the most recent epoch-week the device was in use.  Reported
    at most once a week.  Epoch-weeks divide the time in 7-day intervals
    starting at the UNIX epoch.
  </summary>
</histogram>

<histogram name="Platform.AsvGroup">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Chrome OS (ARM Chromebooks using Exynos 5250 only) Adaptive Support Voltage
    Group, recorded once per bootup.  Indicates which &quot;bin&quot; the SoC is
    part of, which sets the voltage that different rails on the system will run
    at. The values 0-11 are valid.  A value of 12 indicates an error parsing
    dmesg and should be investigated.  See also Platform.LotIdEnum.
  </summary>
</histogram>

<histogram name="Platform.BatteryAbsent" enum="BooleanAbsent">
  <owner>cernekee@chromium.org</owner>
  <summary>
    Indicates whether the kernel's ACPI Smart Battery System driver logged an
    error trying to find the battery on boot.
  </summary>
</histogram>

<histogram name="Platform.BootSectorsRead">
  <owner>sonnyrao@chromium.org</owner>
  <summary>
    Chrome OS number of disk sectors read at boot from kernel start to
    login-prompt-ready.
  </summary>
</histogram>

<histogram name="Platform.BootSectorsWritten">
  <owner>sonnyrao@chromium.org</owner>
  <summary>
    Chrome OS number of disk sectors written at boot from kernel start to
    login-prompt-ready.
  </summary>
</histogram>

<histogram name="Platform.CompressedSwapSize" units="MB">
  <owner>sonnyrao@chromium.org</owner>
  <summary>
    Chrome OS size of allocated swap area in megabytes (before compression)
  </summary>
</histogram>

<histogram name="Platform.CpuFrequencyThermalScaling" units="%">
  <owner>sonnyrao@chromium.org</owner>
  <summary>
    CPU frequency as percent of the baseline frequency, sampled every 30s. This
    may be throttled down from 100% due to power dissipation issues (too high
    temperature).  It may also be throttled up (turbo), but the kernel does not
    report the actual turbo frequency, so we put such samples in the 101%
    bucket.
  </summary>
</histogram>

<histogram name="Platform.CpuUsage" units="%">
  <owner>sonnyrao@chromium.org</owner>
  <owner>cast-analytics@google.com</owner>
  <summary>
    Peak total (single core) CPU usage for the last sample interval.  The sample
    interval may vary from seconds to several minutes.
  </summary>
</histogram>

<histogram name="Platform.CrOSEvent" enum="CrosEventEnum">
  <owner>dkrahn@chromium.org</owner>
  <summary>
    Generic event of interest from Chrome OS.  Intended mainly to help assess
    the frequency of rare error conditions.
  </summary>
</histogram>

<histogram name="Platform.CumulativeCpuTime" units="seconds">
  <owner>semenzato@chromium.org</owner>
  <owner>bsimonnet@chromium.org</owner>
  <summary>
    Total CPU time accumulated since the last version update.  Reported at most
    once a day.
  </summary>
</histogram>

<histogram name="Platform.CumulativeUseTime" units="seconds">
  <owner>semenzato@chromium.org</owner>
  <owner>bsimonnet@chromium.org</owner>
  <summary>
    Total use time (device ON and not asleep) since last version update.
    Reported at most once a day.
  </summary>
</histogram>

<histogram name="Platform.DailyUseTime" units="seconds">
  <owner>semenzato@chromium.org</owner>
  <owner>bsimonnet@chromium.org</owner>
  <summary>
    Total use time (device ON and not asleep) in the previous day, or the most
    recent day the device was in use.  Reported at most once a day.
  </summary>
</histogram>

<histogram name="Platform.DiskUsage.Cache_Avg" units="KB">
  <obsolete>
    Deprecated 04/2016 as doesn't have data nor owner.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Average size of user's Cache directory. Logged once a day, if disk usage is
    high.
  </summary>
</histogram>

<histogram name="Platform.DiskUsage.Cache_Max" units="KB">
  <obsolete>
    Deprecated 04/2016 as doesn't have data nor owner.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Maximum size of user's Cache directory. Logged once a day, if disk usage is
    high.
  </summary>
</histogram>

<histogram name="Platform.DiskUsage.Downloads_Avg" units="KB">
  <obsolete>
    Deprecated 04/2016 as doesn't have data nor owner.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Average size of user's Cache directory. Logged once a day, if disk usage is
    high.
  </summary>
</histogram>

<histogram name="Platform.DiskUsage.Downloads_Max" units="KB">
  <obsolete>
    Deprecated 04/2016 as doesn't have data nor owner.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Maximum size of user's Cache directory. Logged once a day, if disk usage is
    high.
  </summary>
</histogram>

<histogram name="Platform.DiskUsage.GCache_Avg" units="KB">
  <obsolete>
    Deprecated 04/2016 as doesn't have data nor owner.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Average size of user's GCache directory. Logged once a day, if disk usage is
    high.
  </summary>
</histogram>

<histogram name="Platform.DiskUsage.GCache_Max" units="KB">
  <obsolete>
    Deprecated 04/2016 as doesn't have data nor owner.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Maximum size of user's GCache directory. Logged once a day, if disk usage is
    high.
  </summary>
</histogram>

<histogram name="Platform.DiskUsage.LeastUsedAccountDays" units="days">
  <obsolete>
    Deprecated 04/2016 as doesn't have data nor owner.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Days since the least frequently used account signed in. Logged once a day,
    if disk usage is high.
  </summary>
</histogram>

<histogram name="Platform.DiskUsage.NumUserHomeDirectories"
    units="home directories">
  <owner>achuith@chromium.org</owner>
  <owner>tls@chromium.org</owner>
  <summary>
    Number of users home directories on the device. Logged once a day.
  </summary>
</histogram>

<histogram name="Platform.DiskUsage.OldestUserOnDevice">
  <owner>achuith@chromium.org</owner>
  <owner>omrilio@chromium.org</owner>
  <summary>
    Days since last login of the least recently user on device. Logged once a
    day, if disk usage is high.
  </summary>
</histogram>

<histogram name="Platform.DiskUsage.UsersOnDevice">
  <owner>achuith@chromium.org</owner>
  <owner>omrilio@chromium.org</owner>
  <summary>
    Number of user home dirs on device. Logged once a day, if disk usage is
    high.
  </summary>
</histogram>

<histogram name="Platform.DiskUsageChronos" units="KB">
  <owner>keescook@google.com</owner>
  <summary>
    Chrome OS KB in use in the /home/chronos filesystem tree. Logged once a day
    during log file cleanup.
  </summary>
</histogram>

<histogram name="Platform.DiskUsageVar" units="KB">
  <owner>keescook@google.com</owner>
  <summary>
    Chrome OS KB in use in the /var filesystem tree. Logged once a day during
    log file cleanup.
  </summary>
</histogram>

<histogram name="Platform.IntelMaxMicroArchitecture"
    enum="IntelMaxMicroArchitecture">
  <owner>fbarchard@chromium.org</owner>
  <summary>
    The maximum supported micro-architecture on an Intel platform.  This value
    is logged at program start time.
  </summary>
</histogram>

<histogram name="Platform.KernelCrashesDaily" units="count per day">
  <owner>semenzato@chromium.org</owner>
  <owner>bsimonnet@chromium.org</owner>
  <summary>
    Count of kernel crashes during the previous day, or the most recent day the
    device was in use.  Reported at most once a day.
  </summary>
</histogram>

<histogram name="Platform.KernelCrashesPerActiveYear" units="count per year">
  <owner>semenzato@chromium.org</owner>
  <owner>bsimonnet@chromium.org</owner>
  <summary>
    Count of kernel crashes since the last OS update, normalized as number of
    crashes per year of active use (active use = device is ON and not asleep).
    Reported daily.
  </summary>
</histogram>

<histogram name="Platform.KernelCrashesPerCpuYear" units="count per CPU year">
  <owner>semenzato@chromium.org</owner>
  <owner>bsimonnet@chromium.org</owner>
  <summary>
    Count of kernel crashes since the last OS update, normalized as number
    crashes per year of CPU time.  Reported daily.
  </summary>
</histogram>

<histogram name="Platform.KernelCrashesSinceUpdate" units="count">
  <owner>semenzato@chromium.org</owner>
  <owner>bsimonnet@chromium.org</owner>
  <summary>
    Count of kernel crashes since the last OS update, reported daily.
  </summary>
</histogram>

<histogram name="Platform.KernelCrashesWeekly" units="count per week">
  <owner>semenzato@chromium.org</owner>
  <owner>bsimonnet@chromium.org</owner>
  <summary>
    Count of kernel crashes during the previous epoch-week, or the most recent
    epoch-week the device was in use.  Reported at most once a week. Epoch-weeks
    divide the time in 7-day intervals starting at the UNIX epoch.
  </summary>
</histogram>

<histogram name="Platform.KernelCrashInterval" units="seconds">
  <owner>semenzato@chromium.org</owner>
  <owner>bsimonnet@chromium.org</owner>
  <summary>
    Time elapsed between the last two kernel crashes.  Sent after every kernel
    crash.
  </summary>
</histogram>

<histogram name="Platform.KernelWarningHashes">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The 32-bit hash of a kernel warning.  This is the hash of the
    &quot;file:line&quot; string corresponding to the location of the warning,
    for instance: &quot;/mnt/host/source/src/third_party/kernel/files/drivers
    /gpu/drm/i915/intel_dp.c:351&quot; (ignore spurious spaces).  The hash is
    produced by this code: while (*string) hash = (hash &lt;&lt; 5) + hash +
    *string++;  Separately each warning is also collected (with its hash) via
    the crash reporter, but only its first occurrence in each boot session.
  </summary>
</histogram>

<histogram name="Platform.LogicalCpuCount">
  <owner>sonnyrao@chromium.org</owner>
  <summary>
    Number of logical processors. This includes Hyperthreaded cores.
  </summary>
</histogram>

<histogram name="Platform.LotIdEnum" enum="Exynos5250LotIdEnum">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Chrome OS (ARM Chromebooks using Exynos 5250 only) indication about whether
    we're part of a special lot ID.  Special lot IDs are groups of chips that
    have special case handling in the kernel for the Adaptive Support Voltage
    code (the normal logic doesn't work).  See also Platform.AsvGroup.  Note
    that fused devices are never part of a special lot (currently) and only some
    unfused lots are &quot;special&quot;.
  </summary>
</histogram>

<histogram name="Platform.MeminfoActive">
  <owner>hajimehoshi@chromium.org</owner>
  <owner>kouhei@chromium.org</owner>
  <owner>sonnyrao@chromium.org</owner>
  <summary>
    Chrome OS size of active memory as % of total memory (snapshotted every
    30s).
  </summary>
</histogram>

<histogram name="Platform.MeminfoActiveAnon">
  <owner>hajimehoshi@chromium.org</owner>
  <owner>kouhei@chromium.org</owner>
  <owner>sonnyrao@chromium.org</owner>
  <summary>
    Chrome OS active anonymous memory (data segments) as % of total memory
    (snapshotted every 30s).
  </summary>
</histogram>

<histogram name="Platform.MeminfoActiveFile">
  <owner>hajimehoshi@chromium.org</owner>
  <owner>kouhei@chromium.org</owner>
  <owner>sonnyrao@chromium.org</owner>
  <summary>
    Chrome OS active file-backed memory (executables, ...) as % of total memory
    (snapshotted every 30s).
  </summary>
</histogram>

<histogram name="Platform.MeminfoAnonPages">
  <owner>hajimehoshi@chromium.org</owner>
  <owner>kouhei@chromium.org</owner>
  <owner>sonnyrao@chromium.org</owner>
  <summary>
    Chrome OS size of anonymous memory as % of total memory (snapshotted every
    30s).
  </summary>
</histogram>

<histogram name="Platform.MeminfoBuffers">
  <owner>hajimehoshi@chromium.org</owner>
  <owner>kouhei@chromium.org</owner>
  <owner>sonnyrao@chromium.org</owner>
  <summary>
    Chrome OS size of buffer cache as % of total memory (snapshotted every 30s).
  </summary>
</histogram>

<histogram name="Platform.MeminfoCached">
  <owner>hajimehoshi@chromium.org</owner>
  <owner>kouhei@chromium.org</owner>
  <owner>sonnyrao@chromium.org</owner>
  <summary>
    Chrome OS: size of file-backed memory minus swap and buffer cache, as % of
    total memory (snapshotted every 30s).
  </summary>
</histogram>

<histogram name="Platform.MeminfoInactive">
  <owner>hajimehoshi@chromium.org</owner>
  <owner>kouhei@chromium.org</owner>
  <owner>sonnyrao@chromium.org</owner>
  <summary>
    Chrome OS size of inactive memory as % of total memory (snapshotted every
    30s).
  </summary>
</histogram>

<histogram name="Platform.MeminfoInactiveAnon">
  <owner>hajimehoshi@chromium.org</owner>
  <owner>kouhei@chromium.org</owner>
  <owner>sonnyrao@chromium.org</owner>
  <summary>
    Chrome OS inactive anonymous memory (data segments) as % of total memory
    (snapshotted every 30s).
  </summary>
</histogram>

<histogram name="Platform.MeminfoInactiveFile">
  <owner>hajimehoshi@chromium.org</owner>
  <owner>kouhei@chromium.org</owner>
  <owner>sonnyrao@chromium.org</owner>
  <summary>
    Chrome OS inactive file-backed memory as % of total memory (snapshotted
    every 30s).
  </summary>
</histogram>

<histogram name="Platform.MeminfoMapped">
  <owner>hajimehoshi@chromium.org</owner>
  <owner>kouhei@chromium.org</owner>
  <owner>sonnyrao@chromium.org</owner>
  <summary>
    Chrome OS size of mapped memory as % of total memory (snapshotted every
    30s).
  </summary>
</histogram>

<histogram name="Platform.MeminfoMemFree">
  <owner>hajimehoshi@chromium.org</owner>
  <owner>kouhei@chromium.org</owner>
  <owner>sonnyrao@chromium.org</owner>
  <summary>
    Chrome OS size of free memory as % of total memory (snapshotted every 30s).
  </summary>
</histogram>

<histogram name="Platform.MeminfoMemFreeDerived">
  <owner>bccheng@chromium.org</owner>
  <summary>
    Chrome OS size of free+buffers+cached memory in Kbytes (snapshotted every
    30s).
  </summary>
</histogram>

<histogram name="Platform.MeminfoMemUsedDerived">
  <owner>bccheng@chromium.org</owner>
  <summary>
    Chrome OS size of &quot;Total - FreeDerived&quot; memory in Kbytes
    (snapshotted every 30s).
  </summary>
</histogram>

<histogram name="Platform.MeminfoShmem">
  <owner>hajimehoshi@chromium.org</owner>
  <owner>kouhei@chromium.org</owner>
  <owner>sonnyrao@chromium.org</owner>
  <summary>
    Chrome OS size of shared memory in Kbytes (snapshotted every 30s).
  </summary>
</histogram>

<histogram name="Platform.MeminfoSlab">
  <owner>hajimehoshi@chromium.org</owner>
  <owner>kouhei@chromium.org</owner>
  <owner>sonnyrao@chromium.org</owner>
  <summary>
    Chrome OS size of slab memory in Kbytes (snapshotted every 30s).
  </summary>
</histogram>

<histogram name="Platform.MeminfoSwapUsed" units="KB">
  <owner>hajimehoshi@chromium.org</owner>
  <owner>kouhei@chromium.org</owner>
  <owner>sonnyrao@chromium.org</owner>
  <summary>
    Chrome OS amount of swapped-out memory in Kbytes (snapshotted every 30s).
  </summary>
</histogram>

<histogram name="Platform.MeminfoSwapUsedPercent" units="%">
  <owner>hajimehoshi@chromium.org</owner>
  <owner>kouhei@chromium.org</owner>
  <owner>sonnyrao@chromium.org</owner>
  <summary>
    Chrome OS amount of swapped-out memory as % of total RAM (snapshotted every
    30s).
  </summary>
</histogram>

<histogram name="Platform.MeminfoUnevictable">
  <owner>hajimehoshi@chromium.org</owner>
  <owner>kouhei@chromium.org</owner>
  <owner>sonnyrao@chromium.org</owner>
  <summary>
    Chrome OS unevictable memory (ramfs, SHM_LOCKED, mlocked) in Kbytes
    (snapshotted every 30s).
  </summary>
</histogram>

<histogram name="Platform.MemoryBandwidth.ReadWrite" units="MB/s">
  <owner>hajimehoshi@chromium.org</owner>
  <owner>kouhei@chromium.org</owner>
  <owner>cast-analytics@google.com</owner>
  <summary>
    Peak memory bandwith (read and write) usage during the last sample interval.
    The sample interval may vary from seconds to several minutes.
  </summary>
</histogram>

<histogram name="Platform.MemuseAnon0">
  <owner>hajimehoshi@chromium.org</owner>
  <owner>kouhei@chromium.org</owner>
  <summary>
    Chrome OS total anonymous memory (active + inactive) as % of total memory 1
    minute after boot.
  </summary>
</histogram>

<histogram name="Platform.MemuseAnon1">
  <owner>hajimehoshi@chromium.org</owner>
  <owner>kouhei@chromium.org</owner>
  <summary>
    Chrome OS total anonymous memory (active + inactive) as % of total memory 5
    minutes after boot.
  </summary>
</histogram>

<histogram name="Platform.MemuseAnon2">
  <owner>hajimehoshi@chromium.org</owner>
  <owner>kouhei@chromium.org</owner>
  <summary>
    Chrome OS total anonymous memory (active + inactive) as % of total memory 30
    minutes after boot.
  </summary>
</histogram>

<histogram name="Platform.MemuseAnon3">
  <owner>hajimehoshi@chromium.org</owner>
  <owner>kouhei@chromium.org</owner>
  <summary>
    Chrome OS total anonymous memory (active + inactive) as % of total memory
    150 minutes after boot.
  </summary>
</histogram>

<histogram name="Platform.MemuseAnon4">
  <owner>hajimehoshi@chromium.org</owner>
  <owner>kouhei@chromium.org</owner>
  <summary>
    Chrome OS total anonymous memory (active + inactive) as % of total memory
    750 minutes after boot.
  </summary>
</histogram>

<histogram name="Platform.PageFaultsLong" units="page faults/second">
  <owner>sonnyrao@chromium.org</owner>
  <summary>
    Page faults per second averaged over 30s interval, sampled continuously.
  </summary>
</histogram>

<histogram name="Platform.PageFaultsShort" units="page faults/second">
  <owner>sonnyrao@chromium.org</owner>
  <summary>
    Page faults per second averaged over 1s interval, sampled every 30s.
  </summary>
</histogram>

<histogram name="Platform.ReadSectorsLong">
  <owner>gwendal@google.com</owner>
  <summary>
    Number of disk sectors per second read by Chrome OS in a long interval
    (currently 30s)
  </summary>
</histogram>

<histogram name="Platform.ReadSectorsShort">
  <owner>gwendal@google.com</owner>
  <summary>
    Number of disk sectors per second read by Chrome OS in a short interval
    (currently 1s, sampled every 30s)
  </summary>
</histogram>

<histogram name="Platform.SmartTransferErrors">
  <owner>gwendal@google.com</owner>
  <summary>Disk communication errors (SMART 199), sent at boot.</summary>
</histogram>

<histogram name="Platform.SmartUncorrectableErrors">
  <owner>gwendal@google.com</owner>
  <summary>Uncorrectable disk errors (SMART 187), sent at boot.</summary>
</histogram>

<histogram name="Platform.SpringChargerType">
  <owner>vpalatin@google.com</owner>
  <summary>
    USB device ID of the charger plugged into a Spring device (if any), sent
    once a minute.  The Device ID is composed from the following 4 8-bit
    registers of the TSU6721 chip: ADC (07h), Device Type 3 (15h), Device Type 2
    (0Bh), Device Type 1 (0Ah).  Device Type 1/2/3 is a bitmap and most of bits
    are mutually exclusive (excepted VBUS debounce).  ADC is the 5-bit value of
    the ID pin, but for most types (as in Device Type), there are only one or
    two possible ID pin connections/values. The datasheet can be found here:
    http://www.ti.com/lit/ds/symlink/tsu6721.pdf.

    Note that different brand/models of the charger can have the same ID.
  </summary>
</histogram>

<histogram name="Platform.StatefulUsage" units="%">
  <owner>achuith@chromium.org</owner>
  <owner>omrilio@chromium.org</owner>
  <summary>Chrome OS stateful partition usage level.</summary>
</histogram>

<histogram name="Platform.Storage.Flash.BadBlocks">
  <owner>dehrenberg@chromium.org</owner>
  <owner>cast-analytics@google.com</owner>
  <summary>
    The number of blocks marked bad in an MTD partition. This is relevant for
    devices with raw NAND flash, such as Chromecast. Sampled once daily, if the
    Chromecast is on for any significant length of time in the day.
  </summary>
</histogram>

<histogram name="Platform.SwapInLong" units="pages/second">
  <owner>sonnyrao@chromium.org</owner>
  <summary>
    Average pages/second swapped IN over a 30s interval, sampled every 30s.
  </summary>
</histogram>

<histogram name="Platform.SwapInShort" units="pages/second">
  <owner>sonnyrao@chromium.org</owner>
  <summary>
    Average pages/second swapped IN over a 1s interval, sampled every 30s.
  </summary>
</histogram>

<histogram name="Platform.SwapJank.Scroll.Cpu.Swap0.Time1" units="%">
  <obsolete>
    Deprecated 9/2013 when the SwapJank64vs32Parrot experiment ended.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    CPU utilization for the specified swap group and time interval after a
    scroll event.  See src/chrome/browser/chromeos/swap_metrics.cc.
  </summary>
</histogram>

<histogram name="Platform.SwapJank.Scroll.Cpu.Swap0.Time2" units="%">
  <obsolete>
    Deprecated 9/2013 when the SwapJank64vs32Parrot experiment ended.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    CPU utilization for the specified swap group and time interval after a
    scroll event.  See src/chrome/browser/chromeos/swap_metrics.cc.
  </summary>
</histogram>

<histogram name="Platform.SwapJank.Scroll.Cpu.Swap0.Time3" units="%">
  <obsolete>
    Deprecated 9/2013 when the SwapJank64vs32Parrot experiment ended.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    CPU utilization for the specified swap group and time interval after a
    scroll event.  See src/chrome/browser/chromeos/swap_metrics.cc.
  </summary>
</histogram>

<histogram name="Platform.SwapJank.Scroll.Cpu.Swap0.Time4" units="%">
  <obsolete>
    Deprecated 9/2013 when the SwapJank64vs32Parrot experiment ended.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    CPU utilization for the specified swap group and time interval after a
    scroll event.  See src/chrome/browser/chromeos/swap_metrics.cc.
  </summary>
</histogram>

<histogram name="Platform.SwapJank.Scroll.Cpu.Swap1.Time1" units="%">
  <obsolete>
    Deprecated 9/2013 when the SwapJank64vs32Parrot experiment ended.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    CPU utilization for the specified swap group and time interval after a
    scroll event.  See src/chrome/browser/chromeos/swap_metrics.cc.
  </summary>
</histogram>

<histogram name="Platform.SwapJank.Scroll.Cpu.Swap1.Time2" units="%">
  <obsolete>
    Deprecated 9/2013 when the SwapJank64vs32Parrot experiment ended.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    CPU utilization for the specified swap group and time interval after a
    scroll event.  See src/chrome/browser/chromeos/swap_metrics.cc.
  </summary>
</histogram>

<histogram name="Platform.SwapJank.Scroll.Cpu.Swap1.Time3" units="%">
  <obsolete>
    Deprecated 9/2013 when the SwapJank64vs32Parrot experiment ended.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    CPU utilization for the specified swap group and time interval after a
    scroll event.  See src/chrome/browser/chromeos/swap_metrics.cc.
  </summary>
</histogram>

<histogram name="Platform.SwapJank.Scroll.Cpu.Swap1.Time4" units="%">
  <obsolete>
    Deprecated 9/2013 when the SwapJank64vs32Parrot experiment ended.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    CPU utilization for the specified swap group and time interval after a
    scroll event.  See src/chrome/browser/chromeos/swap_metrics.cc.
  </summary>
</histogram>

<histogram name="Platform.SwapJank.Scroll.Cpu.Swap2.Time1" units="%">
  <obsolete>
    Deprecated 9/2013 when the SwapJank64vs32Parrot experiment ended.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    CPU utilization for the specified swap group and time interval after a
    scroll event.  See src/chrome/browser/chromeos/swap_metrics.cc.
  </summary>
</histogram>

<histogram name="Platform.SwapJank.Scroll.Cpu.Swap2.Time2" units="%">
  <obsolete>
    Deprecated 9/2013 when the SwapJank64vs32Parrot experiment ended.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    CPU utilization for the specified swap group and time interval after a
    scroll event.  See src/chrome/browser/chromeos/swap_metrics.cc.
  </summary>
</histogram>

<histogram name="Platform.SwapJank.Scroll.Cpu.Swap2.Time3" units="%">
  <obsolete>
    Deprecated 9/2013 when the SwapJank64vs32Parrot experiment ended.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    CPU utilization for the specified swap group and time interval after a
    scroll event.  See src/chrome/browser/chromeos/swap_metrics.cc.
  </summary>
</histogram>

<histogram name="Platform.SwapJank.Scroll.Cpu.Swap2.Time4" units="%">
  <obsolete>
    Deprecated 9/2013 when the SwapJank64vs32Parrot experiment ended.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    CPU utilization for the specified swap group and time interval after a
    scroll event.  See src/chrome/browser/chromeos/swap_metrics.cc.
  </summary>
</histogram>

<histogram name="Platform.SwapJank.Scroll.Cpu.Swap3.Time1" units="%">
  <obsolete>
    Deprecated 9/2013 when the SwapJank64vs32Parrot experiment ended.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    CPU utilization for the specified swap group and time interval after a
    scroll event.  See src/chrome/browser/chromeos/swap_metrics.cc.
  </summary>
</histogram>

<histogram name="Platform.SwapJank.Scroll.Cpu.Swap3.Time2" units="%">
  <obsolete>
    Deprecated 9/2013 when the SwapJank64vs32Parrot experiment ended.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    CPU utilization for the specified swap group and time interval after a
    scroll event.  See src/chrome/browser/chromeos/swap_metrics.cc.
  </summary>
</histogram>

<histogram name="Platform.SwapJank.Scroll.Cpu.Swap3.Time3" units="%">
  <obsolete>
    Deprecated 9/2013 when the SwapJank64vs32Parrot experiment ended.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    CPU utilization for the specified swap group and time interval after a
    scroll event.  See src/chrome/browser/chromeos/swap_metrics.cc.
  </summary>
</histogram>

<histogram name="Platform.SwapJank.Scroll.Cpu.Swap3.Time4" units="%">
  <obsolete>
    Deprecated 9/2013 when the SwapJank64vs32Parrot experiment ended.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    CPU utilization for the specified swap group and time interval after a
    scroll event.  See src/chrome/browser/chromeos/swap_metrics.cc.
  </summary>
</histogram>

<histogram name="Platform.SwapJank.Scroll.Faults.Swap0.Time1"
    units="page faults/second">
  <obsolete>
    Deprecated 9/2013 when the SwapJank64vs32Parrot experiment ended.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Page faults/second for the specified swap group and time interval after a
    scroll event.  See src/chrome/browser/chromeos/swap_metrics.cc.
  </summary>
</histogram>

<histogram name="Platform.SwapJank.Scroll.Faults.Swap0.Time2"
    units="page faults/second">
  <obsolete>
    Deprecated 9/2013 when the SwapJank64vs32Parrot experiment ended.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Page faults/second for the specified swap group and time interval after a
    scroll event.  See src/chrome/browser/chromeos/swap_metrics.cc.
  </summary>
</histogram>

<histogram name="Platform.SwapJank.Scroll.Faults.Swap0.Time3"
    units="page faults/second">
  <obsolete>
    Deprecated 9/2013 when the SwapJank64vs32Parrot experiment ended.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Page faults/second for the specified swap group and time interval after a
    scroll event.  See src/chrome/browser/chromeos/swap_metrics.cc.
  </summary>
</histogram>

<histogram name="Platform.SwapJank.Scroll.Faults.Swap0.Time4"
    units="page faults/second">
  <obsolete>
    Deprecated 9/2013 when the SwapJank64vs32Parrot experiment ended.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Page faults/second for the specified swap group and time interval after a
    scroll event.  See src/chrome/browser/chromeos/swap_metrics.cc.
  </summary>
</histogram>

<histogram name="Platform.SwapJank.Scroll.Faults.Swap1.Time1"
    units="page faults/second">
  <obsolete>
    Deprecated 9/2013 when the SwapJank64vs32Parrot experiment ended.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Page faults/second for the specified swap group and time interval after a
    scroll event.  See src/chrome/browser/chromeos/swap_metrics.cc.
  </summary>
</histogram>

<histogram name="Platform.SwapJank.Scroll.Faults.Swap1.Time2"
    units="page faults/second">
  <obsolete>
    Deprecated 9/2013 when the SwapJank64vs32Parrot experiment ended.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Page faults/second for the specified swap group and time interval after a
    scroll event.  See src/chrome/browser/chromeos/swap_metrics.cc.
  </summary>
</histogram>

<histogram name="Platform.SwapJank.Scroll.Faults.Swap1.Time3"
    units="page faults/second">
  <obsolete>
    Deprecated 9/2013 when the SwapJank64vs32Parrot experiment ended.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Page faults/second for the specified swap group and time interval after a
    scroll event.  See src/chrome/browser/chromeos/swap_metrics.cc.
  </summary>
</histogram>

<histogram name="Platform.SwapJank.Scroll.Faults.Swap1.Time4"
    units="page faults/second">
  <obsolete>
    Deprecated 9/2013 when the SwapJank64vs32Parrot experiment ended.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Page faults/second for the specified swap group and time interval after a
    scroll event.  See src/chrome/browser/chromeos/swap_metrics.cc.
  </summary>
</histogram>

<histogram name="Platform.SwapJank.Scroll.Faults.Swap2.Time1"
    units="page faults/second">
  <obsolete>
    Deprecated 9/2013 when the SwapJank64vs32Parrot experiment ended.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Page faults/second for the specified swap group and time interval after a
    scroll event.  See src/chrome/browser/chromeos/swap_metrics.cc.
  </summary>
</histogram>

<histogram name="Platform.SwapJank.Scroll.Faults.Swap2.Time2"
    units="page faults/second">
  <obsolete>
    Deprecated 9/2013 when the SwapJank64vs32Parrot experiment ended.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Page faults/second for the specified swap group and time interval after a
    scroll event.  See src/chrome/browser/chromeos/swap_metrics.cc.
  </summary>
</histogram>

<histogram name="Platform.SwapJank.Scroll.Faults.Swap2.Time3"
    units="page faults/second">
  <obsolete>
    Deprecated 04/2016 as doesn't have data nor owner.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Page faults/second for the specified swap group and time interval after a
    scroll event.  See src/chrome/browser/chromeos/swap_metrics.cc.
  </summary>
</histogram>

<histogram name="Platform.SwapJank.Scroll.Faults.Swap2.Time4"
    units="page faults/second">
  <obsolete>
    Deprecated 9/2013 when the SwapJank64vs32Parrot experiment ended.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Page faults/second for the specified swap group and time interval after a
    scroll event.  See src/chrome/browser/chromeos/swap_metrics.cc.
  </summary>
</histogram>

<histogram name="Platform.SwapJank.Scroll.Faults.Swap3.Time1"
    units="page faults/second">
  <obsolete>
    Deprecated 9/2013 when the SwapJank64vs32Parrot experiment ended.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Page faults/second for the specified swap group and time interval after a
    scroll event.  See src/chrome/browser/chromeos/swap_metrics.cc.
  </summary>
</histogram>

<histogram name="Platform.SwapJank.Scroll.Faults.Swap3.Time2"
    units="page faults/second">
  <obsolete>
    Deprecated 9/2013 when the SwapJank64vs32Parrot experiment ended.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Page faults/second for the specified swap group and time interval after a
    scroll event.  See src/chrome/browser/chromeos/swap_metrics.cc.
  </summary>
</histogram>

<histogram name="Platform.SwapJank.Scroll.Faults.Swap3.Time3"
    units="page faults/second">
  <obsolete>
    Deprecated 9/2013 when the SwapJank64vs32Parrot experiment ended.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Page faults/second for the specified swap group and time interval after a
    scroll event.  See src/chrome/browser/chromeos/swap_metrics.cc.
  </summary>
</histogram>

<histogram name="Platform.SwapJank.Scroll.Faults.Swap3.Time4"
    units="page faults/second">
  <obsolete>
    Deprecated 9/2013 when the SwapJank64vs32Parrot experiment ended.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Page faults/second for the specified swap group and time interval after a
    scroll event.  See src/chrome/browser/chromeos/swap_metrics.cc.
  </summary>
</histogram>

<histogram name="Platform.SwapJank.TabSwitch.Cpu.Swap0.Time1" units="%">
  <obsolete>
    Deprecated 9/2013 when the SwapJank64vs32Parrot experiment ended.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    CPU utilization for the specified swap group and time interval after a tab
    switch event.  See src/chrome/browser/chromeos/swap_metrics.cc.
  </summary>
</histogram>

<histogram name="Platform.SwapJank.TabSwitch.Cpu.Swap0.Time2" units="%">
  <obsolete>
    Deprecated 9/2013 when the SwapJank64vs32Parrot experiment ended.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    CPU utilization for the specified swap group and time interval after a tab
    switch event.  See src/chrome/browser/chromeos/swap_metrics.cc.
  </summary>
</histogram>

<histogram name="Platform.SwapJank.TabSwitch.Cpu.Swap0.Time3" units="%">
  <obsolete>
    Deprecated 9/2013 when the SwapJank64vs32Parrot experiment ended.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    CPU utilization for the specified swap group and time interval after a tab
    switch event.  See src/chrome/browser/chromeos/swap_metrics.cc.
  </summary>
</histogram>

<histogram name="Platform.SwapJank.TabSwitch.Cpu.Swap0.Time4" units="%">
  <obsolete>
    Deprecated 9/2013 when the SwapJank64vs32Parrot experiment ended.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    CPU utilization for the specified swap group and time interval after a tab
    switch event.  See src/chrome/browser/chromeos/swap_metrics.cc.
  </summary>
</histogram>

<histogram name="Platform.SwapJank.TabSwitch.Cpu.Swap1.Time1" units="%">
  <obsolete>
    Deprecated 9/2013 when the SwapJank64vs32Parrot experiment ended.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    CPU utilization for the specified swap group and time interval after a tab
    switch event.  See src/chrome/browser/chromeos/swap_metrics.cc.
  </summary>
</histogram>

<histogram name="Platform.SwapJank.TabSwitch.Cpu.Swap1.Time2" units="%">
  <obsolete>
    Deprecated 9/2013 when the SwapJank64vs32Parrot experiment ended.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    CPU utilization for the specified swap group and time interval after a tab
    switch event.  See src/chrome/browser/chromeos/swap_metrics.cc.
  </summary>
</histogram>

<histogram name="Platform.SwapJank.TabSwitch.Cpu.Swap1.Time3" units="%">
  <obsolete>
    Deprecated 9/2013 when the SwapJank64vs32Parrot experiment ended.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    CPU utilization for the specified swap group and time interval after a tab
    switch event.  See src/chrome/browser/chromeos/swap_metrics.cc.
  </summary>
</histogram>

<histogram name="Platform.SwapJank.TabSwitch.Cpu.Swap1.Time4" units="%">
  <obsolete>
    Deprecated 9/2013 when the SwapJank64vs32Parrot experiment ended.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    CPU utilization for the specified swap group and time interval after a tab
    switch event.  See src/chrome/browser/chromeos/swap_metrics.cc.
  </summary>
</histogram>

<histogram name="Platform.SwapJank.TabSwitch.Cpu.Swap2.Time1" units="%">
  <obsolete>
    Deprecated 9/2013 when the SwapJank64vs32Parrot experiment ended.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    CPU utilization for the specified swap group and time interval after a tab
    switch event.  See src/chrome/browser/chromeos/swap_metrics.cc.
  </summary>
</histogram>

<histogram name="Platform.SwapJank.TabSwitch.Cpu.Swap2.Time2" units="%">
  <obsolete>
    Deprecated 9/2013 when the SwapJank64vs32Parrot experiment ended.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    CPU utilization for the specified swap group and time interval after a tab
    switch event.  See src/chrome/browser/chromeos/swap_metrics.cc.
  </summary>
</histogram>

<histogram name="Platform.SwapJank.TabSwitch.Cpu.Swap2.Time3" units="%">
  <obsolete>
    Deprecated 9/2013 when the SwapJank64vs32Parrot experiment ended.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    CPU utilization for the specified swap group and time interval after a tab
    switch event.  See src/chrome/browser/chromeos/swap_metrics.cc.
  </summary>
</histogram>

<histogram name="Platform.SwapJank.TabSwitch.Cpu.Swap2.Time4" units="%">
  <obsolete>
    Deprecated 9/2013 when the SwapJank64vs32Parrot experiment ended.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    CPU utilization for the specified swap group and time interval after a tab
    switch event.  See src/chrome/browser/chromeos/swap_metrics.cc.
  </summary>
</histogram>

<histogram name="Platform.SwapJank.TabSwitch.Cpu.Swap3.Time1" units="%">
  <obsolete>
    Deprecated 9/2013 when the SwapJank64vs32Parrot experiment ended.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    CPU utilization for the specified swap group and time interval after a tab
    switch event.  See src/chrome/browser/chromeos/swap_metrics.cc.
  </summary>
</histogram>

<histogram name="Platform.SwapJank.TabSwitch.Cpu.Swap3.Time2" units="%">
  <obsolete>
    Deprecated 9/2013 when the SwapJank64vs32Parrot experiment ended.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    CPU utilization for the specified swap group and time interval after a tab
    switch event.  See src/chrome/browser/chromeos/swap_metrics.cc.
  </summary>
</histogram>

<histogram name="Platform.SwapJank.TabSwitch.Cpu.Swap3.Time3" units="%">
  <obsolete>
    Deprecated 9/2013 when the SwapJank64vs32Parrot experiment ended.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    CPU utilization for the specified swap group and time interval after a tab
    switch event.  See src/chrome/browser/chromeos/swap_metrics.cc.
  </summary>
</histogram>

<histogram name="Platform.SwapJank.TabSwitch.Cpu.Swap3.Time4" units="%">
  <obsolete>
    Deprecated 9/2013 when the SwapJank64vs32Parrot experiment ended.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    CPU utilization for the specified swap group and time interval after a tab
    switch event.  See src/chrome/browser/chromeos/swap_metrics.cc.
  </summary>
</histogram>

<histogram name="Platform.SwapJank.TabSwitch.Faults.Swap0.Time1"
    units="page faults/second">
  <obsolete>
    Deprecated 9/2013 when the SwapJank64vs32Parrot experiment ended.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Page faults/second for the specified swap group and time interval after a
    tab switch event.  See src/chrome/browser/chromeos/swap_metrics.cc.
  </summary>
</histogram>

<histogram name="Platform.SwapJank.TabSwitch.Faults.Swap0.Time2"
    units="page faults/second">
  <obsolete>
    Deprecated 9/2013 when the SwapJank64vs32Parrot experiment ended.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Page faults/second for the specified swap group and time interval after a
    tab switch event.  See src/chrome/browser/chromeos/swap_metrics.cc.
  </summary>
</histogram>

<histogram name="Platform.SwapJank.TabSwitch.Faults.Swap0.Time3"
    units="page faults/second">
  <obsolete>
    Deprecated 9/2013 when the SwapJank64vs32Parrot experiment ended.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Page faults/second for the specified swap group and time interval after a
    tab switch event.  See src/chrome/browser/chromeos/swap_metrics.cc.
  </summary>
</histogram>

<histogram name="Platform.SwapJank.TabSwitch.Faults.Swap0.Time4"
    units="page faults/second">
  <obsolete>
    Deprecated 9/2013 when the SwapJank64vs32Parrot experiment ended.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Page faults/second for the specified swap group and time interval after a
    tab switch event.  See src/chrome/browser/chromeos/swap_metrics.cc.
  </summary>
</histogram>

<histogram name="Platform.SwapJank.TabSwitch.Faults.Swap1.Time1"
    units="page faults/second">
  <obsolete>
    Deprecated 9/2013 when the SwapJank64vs32Parrot experiment ended.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Page faults/second for the specified swap group and time interval after a
    tab switch event.  See src/chrome/browser/chromeos/swap_metrics.cc.
  </summary>
</histogram>

<histogram name="Platform.SwapJank.TabSwitch.Faults.Swap1.Time2"
    units="page faults/second">
  <obsolete>
    Deprecated 9/2013 when the SwapJank64vs32Parrot experiment ended.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Page faults/second for the specified swap group and time interval after a
    tab switch event.  See src/chrome/browser/chromeos/swap_metrics.cc.
  </summary>
</histogram>

<histogram name="Platform.SwapJank.TabSwitch.Faults.Swap1.Time3"
    units="page faults/second">
  <obsolete>
    Deprecated 9/2013 when the SwapJank64vs32Parrot experiment ended.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Page faults/second for the specified swap group and time interval after a
    tab switch event.  See src/chrome/browser/chromeos/swap_metrics.cc.
  </summary>
</histogram>

<histogram name="Platform.SwapJank.TabSwitch.Faults.Swap1.Time4"
    units="page faults/second">
  <obsolete>
    Deprecated 9/2013 when the SwapJank64vs32Parrot experiment ended.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Page faults/second for the specified swap group and time interval after a
    tab switch event.  See src/chrome/browser/chromeos/swap_metrics.cc.
  </summary>
</histogram>

<histogram name="Platform.SwapJank.TabSwitch.Faults.Swap2.Time1"
    units="page faults/second">
  <obsolete>
    Deprecated 9/2013 when the SwapJank64vs32Parrot experiment ended.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Page faults/second for the specified swap group and time interval after a
    tab switch event.  See src/chrome/browser/chromeos/swap_metrics.cc.
  </summary>
</histogram>

<histogram name="Platform.SwapJank.TabSwitch.Faults.Swap2.Time2"
    units="page faults/second">
  <obsolete>
    Deprecated 9/2013 when the SwapJank64vs32Parrot experiment ended.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Page faults/second for the specified swap group and time interval after a
    tab switch event.  See src/chrome/browser/chromeos/swap_metrics.cc.
  </summary>
</histogram>

<histogram name="Platform.SwapJank.TabSwitch.Faults.Swap2.Time3"
    units="page faults/second">
  <obsolete>
    Deprecated 9/2013 when the SwapJank64vs32Parrot experiment ended.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Page faults/second for the specified swap group and time interval after a
    tab switch event.  See src/chrome/browser/chromeos/swap_metrics.cc.
  </summary>
</histogram>

<histogram name="Platform.SwapJank.TabSwitch.Faults.Swap2.Time4"
    units="page faults/second">
  <obsolete>
    Deprecated 9/2013 when the SwapJank64vs32Parrot experiment ended.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Page faults/second for the specified swap group and time interval after a
    tab switch event.  See src/chrome/browser/chromeos/swap_metrics.cc.
  </summary>
</histogram>

<histogram name="Platform.SwapJank.TabSwitch.Faults.Swap3.Time1"
    units="page faults/second">
  <obsolete>
    Deprecated 9/2013 when the SwapJank64vs32Parrot experiment ended.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Page faults/second for the specified swap group and time interval after a
    tab switch event.  See src/chrome/browser/chromeos/swap_metrics.cc.
  </summary>
</histogram>

<histogram name="Platform.SwapJank.TabSwitch.Faults.Swap3.Time2"
    units="page faults/second">
  <obsolete>
    Deprecated 9/2013 when the SwapJank64vs32Parrot experiment ended.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Page faults/second for the specified swap group and time interval after a
    tab switch event.  See src/chrome/browser/chromeos/swap_metrics.cc.
  </summary>
</histogram>

<histogram name="Platform.SwapJank.TabSwitch.Faults.Swap3.Time3"
    units="page faults/second">
  <obsolete>
    Deprecated 9/2013 when the SwapJank64vs32Parrot experiment ended.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Page faults/second for the specified swap group and time interval after a
    tab switch event.  See src/chrome/browser/chromeos/swap_metrics.cc.
  </summary>
</histogram>

<histogram name="Platform.SwapJank.TabSwitch.Faults.Swap3.Time4"
    units="page faults/second">
  <obsolete>
    Deprecated 9/2013 when the SwapJank64vs32Parrot experiment ended.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Page faults/second for the specified swap group and time interval after a
    tab switch event.  See src/chrome/browser/chromeos/swap_metrics.cc.
  </summary>
</histogram>

<histogram name="Platform.SwapOutLong" units="pages/second">
  <owner>sonnyrao@chromium.org</owner>
  <summary>
    Average pages/second swapped OUT over a 30s interval, sampled every 30s.
  </summary>
</histogram>

<histogram name="Platform.SwapOutShort" units="pages/second">
  <owner>sonnyrao@chromium.org</owner>
  <summary>
    Average pages/second swapped OUT over a 1s interval, sampled every 30s.
  </summary>
</histogram>

<histogram name="Platform.Temperature.Sensor00" units="Celsius">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Temperature reading at sensor 0 (I2C_CPU-Die) taken every 30s.
  </summary>
</histogram>

<histogram name="Platform.Temperature.Sensor01" units="Celsius">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Temperature reading at sensor 1 (I2C_CPU-Object) taken every 30s.
  </summary>
</histogram>

<histogram name="Platform.Temperature.Sensor02" units="Celsius">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Temperature reading at sensor 2 (I2C_PCH-Die) taken every 30s.
  </summary>
</histogram>

<histogram name="Platform.Temperature.Sensor03" units="Celsius">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Temperature reading at sensor 3 (I2C_PCH-Object) taken every 30s.
  </summary>
</histogram>

<histogram name="Platform.Temperature.Sensor04" units="Celsius">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Temperature reading at sensor 4 (I2C_DDR-Die) taken every 30s.
  </summary>
</histogram>

<histogram name="Platform.Temperature.Sensor05" units="Celsius">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Temperature reading at sensor 5 (I2C_DDR-Object) taken every 30s.
  </summary>
</histogram>

<histogram name="Platform.Temperature.Sensor06" units="Celsius">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Temperature reading at sensor 6 (Charger-Die), taken every 30s.
  </summary>
</histogram>

<histogram name="Platform.Temperature.Sensor07" units="Celsius">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Temperature reading at sensor 7 (Charger-Object) taken every 30s.
  </summary>
</histogram>

<histogram name="Platform.Temperature.Sensor08" units="Celsius">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Temperature reading at sensor 8 (ECInternal) taken every 30s.
  </summary>
</histogram>

<histogram name="Platform.Temperature.Sensor09" units="Celsius">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>Temperature reading at sensor 9 (PECI) taken every 30s.</summary>
</histogram>

<histogram name="Platform.Thermal.Temperature.Cpu.0" units="Celsius">
  <owner>mka@chromium.org</owner>
  <summary>
    Temperature reading at sensor 0 of the CPU collected every few seconds (may
    vary between devices).

    This metric is specific to ChromeOS.
  </summary>
</histogram>

<histogram name="Platform.Thermal.Temperature.Wifi0" units="Celsius">
  <owner>mka@chromium.org</owner>
  <summary>
    Temperature reading at wireless interface 0 collected every few seconds (may
    vary between devices).

    This metric is specific to ChromeOS.
  </summary>
</histogram>

<histogram name="Platform.Thermal.Temperature.Wifi1" units="Celsius">
  <owner>mka@chromium.org</owner>
  <summary>
    Temperature reading at wireless interface 1 collected every few seconds (may
    vary between devices).

    This metric is specific to ChromeOS.
  </summary>
</histogram>

<histogram name="Platform.Thermal.Temperature.Wifi2" units="Celsius">
  <owner>mka@chromium.org</owner>
  <summary>
    Temperature reading at wireless interface 2 collected every few seconds (may
    vary between devices).

    This metric is specific to ChromeOS.
  </summary>
</histogram>

<histogram name="Platform.Thermal.Zone.Cpu.States" units="Thermal state">
  <owner>mka@chromium.org</owner>
  <summary>
    State of the thermal zone of the CPU collected every second. State depends
    on device, higher state corresponds to a higher temperature.

    This metric is specific to ChromeOS.
  </summary>
</histogram>

<histogram name="Platform.Thermal.Zone.Wifi0.States" units="Thermal state">
  <owner>mka@chromium.org</owner>
  <summary>
    State of the thermal zone of wireless interface 0 collected every second.
    State depends on device, higher state corresponds to a higher temperature.

    This metric is specific to ChromeOS.
  </summary>
</histogram>

<histogram name="Platform.Thermal.Zone.Wifi1.States" units="Thermal state">
  <owner>mka@chromium.org</owner>
  <summary>
    State of the thermal zone of wireless interface 1 collected every second.
    State depends on device, higher state corresponds to a higher temperature.

    This metric is specific to ChromeOS.
  </summary>
</histogram>

<histogram name="Platform.Thermal.Zone.Wifi2.States" units="Thermal state">
  <owner>mka@chromium.org</owner>
  <summary>
    State of the thermal zone of wireless interface 2 collected every second.
    State depends on device, higher state corresponds to a higher temperature.

    This metric is specific to ChromeOS.
  </summary>
</histogram>

<histogram name="Platform.TPM.AuthErrorCode" enum="TPMResultCodeEnum">
  <owner>semenzato@chromium.org</owner>
  <summary>
    Each sample is the result code of a TPM authorized command issued through
    tcsd.  Success is 0.  For the other error codes, see
    /usr/include/tss/tpm_error.h.
  </summary>
</histogram>

<histogram name="Platform.TPM.DictionaryAttackCounter">
  <owner>dkrahn@chromium.org</owner>
  <summary>
    Each sample is the value of the TPM dictionary attack counter reported at
    boot and hourly while running.  Any non-zero value is unexpected.
  </summary>
</histogram>

<histogram name="Platform.TPM.DictionaryAttackResetStatus"
    enum="CrosTPMDictionaryAttackResetStatusEnum">
  <owner>dkrahn@chromium.org</owner>
  <summary>
    Each sample is the status of an hourly attempt to reset the TPM dictionary
    attack counter.
  </summary>
</histogram>

<histogram name="Platform.TPM.ErrorCode" enum="TPMResultCodeEnum">
  <owner>semenzato@chromium.org</owner>
  <summary>
    Each sample is the result code of a TPM command issued through tcsd. Success
    is 0.  For the other error codes, see /usr/include/tss/tpm_error.h.
  </summary>
</histogram>

<histogram name="Platform.TPMForcedReboot" units="reboots">
  <owner>dkrahn@chromium.org</owner>
  <summary>
    Each sample is the number of consecutive reboots performed while attempting
    to clear a TPM (Trusted Platform Module) error.
  </summary>
</histogram>

<histogram name="Platform.Tps65090Retries">
  <obsolete>
    Deprecated 04/2016 as doesn't have data nor owner.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Retries needed to enable a FET on tps65090 (AKA tpschrome).  Tps65090 is a
    power management unit (PMU) used on many ARM Chromebooks.  Until version ES7
    was rolled into production we would sometimes run into a problem where FET1
    (the FET used to switch on and off the backlight) wouldn't turn on properly.
    This problem was especially prevalent when the voltage was high (like when
    the device was plugged into the wall).  Retrying by turning the FET off and
    on again is nearly always effective, so the kernel will retry up to 5 times
    (currently) and will also log the fact that it needed to retry.  On newest
    kernels (kernel 3.8 and up) a kernel warning will be logged with WARN_ON if
    the FET still failed to turn on after 5 tries. Refer to the kernel warning
    reports to find that information.  For more details about this bug refer to
    http://crbug.com/338657 and http://crosbug.com/p/16009.  Note that we log
    retries on all 7 FETs even though we've only ever seen failures of FET1.
  </summary>
</histogram>

<histogram name="Platform.WriteSectorsLong">
  <owner>gwendal@google.com</owner>
  <summary>
    Number of disk sectors per second written by Chrome OS in a long interval
    (currently 30s)
  </summary>
</histogram>

<histogram name="Platform.WriteSectorsShort">
  <owner>gwendal@google.com</owner>
  <summary>
    Number of disk sectors per second written by Chrome OS in a short interval
    (currently 1s, sampled every 30s)
  </summary>
</histogram>

<histogram name="Platform.ZramCompressedSize" units="MB">
  <owner>semenzato@google.com</owner>
  <summary>
    Compressed swap size in megabytes.  This is the actual amount of RAM used by
    the system to compress memory (i.e. after compression).  Snapshot every 30s.
  </summary>
</histogram>

<histogram name="Platform.ZramCompressionRatioPercent" units="%">
  <owner>semenzato@google.com</owner>
  <summary>
    The ratio of compressed memory (zram) before and after compression when the
    denominator at least 1 MB. Ratios of interest are between 1 and 6 (typically
    between 2 and 3), and we express them as a percentage (between 100% and
    600%). The size of memory before compression includes zero-filled pages.
    Values close to 100% indicate low compression effectiveness. Snapshot every
    30s.
  </summary>
</histogram>

<histogram name="Platform.ZramSavings" units="MB">
  <owner>semenzato@google.com</owner>
  <summary>
    RAM savings in megabytes from using memory compression.  This is the
    difference between the RAM size before and after compression.  Snapshot
    every 30s.
  </summary>
</histogram>

<histogram name="Platform.ZramZeroPages" units="pages">
  <owner>semenzato@google.com</owner>
  <summary>
    Number of zero-filled pages that the OS is compressing.  A large number
    suggests wasteful allocation.  Snapshot every 30s.
  </summary>
</histogram>

<histogram name="Platform.ZramZeroRatioPercent" units="%">
  <owner>semenzato@google.com</owner>
  <summary>
    The fraction of compressed memory that consists of zero-filled pages.
    Snapshot every 30s.
  </summary>
</histogram>

<histogram name="PlatformFile.FlushTime" units="ms">
  <owner>tnagel@chromium.org</owner>
  <summary>The time it takes to run File::Flush().</summary>
</histogram>

<histogram name="PlatformFile.UnknownCreateFileErrors" units="code">
  <obsolete>
    Deprecated as of 2013-05, replaced by
    PlatformFile.UnknownCreateFileErrorsWin in chrome 29.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Errors returned by CreateFile on windows that PlatformFileError doesn't yet
    support.
  </summary>
</histogram>

<histogram name="PlatformFile.UnknownErrors.Posix" units="errno">
  <owner>dgrogan@chromium.org</owner>
  <summary>
    Errors returned by CreateFile on POSIX that PlatformFileError doesn't yet
    support.
  </summary>
</histogram>

<histogram name="PlatformFile.UnknownErrors.Windows" units="GetLastError">
  <owner>dgrogan@chromium.org</owner>
  <summary>
    Errors returned by CreateFile on Windows that PlatformFileError doesn't yet
    support.
  </summary>
</histogram>

<histogram name="PLT.Abandoned" enum="Abandoned">
  <obsolete>
    Deprecated as of 2014-06.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Distribution of actual finished pages, vs abandoned pages, where we needed
    to declare a finish time prematurely since the page was being closed
    (exited).
  </summary>
</histogram>

<histogram name="PLT.Abandoned.NoProxy.http" enum="Abandoned">
  <obsolete>
    Deprecated as of 2014-06.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary/>
</histogram>

<histogram name="PLT.Abandoned.NoProxy.https" enum="Abandoned">
  <obsolete>
    Deprecated as of 2014-06.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary/>
</histogram>

<histogram name="PLT.Abandoned.Proxy.http" enum="Abandoned">
  <obsolete>
    Deprecated as of 2014-06.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary/>
</histogram>

<histogram name="PLT.Abandoned.Proxy.https" enum="Abandoned">
  <obsolete>
    Deprecated as of 2014-06.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary/>
</histogram>

<histogram name="PLT.Abandoned_ExtensionAdblock" enum="Abandoned">
  <obsolete>
    Deprecated 6/2014. Replaced by Abandoned_ExtensionWebRequest.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary/>
</histogram>

<histogram name="PLT.Abandoned_ExtensionAdblockPlus" enum="Abandoned">
  <obsolete>
    Deprecated 6/2014. Replaced by Abandoned_ExtensionWebRequest.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary/>
</histogram>

<histogram name="PLT.Abandoned_ExtensionWebRequest" enum="Abandoned">
  <obsolete>
    Deprecated as of 2014-06.
  </obsolete>
  <owner>vabr@chromium.org</owner>
  <summary>
    The PLT.Abandoned histogram for pages loaded after WebRequest API was used.
  </summary>
</histogram>

<histogram name="PLT.Abandoned_ExtensionWebRequestAdblock" enum="Abandoned">
  <obsolete>
    Deprecated 6/2014. Replaced by Abandoned_ExtensionWebRequest.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary/>
</histogram>

<histogram name="PLT.Abandoned_ExtensionWebRequestAdblockPlus" enum="Abandoned">
  <obsolete>
    Deprecated 6/2014. Replaced by Abandoned_ExtensionWebRequest.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary/>
</histogram>

<histogram name="PLT.Abandoned_ExtensionWebRequestOther" enum="Abandoned">
  <obsolete>
    Deprecated 6/2014. Replaced by Abandoned_ExtensionWebRequest.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary/>
</histogram>

<histogram name="PLT.Abandoned_SpdyProxy" enum="Abandoned">
  <obsolete>
    Deprecated as of 2014-06.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary/>
</histogram>

<histogram name="PLT.AbandonType" enum="AbandonType">
  <obsolete>
    Deprecated as of 2014-06.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>Diagnose why a page load was considered abandoned.</summary>
</histogram>

<histogram name="PLT.BeginToCommit" units="ms">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Time from &quot;begin&quot; to &quot;commit.&quot;   &quot;Begin&quot;==
    &quot;request&quot; if user requested, and &quot;start&quot; otherwise.
    &quot;Request&quot;== time when user requested document. &quot;Start&quot;==
    time when renderer requested load of document, after any unload of last
    document. &quot;Commit&quot;== time when renderer got first byte of
    document.
  </summary>
</histogram>

<histogram name="PLT.BeginToFinish" units="ms">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>TBD</summary>
</histogram>

<histogram name="PLT.BeginToFinish_AfterPreconnectRequest" units="ms">
  <obsolete>
    Deprecated as of http://crrev.com/392823002
  </obsolete>
  <owner>kouhei@chromium.org</owner>
  <summary>
    PLT.BeginToFinish, but for pages requested just after a new preconnect
    request.
  </summary>
</histogram>

<histogram name="PLT.BeginToFinish_ContentPrefetcher" units="ms">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    PLT.BeginToFinish, but for pages which contained prefetch links.
  </summary>
</histogram>

<histogram name="PLT.BeginToFinish_ContentPrefetcherReferrer" units="ms">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    PLT.BeginToFinish, but for pages which were referred to by pages which
    contained prefetch links.
  </summary>
</histogram>

<histogram name="PLT.BeginToFinish_LinkLoadNormal_ExtensionAdblock" units="ms">
  <obsolete>
    Deprecated 6/2014. Replaced by
    BeginToFinish_LinkLoadNormal_ExtensionWebRequest.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary/>
</histogram>

<histogram name="PLT.BeginToFinish_LinkLoadNormal_ExtensionAdblockPlus"
    units="ms">
  <obsolete>
    Deprecated 6/2014. Replaced by
    BeginToFinish_LinkLoadNormal_ExtensionWebRequest.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary/>
</histogram>

<histogram name="PLT.BeginToFinish_LinkLoadNormal_ExtensionWebRequest"
    units="ms">
  <owner>vabr@chromium.org</owner>
  <summary>
    The PLT.BeginToFinish histogram for pages loaded by following a link, after
    WebRequest API was used.
  </summary>
</histogram>

<histogram name="PLT.BeginToFinish_LinkLoadNormal_ExtensionWebRequestAdblock"
    units="ms">
  <obsolete>
    Deprecated 6/2014. Replaced by
    BeginToFinish_LinkLoadNormal_ExtensionWebRequest.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary/>
</histogram>

<histogram
    name="PLT.BeginToFinish_LinkLoadNormal_ExtensionWebRequestAdblockPlus"
    units="ms">
  <obsolete>
    Deprecated 6/2014. Replaced by
    BeginToFinish_LinkLoadNormal_ExtensionWebRequest.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary/>
</histogram>

<histogram name="PLT.BeginToFinish_LinkLoadNormal_ExtensionWebRequestOther"
    units="ms">
  <obsolete>
    Deprecated 6/2014. Replaced by
    BeginToFinish_LinkLoadNormal_ExtensionWebRequest.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary/>
</histogram>

<histogram name="PLT.BeginToFinish_LinkLoadReload_ExtensionAdblock" units="ms">
  <obsolete>
    Deprecated 6/2014. Replaced by
    BeginToFinish_LinkLoadReload_ExtensionWebRequest.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary/>
</histogram>

<histogram name="PLT.BeginToFinish_LinkLoadReload_ExtensionAdblockPlus"
    units="ms">
  <obsolete>
    Deprecated 6/2014. Replaced by
    BeginToFinish_LinkLoadReload_ExtensionWebRequest.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary/>
</histogram>

<histogram name="PLT.BeginToFinish_LinkLoadReload_ExtensionWebRequest"
    units="ms">
  <owner>vabr@chromium.org</owner>
  <summary>
    The PLT.BeginToFinish histogram for pages reloaded by JavaScript or by
    following a link, after WebRequest API was used.
  </summary>
</histogram>

<histogram name="PLT.BeginToFinish_LinkLoadReload_ExtensionWebRequestAdblock"
    units="ms">
  <obsolete>
    Deprecated 6/2014. Replaced by
    BeginToFinish_LinkLoadReload_ExtensionWebRequest.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary/>
</histogram>

<histogram
    name="PLT.BeginToFinish_LinkLoadReload_ExtensionWebRequestAdblockPlus"
    units="ms">
  <obsolete>
    Deprecated 6/2014. Replaced by
    BeginToFinish_LinkLoadReload_ExtensionWebRequest.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary/>
</histogram>

<histogram name="PLT.BeginToFinish_LinkLoadReload_ExtensionWebRequestOther"
    units="ms">
  <obsolete>
    Deprecated 6/2014. Replaced by
    BeginToFinish_LinkLoadReload_ExtensionWebRequest.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary/>
</histogram>

<histogram name="PLT.BeginToFinish_LinkLoadStaleOk_ExtensionAdblock" units="ms">
  <obsolete>
    Deprecated 6/2014. Replaced by
    BeginToFinish_LinkLoadStaleOk_ExtensionWebRequest.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary/>
</histogram>

<histogram name="PLT.BeginToFinish_LinkLoadStaleOk_ExtensionAdblockPlus"
    units="ms">
  <obsolete>
    Deprecated 6/2014. Replaced by
    BeginToFinish_LinkLoadStaleOk_ExtensionWebRequest.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary/>
</histogram>

<histogram name="PLT.BeginToFinish_LinkLoadStaleOk_ExtensionWebRequest"
    units="ms">
  <owner>vabr@chromium.org</owner>
  <summary>
    The PLT.BeginToFinish histogram for pages loads initiated by back/forward
    buttons, or by a change of encoding, after WebRequest API was used.
  </summary>
</histogram>

<histogram name="PLT.BeginToFinish_LinkLoadStaleOk_ExtensionWebRequestAdblock"
    units="ms">
  <obsolete>
    Deprecated 6/2014. Replaced by
    BeginToFinish_LinkLoadStaleOk_ExtensionWebRequest.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary/>
</histogram>

<histogram
    name="PLT.BeginToFinish_LinkLoadStaleOk_ExtensionWebRequestAdblockPlus"
    units="ms">
  <obsolete>
    Deprecated 6/2014. Replaced by
    BeginToFinish_LinkLoadStaleOk_ExtensionWebRequest.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary/>
</histogram>

<histogram name="PLT.BeginToFinish_LinkLoadStaleOk_ExtensionWebRequestOther"
    units="ms">
  <obsolete>
    Deprecated 6/2014. Replaced by
    BeginToFinish_LinkLoadStaleOk_ExtensionWebRequest.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary/>
</histogram>

<histogram name="PLT.BeginToFinish_NormalLoad_ExtensionAdblock" units="ms">
  <obsolete>
    Deprecated 6/2014. Replaced by BeginToFinish_NormalLoad_ExtensionWebRequest.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary/>
</histogram>

<histogram name="PLT.BeginToFinish_NormalLoad_ExtensionAdblockPlus" units="ms">
  <obsolete>
    Deprecated 6/2014. Replaced by BeginToFinish_NormalLoad_ExtensionWebRequest.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary/>
</histogram>

<histogram name="PLT.BeginToFinish_NormalLoad_ExtensionWebRequest" units="ms">
  <owner>vabr@chromium.org</owner>
  <summary>
    The PLT.BeginToFinish histogram for pages loaded by entering a URL or a
    search query into Omnibox, after WebRequest API was used.
  </summary>
</histogram>

<histogram name="PLT.BeginToFinish_NormalLoad_ExtensionWebRequestAdblock"
    units="ms">
  <obsolete>
    Deprecated 6/2014. Replaced by BeginToFinish_NormalLoad_ExtensionWebRequest.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary/>
</histogram>

<histogram name="PLT.BeginToFinish_NormalLoad_ExtensionWebRequestAdblockPlus"
    units="ms">
  <obsolete>
    Deprecated 6/2014. Replaced by BeginToFinish_NormalLoad_ExtensionWebRequest.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary/>
</histogram>

<histogram name="PLT.BeginToFinish_NormalLoad_ExtensionWebRequestOther"
    units="ms">
  <obsolete>
    Deprecated 6/2014. Replaced by BeginToFinish_NormalLoad_ExtensionWebRequest.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary/>
</histogram>

<histogram name="PLT.BeginToFinish_SpdyProxy" units="ms">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>PLT.BeginToFinish, but for pages fetched over a SPDY proxy.</summary>
</histogram>

<histogram name="PLT.BeginToFinishDoc">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>TBD</summary>
</histogram>

<histogram name="PLT.BeginToFinishDoc_AfterPreconnectRequest" units="ms">
  <obsolete>
    Deprecated as of http://crrev.com/392823002
  </obsolete>
  <owner>kouhei@chromium.org</owner>
  <summary>
    PLT.BeginToFinishDoc, but for pages requested just after a new preconnect
    request.
  </summary>
</histogram>

<histogram name="PLT.BeginToFinishDoc_ContentPrefetcher" units="ms">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    PLT.BeginToFinishDoc, but for pages which contained prefetch links.
  </summary>
</histogram>

<histogram name="PLT.BeginToFinishDoc_ContentPrefetcherReferrer" units="ms">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    PLT.BeginToFinishDoc, but for pages which were referred to by pages which
    contained prefetch links.
  </summary>
</histogram>

<histogram name="PLT.BeginToFinishDoc_SpdyProxy" units="ms">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    PLT.BeginToFinshDoc, but for pages fetched over a SPDY proxy.
  </summary>
</histogram>

<histogram name="PLT.BeginToFirstPaint" units="ms">
  <owner>pmeenan@chromium.org</owner>
  <summary>
    Time from &quot;begin&quot; to &quot;first paint.&quot;  &quot;Begin&quot;==
    &quot;request&quot; if user requested, and &quot;start&quot; otherwise.
    &quot;Request&quot;== time when user requested document. &quot;Start&quot;==
    time when renderer requested load of document, after any unload of last
    document. &quot;First paint&quot;== time when first paint operation was
    performed.
  </summary>
</histogram>

<histogram name="PLT.BeginToFirstPaint_Negative" units="ms">
  <owner>bmcquade@chromium.org</owner>
  <summary>
    Magnitude and difference between begin and first paint, when first_paint
    precedes begin. This is a temporary metric used to better understand the
    root cause of http://crbug.com/125273.
  </summary>
</histogram>

<histogram name="PLT.BeginToFirstPaintAfterLoad" units="ms">
  <owner>pmeenan@chromium.org</owner>
  <summary>
    Time from &quot;big&quot; to &quot;first paint after load.&quot;
    &quot;Begin&quot;== &quot;request&quot; if user requested, and
    &quot;start&quot; otherwise.  &quot;Request&quot;== time when user requested
    document. &quot;Start&quot;== time when renderer requested load of document,
    after any unload of last document. &quot;First paint after load&quot;== time
    after onload() when first paint operation is performed.
  </summary>
</histogram>

<histogram name="PLT.CommitToFinish" units="ms">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Time from &quot;commit&quot; to &quot;finish.&quot; &quot;Commit&quot;==
    time when renderer got first byte of document.  &quot;Finish&quot;==after
    onload() and all resources are loaded.
  </summary>
</histogram>

<histogram name="PLT.CommitToFinishDoc" units="ms">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Time from &quot;commit&quot; to &quot;finish doc.&quot; &quot;Commit&quot;==
    time when renderer got first byte of document. &quot;Finish doc&quot; ==
    main document loaded, before onload(). &quot;Finish&quot;==after onload()
    and all resources are loaded.
  </summary>
</histogram>

<histogram name="PLT.CommitToFirstPaint" units="ms">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Time from &quot;commit&quot; to &quot;first paint.&quot;
    &quot;Commit&quot;== time when renderer got first byte of document.
    &quot;First paint&quot;== time when first paint operation was performed.
  </summary>
</histogram>

<histogram name="PLT.CommitToFirstPaintAfterLoad" units="ms">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Time from &quot;commit&quot; to &quot;first paint after load.&quot;
    &quot;Commit&quot;== time when renderer got first byte of document.
    &quot;First paint after load&quot;== time after onload() when first paint
    operation is performed.
  </summary>
</histogram>

<histogram name="PLT.FinishDocToFinish" units="ms">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Time from &quot;finish doc&quot; to &quot;finish.&quot; &quot;Finish
    doc&quot;== main document loaded, before onload(). &quot;Finish&quot;==after
    onload() and all resources are loaded.
  </summary>
</histogram>

<histogram name="PLT.FinishToFirstPaintAfterLoad" units="ms">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Time from &quot;finish &quot; to &quot;first paint after load.&quot;
    &quot;Finish&quot;==after onload() and all resources are loaded. &quot;First
    paint after load&quot;== time after onload() when first paint operation is
    performed.
  </summary>
</histogram>

<histogram name="PLT.LoadType" enum="LoadType">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Probability distribution for enumerated varieties of page loads.
  </summary>
</histogram>

<histogram name="PLT.MissingStart" enum="MissingStartType">
  <obsolete>
    Deprecated as of 2014-06.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Diagnose error conditions in PLT reporting. A start time should always be
    present.
  </summary>
</histogram>

<histogram name="PLT.NavStartToLoadEnd" units="ms">
  <obsolete>
    deprecated 2012-01-19 in favour of PLT.PT_*
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The time elapsed between the Navigation Timing metrics navigationStart and
    loadEventEnd. Definitions: http://www.w3.org/TR/navigation-timing/
  </summary>
</histogram>

<histogram name="PLT.NavStartToLoadStart" units="ms">
  <obsolete>
    deprecated 2012-01-19 in favour of PLT.PT_*
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The time elapsed between the Navigation Timing metrics navigationStart and
    loadEventStart. Definitions: http://www.w3.org/TR/navigation-timing/
  </summary>
</histogram>

<histogram name="PLT.NT_Connect" units="ms">
  <owner>bolian@chromium.org</owner>
  <summary>
    Time from connectStart to connectEnd based on Navigation Timing.
  </summary>
</histogram>

<histogram name="PLT.NT_DelayBeforeConnect" units="ms">
  <owner>bolian@chromium.org</owner>
  <summary>
    Time from domanLookupEnd to connectStart based on Navigation Timing.
  </summary>
</histogram>

<histogram name="PLT.NT_DelayBeforeDomainLookup" units="ms">
  <owner>bolian@chromium.org</owner>
  <summary>
    Time from fetchStart to domainLookupStart based on Navigation Timing.
  </summary>
</histogram>

<histogram name="PLT.NT_DelayBeforeDomLoading" units="ms">
  <owner>bolian@chromium.org</owner>
  <summary>
    Time from responseStart to domLoading based on Navigation Timing.
  </summary>
</histogram>

<histogram name="PLT.NT_DelayBeforeFetch" units="ms">
  <owner>bolian@chromium.org</owner>
  <summary>
    Time from navigationStart to fetchStart based on Navigation Timing when no
    redirect.
  </summary>
</histogram>

<histogram name="PLT.NT_DelayBeforeFetchRedirect" units="ms">
  <owner>bolian@chromium.org</owner>
  <summary>
    Time from navigationStart to fetchStart excluding time spent on redirects
    based on Navigation Timing. Only page loads with redirects are considered.
  </summary>
</histogram>

<histogram name="PLT.NT_DelayBeforeLoadEvent" units="ms">
  <owner>bolian@chromium.org</owner>
  <summary>
    Time from domContentLoadedEventEnd to loadEventStart based on Navigation
    Timing.
  </summary>
</histogram>

<histogram name="PLT.NT_DelayBeforeRequest" units="ms">
  <owner>bolian@chromium.org</owner>
  <summary>
    Time from connectEnd to requestStart based on Navigation Timing.
  </summary>
</histogram>

<histogram name="PLT.NT_DomainLookup" units="ms">
  <owner>bolian@chromium.org</owner>
  <summary>
    Time from domainLookupStart to domainLookupEnd based on Navigation Timing.
  </summary>
</histogram>

<histogram name="PLT.NT_DomContentLoaded" units="ms">
  <owner>bolian@chromium.org</owner>
  <summary>
    Time from domContentLoadedEventStart to domContentLoadedEventEnd based on
    Navigation Timing.
  </summary>
</histogram>

<histogram name="PLT.NT_DomInteractive" units="ms">
  <owner>bolian@chromium.org</owner>
  <summary>
    Time from domInteractive to domContentLoadEventStart based on Navigation
    Timing.
  </summary>
</histogram>

<histogram name="PLT.NT_DomLoading" units="ms">
  <owner>bolian@chromium.org</owner>
  <summary>
    Time from domLoading to domInteractive based on Navigation Timing.
  </summary>
</histogram>

<histogram name="PLT.NT_LoadEvent" units="ms">
  <owner>bolian@chromium.org</owner>
  <summary>
    Time from loadEventStart to loadEventEnd based on Navigation Timing.
  </summary>
</histogram>

<histogram name="PLT.NT_Redirect" units="ms">
  <owner>bolian@chromium.org</owner>
  <summary>
    Time from redirectStart to redirectEnd based on Navigation Timing when
    redirects exist.
  </summary>
</histogram>

<histogram name="PLT.NT_Request" units="ms">
  <owner>bolian@chromium.org</owner>
  <summary>
    Time from requestStart to responseStart based on Navigation Timing.
  </summary>
</histogram>

<histogram name="PLT.NT_Response" units="ms">
  <owner>bolian@chromium.org</owner>
  <summary>
    Time from responseStart to responseEnd based on Navigation Timing.
  </summary>
</histogram>

<histogram name="PLT.PageUsed_PrerenderLoad" enum="PageUsed">
  <obsolete>
    Deprecated as of 5/02/2011.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>Distribution of discarded and displayed prerendered pages.</summary>
</histogram>

<histogram name="PLT.PerceivedLoadTime" units="ms">
  <obsolete>
    Deprecated as of 5/02/2011, replaced by Prerender.RendererPLT.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Perceived load time of a page. For non-prerendered pages, this is just
    BeginToFinish. For displayed prerendered pages, this is the time from when
    the prerendered page is moved into a TabContents until finish.
    &quot;Finish&quot; == after onload() and all resources are loaded. Note that
    this is 0 if the loading finishes before the page is moved into a
    TabContents.
  </summary>
</histogram>

<histogram name="PLT.PerceivedLoadTime_PrerenderLoad" units="ms">
  <obsolete>
    Deprecated as of 5/02/2011, replaced by
    Prerender.RendererPerceivedPLTMatched.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Perceived load time of a prerendered page that is displayed. This is the
    time from when the prerendered page is moved into a TabContents until
    finish. &quot;Finish&quot; == after onload() and all resources are loaded.
    Note that this is 0 if the loading finishes before the page is moved into a
    TabContents.
  </summary>
</histogram>

<histogram name="PLT.Prerender_TimeUntilDisplay" units="ms">
  <obsolete>
    Deprecated as of 5/02/2011, replaced by Prerender.RendererTimeUntilDisplay.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The time elapsed between when the prerendering of a page starts and when the
    page is displayed. Prerendered pages discarded without being displayed are
    excluded from this count.
  </summary>
</histogram>

<histogram name="PLT.PrerenderIdleTime" units="ms">
  <obsolete>
    Deprecated as of 5/02/2011, replaced by Prerender.RendererIdleTime.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    This is the time from when a prerendered page finishes loading to when it is
    displayed. When a page is displayed before it finishes loading, no value is
    recorded in this histogram.
  </summary>
</histogram>

<histogram name="PLT.PT.NavigationStartToFirstLayout" units="ms">
  <obsolete>
    Deprecated. Use PageLoad.Timing2.* instead.
  </obsolete>
  <owner>bmcquade@chromium.org</owner>
  <summary>
    Measures the time from navigation timing's navigation start to the time the
    first document layout is performed.
  </summary>
</histogram>

<histogram name="PLT.PT.ResponseStartToFirstLayout" units="ms">
  <obsolete>
    Deprecated. Use PageLoad.Timing2.* instead.
  </obsolete>
  <owner>bmcquade@chromium.org</owner>
  <summary>
    Measures the time from navigation timing's response start to the time the
    first document layout is performed.
  </summary>
</histogram>

<histogram name="PLT.PT_BeginToCommit" units="ms">
  <owner>pmeenan@chromium.org</owner>
  <summary>
    This time is based on the NavigationTiming spec and is a more accurate
    version of PLT.BeginToCommit. Commit: responseStart. Begin: requestStart or
    navigationStart if user-initiated request.
  </summary>
</histogram>

<histogram name="PLT.PT_BeginToCommit_DataReductionProxy" units="ms">
  <owner>pmeenan@chromium.org</owner>
  <owner>bengr@chromium.org</owner>
  <owner>megjablon@chromium.org</owner>
  <summary>
    This time is based on the PerformanceTiming spec and is a more accurate
    version of PLT.BeginToCommit. Commit: responseStart. Begin: requestStart or
    navigationStart if user-initiated request. Only page loads through the data
    reduction proxy are considered.
  </summary>
</histogram>

<histogram name="PLT.PT_BeginToFinish" units="ms">
  <owner>pmeenan@chromium.org</owner>
  <summary>
    This time is based on the NavigationTiming spec and is a more accurate
    version of PLT.BeginToFinish. Finish: loadEventEnd. Begin: requestStart or
    navigationStart if user-initiated request.
  </summary>
</histogram>

<histogram name="PLT.PT_BeginToFinish_DataReductionProxy" units="ms">
  <owner>pmeenan@chromium.org</owner>
  <owner>bengr@chromium.org</owner>
  <owner>megjablon@chromium.org</owner>
  <summary>
    This time is based on the PerformanceTiming spec and is a more accurate
    version of PLT.BeginToFinish_SpdyProxy. Finish: loadEventEnd. Begin:
    requestStart or navigationStart if user-initiated request. Only page loads
    through the data reduction proxy are considered.
  </summary>
</histogram>

<histogram name="PLT.PT_BeginToFinishDoc" units="ms">
  <owner>pmeenan@chromium.org</owner>
  <summary>
    This time is based on the NavigationTiming spec and is a more accurate
    version of PLT.BeginToFinishDoc. FinishDoc: loadEventStart. Begin:
    requestStart or navigationStart if user-initiated request.
  </summary>
</histogram>

<histogram name="PLT.PT_BeginToFinishDoc_DataReductionProxy" units="ms">
  <owner>pmeenan@chromium.org</owner>
  <owner>bengr@chromium.org</owner>
  <owner>megjablon@chromium.org</owner>
  <summary>
    This time is based on the PerformanceTiming spec and is a more accurate
    version of PLT.BeginToFinishDoc_SpdyProxy. FinishDoc: loadEventStart. Begin:
    requestStart or navigationStart if user-initiated request. Only page loads
    through the data reduction proxy are considered.
  </summary>
</histogram>

<histogram name="PLT.PT_CommitToFinish" units="ms">
  <owner>pmeenan@chromium.org</owner>
  <summary>
    This time is based on the NavigationTiming spec and is a more accurate
    version of PLT.CommitToFinish. Commit: responseStart. Finish: loadEventEnd.
  </summary>
</histogram>

<histogram name="PLT.PT_CommitToFinish_DataReductionProxy" units="ms">
  <owner>pmeenan@chromium.org</owner>
  <owner>bengr@chromium.org</owner>
  <owner>megjablon@chromium.org</owner>
  <summary>
    This time is based on the PerformanceTiming spec and is a more accurate
    version of PLT.CommitToFinish. Commit: responseStart. Finish: loadEventEnd.
    Only page loads through the data reduction proxy are considered.
  </summary>
</histogram>

<histogram name="PLT.PT_CommitToFinishDoc" units="ms">
  <owner>pmeenan@chromium.org</owner>
  <summary>
    This time is based on the NavigationTiming spec and is a more accurate
    version of PLT.CommitToFinishDoc. Commit: responseStart. FinishDoc:
    loadEventStart.
  </summary>
</histogram>

<histogram name="PLT.PT_CommitToFinishDoc_DataReductionProxy" units="ms">
  <owner>pmeenan@chromium.org</owner>
  <owner>bengr@chromium.org</owner>
  <owner>megjablon@chromium.org</owner>
  <summary>
    This time is based on the PerformanceTiming spec and is a more accurate
    version of PLT.CommitToFinishDoc. Commit: responseStart. FinishDoc:
    loadEventStart. Only page loads through the data reduction proxy are
    considered.
  </summary>
</histogram>

<histogram name="PLT.PT_FinishDocToFinish" units="ms">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    This time is based on the NavigationTiming spec and is a more accurate
    version of PLT.FinishDocToFinish. Finish: loadEventEnd. FinishDoc:
    loadEventStart.
  </summary>
</histogram>

<histogram name="PLT.PT_FinishDocToFinish_DataReductionProxy" units="ms">
  <owner>bengr@chromium.org</owner>
  <owner>megjablon@chromium.org</owner>
  <summary>
    This time is based on the PerformanceTiming spec and is a more accurate
    version of PLT.FinishDocToFinish. Finish: loadEventEnd. FinishDoc:
    loadEventStart. Only page loads through the data reduction proxy are
    considered.
  </summary>
</histogram>

<histogram name="PLT.PT_RequestToCommit" units="ms">
  <owner>pmeenan@chromium.org</owner>
  <summary>
    This time is based on the NavigationTiming spec and measures the time until
    the renderer got first byte of document. Commit: time when renderer got
    first byte of document. Request: navigationStart.
  </summary>
</histogram>

<histogram name="PLT.PT_RequestToDomContentLoaded" units="ms">
  <owner>pmeenan@chromium.org</owner>
  <summary>
    This time is based on the NavigationTiming spec and measures the time until
    the beginning of the DOMContentLoaded event. DOMContentLoaded:
    domContentLoadedEventStart. Request: navigationStart.
  </summary>
</histogram>

<histogram name="PLT.PT_RequestToFinish" units="ms">
  <owner>pmeenan@chromium.org</owner>
  <summary>
    This time is based on the NavigationTiming spec and is a more accurate
    version of PLT.RequestToFinish. Finish: loadEventEnd. Request:
    navigationStart.
  </summary>
</histogram>

<histogram name="PLT.PT_RequestToFinish_DataReductionProxy" units="ms">
  <owner>pmeenan@chromium.org</owner>
  <owner>bengr@chromium.org</owner>
  <owner>megjablon@chromium.org</owner>
  <summary>
    This time is based on the PerformanceTiming spec and is a more accurate
    version of PLT.RequestToFinish. Finish: loadEventEnd. Request:
    navigationStart. Only page loads through the data reduction proxy are
    considered.
  </summary>
</histogram>

<histogram name="PLT.PT_RequestToFinishDoc" units="ms">
  <owner>pmeenan@chromium.org</owner>
  <summary>
    This time is based on the NavigationTiming spec and measures the page load
    time until the beginning of the load event. Finish: loadEventStart. Request:
    navigationStart.
  </summary>
</histogram>

<histogram name="PLT.PT_RequestToStart" units="ms">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    This time is based on the NavigationTiming spec and is a more accurate
    version of PLT.RequestToStart. Start: requestStart. Request:
    navigationStart.
  </summary>
</histogram>

<histogram name="PLT.PT_RequestToStart_DataReductionProxy" units="ms">
  <owner>bengr@chromium.org</owner>
  <owner>megjablon@chromium.org</owner>
  <summary>
    This time is based on the PerformanceTiming spec and is a more accurate
    version of PLT.RequestToStart. Start: requestStart. Request:
    navigationStart. Only page loads through the data reduction proxy are
    considered.
  </summary>
</histogram>

<histogram name="PLT.PT_StartToCommit" units="ms">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    This time is based on the NavigationTiming spec and is a more accurate
    version of PLT.StartToCommit. Start: requestStart. Commit: responseStart.
  </summary>
</histogram>

<histogram name="PLT.PT_StartToCommit_DataReductionProxy" units="ms">
  <owner>bengr@chromium.org</owner>
  <owner>megjablon@chromium.org</owner>
  <summary>
    This time is based on the PerformanceTiming spec and is a more accurate
    version of PLT.StartToCommit. Start: requestStart. Commit: responseStart.
    Only page loads through the data reduction proxy are considered.
  </summary>
</histogram>

<histogram name="PLT.PT_StartToFinish" units="ms">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    This time is based on the NavigationTiming spec and is a more accurate
    version of PLT.StartToFinish. Start: requestStart. Finish: loadEventEnd.
  </summary>
</histogram>

<histogram name="PLT.PT_StartToFinish_DataReductionProxy" units="ms">
  <owner>bengr@chromium.org</owner>
  <owner>megjablon@chromium.org</owner>
  <summary>
    This time is based on the PerformanceTiming spec and is a more accurate
    version of PLT.StartToFinish. Start: requestStart. Finish: loadEventEnd.
    Only page loads through the data reduction proxy are considered.
  </summary>
</histogram>

<histogram name="PLT.RequestToFinish" units="ms">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Time from &quot;request&quot; to &quot;finish.&quot;  &quot;Request&quot; ==
    time when user requested document.  &quot;Finish&quot; == after onload() and
    all resources are loaded.
  </summary>
</histogram>

<histogram name="PLT.RequestToStart" units="ms">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Time from &quot;request&quot; to &quot;start.&quot; &quot;Request&quot;==
    time when user requested document. &quot;Start&quot;== time when renderer
    requested load of document, after any unload of last document.
  </summary>
</histogram>

<histogram name="PLT.StartToCommit" units="ms">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Time from &quot;start&quot; to &quot;commit.&quot; &quot;Start&quot;== time
    when renderer requested load of document, after any unload of last document.
    &quot;Commit&quot;== time when renderer got first byte of document.
  </summary>
</histogram>

<histogram name="PLT.StartToFinish" units="ms">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Time from &quot;start&quot; to &quot;finish.&quot; &quot;Start&quot;== time
    when renderer requested load of document, after any unload of last document.
    &quot;Finish&quot;==after onload() and all resources are loaded.
  </summary>
</histogram>

<histogram name="PLT.StartToFinish.NoProxy.http">
  <obsolete>
    Deprecated as of 07/2014.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>StartToFinish times when using http and no proxy.</summary>
</histogram>

<histogram name="PLT.StartToFinish.NoProxy.https">
  <obsolete>
    Deprecated as of 07/2014.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>StartToFinish times when using https and no proxy.</summary>
</histogram>

<histogram name="PLT.StartToFinish.Proxy.http">
  <obsolete>
    Deprecated as of 07/2014.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>StartToFinish times when using http over a proxy.</summary>
</histogram>

<histogram name="PLT.StartToFinish.Proxy.https">
  <obsolete>
    Deprecated as of 07/2014.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>StartToFinish times when using https over a proxy.</summary>
</histogram>

<histogram name="PLT.UserTiming_Mark" units="ms">
  <owner>pmeenan@chromium.org</owner>
  <summary>
    This time is based on the User Timing spec and measures the time from
    Navigation Timing navigationStart until the point where the page called
    performance.mark().
  </summary>
</histogram>

<histogram name="PLT.UserTiming_MeasureDuration" units="ms">
  <owner>pmeenan@chromium.org</owner>
  <summary>
    This time is based on the User Timing spec and reports the time between two
    arbitrary points defined by the page being loaded and directly matches the
    measurement exposed by performance.measure().
  </summary>
</histogram>

<histogram name="Plugin.AvailabilityStatus.WidevineCdm"
    enum="PluginAvailabilityStatus">
  <owner>xhwang@chromium.org</owner>
  <summary>
    The availability status of Widevine CDM. In normal cases, this is reported
    per render process if EME API is used. This is not reported if EME API is
    not used. This could be reported multiple times per render process until
    PLUGIN_AVAILABLE is reported (which should be a rare case).
  </summary>
</histogram>

<histogram name="Plugin.Flash.ClickSize.AspectRatio" units="%">
  <owner>tommycli@chromium.org</owner>
  <summary>
    Aspect ratio of Flash plugins users click at least once. The aspect ratio is
    multiplied by 100 and stored as a rounded integer.
  </summary>
</histogram>

<histogram name="Plugin.Flash.ClickSize.Height" units="pixels">
  <owner>tommycli@chromium.org</owner>
  <summary>Height of Flash plugins users click at least once.</summary>
</histogram>

<histogram name="Plugin.Flash.ClickSize.Width" units="pixels">
  <owner>tommycli@chromium.org</owner>
  <summary>Width of Flash plugins users click at least once.</summary>
</histogram>

<histogram name="Plugin.Flash.TinyContentSize" enum="FlashTinyContentSize">
  <owner>tommycli@chromium.org</owner>
  <summary>
    Collects the sizes of all loaded Flash plugin instances. This is for
    determining the prevalence of tiny flash plugin instances.
  </summary>
</histogram>

<histogram name="Plugin.FlashNavigateUsage" enum="FlashNavigateUsageType">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>Record usage of PPB_Flash.Navigate() Pepper API.</summary>
</histogram>

<histogram name="Plugin.FlashUsage" enum="FlashUsage">
  <owner>yzshen@chromium.org</owner>
  <owner>thestig@chromium.org</owner>
  <summary>Collects Flash usage data.</summary>
</histogram>

<histogram name="Plugin.NpapiRemovalInfobar.Removed.PluginGroup"
    enum="PluginGroup">
  <obsolete>
    Deprecated due to NPAPI removal.
  </obsolete>
  <owner>wfh@chromium.org</owner>
  <summary>
    The plugin group of an NPAPI plugin that is no longer supported. Recorded
    when the NPAPI removal infobar is shown for a plugin which is no longer
    supported.
  </summary>
</histogram>

<histogram name="Plugin.NpapiRemovalInfobar.RemovedSoon.PluginGroup"
    enum="PluginGroup">
  <obsolete>
    Deprecated due to NPAPI removal.
  </obsolete>
  <owner>wfh@chromium.org</owner>
  <summary>
    The plugin group of an NPAPI plugin that will be unsupported soon. Recorded
    when the NPAPI removal infobar is shown after an NPAPI plugin first loads to
    warn the user that NPAPI support for this plugin will be removed soon.
  </summary>
</histogram>

<histogram name="Plugin.NPAPIStatus" enum="NPAPIPluginStatus">
  <obsolete>
    Deprecated due to NPAPI removal.
  </obsolete>
  <owner>wfh@chromium.org</owner>
  <summary>
    Records whether NPAPI plugins are supported by the platform, and if so,
    whether they are enabled or disabled.  Recorded once at browser startup.
  </summary>
</histogram>

<histogram name="Plugin.PowerSaver.PeripheralHeuristic"
    enum="PluginPowerSaverPeripheralHeuristicDecision">
  <owner>tommycli@chromium.org</owner>
  <summary>
    Record the initial decision of the Plugin Power Saver peripheral content
    heuristic. For each plugin instance, this heuristic decides whether the
    plugin instance is essential content or peripheral. All same-origin content
    is essential. Cross-origin content is peripheral if it is small and not on
    the origin whitelist.
  </summary>
</histogram>

<histogram name="Plugin.PowerSaver.PosterParamPresence"
    enum="PluginPowerSaverPosterParamPresence">
  <owner>tommycli@chromium.org</owner>
  <summary>
    Record how many plugin object tags use poster param. This is recorded once
    per plugin instance, and is currently restricted to Flash plugin instances.
  </summary>
</histogram>

<histogram name="Plugin.PowerSaver.Unthrottle"
    enum="PluginPowerSaverUnthrottleMethod">
  <owner>tommycli@chromium.org</owner>
  <summary>
    Record how many throttled plugins are unthrottled, and by what method.
  </summary>
</histogram>

<histogram name="Plugin.PpapiBrokerLoadErrorCode" units="code">
  <owner>xhwang@chromium.org</owner>
  <summary>The error code of a PPAPI broker load failure.</summary>
</histogram>

<histogram name="Plugin.PpapiBrokerLoadResult" enum="PluginLoadResult">
  <owner>xhwang@chromium.org</owner>
  <summary>The result from an attempt to load a PPAPI broker.</summary>
</histogram>

<histogram name="Plugin.PpapiBrokerLoadTime" units="ms">
  <owner>xhwang@chromium.org</owner>
  <summary>The time spent to load a PPAPI broker.</summary>
</histogram>

<histogram name="Plugin.PpapiPluginLoadErrorCode" units="code">
  <owner>xhwang@chromium.org</owner>
  <summary>The error code of a PPAPI plugin load failure.</summary>
</histogram>

<histogram name="Plugin.PpapiPluginLoadResult" enum="PluginLoadResult">
  <owner>xhwang@chromium.org</owner>
  <summary>The result from an attempt to load a PPAPI plugin.</summary>
</histogram>

<histogram name="Plugin.PpapiPluginLoadTime" units="ms">
  <owner>xhwang@chromium.org</owner>
  <summary>The time spent to load a PPAPI plugin.</summary>
</histogram>

<histogram name="Plugin.PpapiSyncIPCTime" units="ms">
  <owner>gab@chromium.org</owner>
  <summary>
    The time it took to complete a synchronous IPC made from the PPAPI process.
  </summary>
</histogram>

<histogram name="Plugin.SyncMessageTime" units="ms">
  <obsolete>
    Deprecated due to NPAPI removal.
  </obsolete>
  <owner>gab@chromium.org</owner>
  <summary>
    Roundtrip times for synchronous IPC calls from the renderer to NPAPI plugin
    processes.
  </summary>
</histogram>

<histogram name="PluginFinder.BuiltInPluginList.ErrorCode"
    enum="PluginListError">
  <owner>bauerb@chromium.org</owner>
  <summary>
    Error codes when parsing the built-in plugin list. Logged when the
    PluginFinder singleton is created.
  </summary>
</histogram>

<histogram name="Power.BacklightLevelOnAC" units="%">
  <owner>derat@chromium.org</owner>
  <summary>
    The level of the backlight as a percentage when the user is on AC. Sampled
    every 30 seconds.
  </summary>
</histogram>

<histogram name="Power.BacklightLevelOnBattery" units="%">
  <owner>derat@chromium.org</owner>
  <summary>
    The level of the backlight as a percentage when the user is on battery.
    Sampled every 30 seconds.
  </summary>
</histogram>

<histogram name="Power.BatteryChargeHealth" units="%">
  <owner>derat@chromium.org</owner>
  <summary>
    Chrome OS battery charge health percentage.  Sampled once when device starts
    charging.
  </summary>
</histogram>

<histogram name="Power.BatteryDischargePercentPerHour" units="%">
  <owner>jeremy@chromium.org</owner>
  <summary>
        The percentage of battery capacity used per hour relative to a full
    battery. Reported once when the power adaptor is plugged back in after the
    system is on battery power for more than 30 minutes.  If at any point the
    system is suspended or all Chrome renderers are closed the measurement is
    not recorded. Anytime the user unplugs the power adaptor, a new measurement
    will begin being recorded. Collection of this histogram only starts after 30
    minutes of uptime at which point the clock starts (assuming the user is on
    battery power at that point).  The system will need to remain unplugged for
    at least another 30 minutes in order for any measurement to be recorded.
    Values are normalized to a percent per hour scale. This measurement is tied
    tightly to hardware model/OS and is not comparable across different hardware
    configurations.
  </summary>
</histogram>

<histogram name="Power.BatteryDischargeRate" units="mW">
  <owner>derat@chromium.org</owner>
  <summary>
    Chrome OS battery discharge rate in mW sampled every 30 seconds while the
    device runs on battery.
  </summary>
</histogram>

<histogram name="Power.BatteryDischargeRate_15" units="%">
  <owner>jeremy@chromium.org</owner>
  <summary>
        The percent of depleted battery capacity relative to a full battery over
    the first 15 minutes after battery power collection information starts.
    Collection of this histogram only starts after 30 minutes of uptime at which
    point the clock starts (assuming the user is on battery power at that
    point).  The system will need to remain unplugged for at least another 15
    minutes in order for any measurement to be recorded. Values are normalized
    to a percent per hour scale. This measurement is tied tightly to hardware
    model/OS and is not comparable across different hardware configurations.
  </summary>
</histogram>

<histogram name="Power.BatteryDischargeRate_30" units="%">
  <owner>jeremy@chromium.org</owner>
  <summary>
        The percent of depleted battery capacity relative to a full battery over
    the first 30 minutes after battery power collection information starts.
    Collection of this histogram only starts after 30 minutes of uptime at which
    point the clock starts (assuming the user is on battery power at that
    point).  The system will need to remain unplugged for at least another 30
    minutes in order for any measurement to be recorded. Values are normalized
    to a percent per hour scale. This measurement is tied tightly to hardware
    model/OS and is not comparable across different hardware configurations.
  </summary>
</histogram>

<histogram name="Power.BatteryDischargeRate_5" units="%">
  <owner>jeremy@chromium.org</owner>
  <summary>
        The percent of depleted battery capacity relative to a full battery over
    the first 5 minutes after battery power collection information starts.
    Collection of this histogram only starts after 30 minutes of uptime at which
    point the clock starts (assuming the user is on battery power at that
    point).  The system will need to remain unplugged for at least another 5
    minutes in order for any measurement to be recorded. Values are normalized
    to a percent per hour scale. This measurement is tied tightly to hardware
    model/OS and is not comparable across different hardware configurations.
  </summary>
</histogram>

<histogram name="Power.BatteryDischargeRateWhileSuspended" units="mW">
  <owner>derat@chromium.org</owner>
  <summary>
    Chrome OS battery discharge rate in mW while the system was suspended,
    sampled at resume. Only reported if the system was on battery power both
    before suspending and after resuming, if the energy level didn't increase
    while suspended (which would indicate that an AC adapter was connected), and
    if the system was suspended for at least a minute.
  </summary>
</histogram>

<histogram name="Power.BatteryInfoSample" enum="BatteryInfoSampleResult">
  <owner>derat@chromium.org</owner>
  <summary>
    Counts the number of times we have read the battery status from sysfs and if
    it gave us sensible values.
  </summary>
</histogram>

<histogram name="Power.BatteryRemainingAtEndOfSessionOnAC" units="%">
  <owner>derat@chromium.org</owner>
  <summary>
    Chrome OS remaining battery charge as percent of the maximum battery charge,
    sampled at the end of a user session when the device is on AC.
  </summary>
</histogram>

<histogram name="Power.BatteryRemainingAtEndOfSessionOnBattery" units="%">
  <owner>derat@chromium.org</owner>
  <summary>
    Chrome OS remaining battery charge as percent of the maximum battery charge,
    sampled at the end of a user session when the device is on battery.
  </summary>
</histogram>

<histogram name="Power.BatteryRemainingAtStartOfSessionOnAC" units="%">
  <owner>derat@chromium.org</owner>
  <summary>
    Chrome OS remaining battery charge as percent of the maximum battery charge,
    sampled at the start of a user session when the device is on AC.
  </summary>
</histogram>

<histogram name="Power.BatteryRemainingAtStartOfSessionOnBattery" units="%">
  <owner>derat@chromium.org</owner>
  <summary>
    Chrome OS remaining battery charge as percent of the maximum battery charge,
    sampled at the start of a user session when the device is on battery.
  </summary>
</histogram>

<histogram name="Power.BatteryRemainingCharge" units="%">
  <obsolete>
    Deprecated as of 03/2012, no longer being generated by powerd.
  </obsolete>
  <owner>derat@chromium.org</owner>
  <summary>
    Chrome OS remaining battery charge as percent of the maximum battery charge
    sampled when the device runs on battery.
  </summary>
</histogram>

<histogram name="Power.BatteryRemainingWhenChargeStarts" units="%">
  <owner>derat@chromium.org</owner>
  <summary>
    Chrome OS remaining battery charge as percent of the maximum battery charge,
    sampled when charging starts.
  </summary>
</histogram>

<histogram name="Power.BatteryTimeToEmpty" units="minutes">
  <obsolete>
    Deprecated as of 03/2012, no longer being generated by powerd.
  </obsolete>
  <owner>derat@chromium.org</owner>
  <summary>
    Chrome OS remaining time to empty battery in minutes sampled when the device
    runs on battery.
  </summary>
</histogram>

<histogram name="Power.BitfixChunks">
  <owner>dianders@chromium.org</owner>
  <summary>
    Chrome OS (Snow RO firmware 2695.90.0 only) number of 8K chunks that were
    fixed (memory corruption corrected) for each suspend/resume cycle.  Expect 0
    around 97% of the time and a non-zero value around 3% of the time.
  </summary>
</histogram>

<histogram name="Power.BitfixFixes">
  <owner>dianders@chromium.org</owner>
  <summary>
    Chrome OS (Snow RO firmware 2695.90.0 only) number of 4-byte words that were
    fixed (memory corruption corrected) for each suspend/resume cycle.  Expect 0
    around 97% of the time and a non-zero value around 3% of the time.  Would be
    exactly equal to Power.BitfixChunks if there were only one corrupted word in
    each chunk but is sometimes several times higher.
  </summary>
</histogram>

<histogram name="Power.BrightnessAdjustOnAC" enum="PowerBrightnessAdjust">
  <obsolete>
    Deprecated as of 5/2013. See Accel_BrightnessDown_F6 and
    Accel_BrightnessUp_F7 user actions instead.
  </obsolete>
  <owner>derat@chromium.org</owner>
  <summary>
    Number of times the user has adjusted brightness up and down while running
    on battery power.
  </summary>
</histogram>

<histogram name="Power.BrightnessAdjustOnBattery" enum="PowerBrightnessAdjust">
  <obsolete>
    Deprecated as of 5/2013. See Accel_BrightnessDown_F6 and
    Accel_BrightnessUp_F7 user actions instead.
  </obsolete>
  <owner>derat@chromium.org</owner>
  <summary>
    Number of times the user has adjusted brightness up and down while running
    on AC power.
  </summary>
</histogram>

<histogram name="Power.ChargerType" enum="PowerChargerType">
  <obsolete>
    Deprecated 11/2014 in issue 427057.
  </obsolete>
  <owner>derat@chromium.org</owner>
  <summary>
    External power supply type such as MAINS_CHARGER, USB_CHARGER,
    UNCONFIRMED_SPRING_CHARGER, SAFE_SPRING_CHARGER. A sample is reported each
    time a charger is connected to the device.
  </summary>
</histogram>

<histogram name="Power.DarkResumeWakeDurationMs" units="ms">
  <owner>chirantan@chromium.org</owner>
  <summary>
    The amount of time a system spent awake every time it woke up in dark
    resume.
  </summary>
</histogram>

<histogram name="Power.DarkResumeWakeDurationMs.Other" units="ms">
  <owner>chirantan@chromium.org</owner>
  <owner>samueltan@chromium.org</owner>
  <summary>
    The amount of time a system spent awake every time it woke up in dark resume
    triggered by an unknown or unsupported wake trigger.
  </summary>
</histogram>

<histogram name="Power.DarkResumeWakeDurationMs.WiFi.Disconnect" units="ms">
  <owner>chirantan@chromium.org</owner>
  <owner>samueltan@chromium.org</owner>
  <summary>
    The amount of time a system spent awake every time it woke up in dark resume
    triggered by a WiFi disconnect.
  </summary>
</histogram>

<histogram name="Power.DarkResumeWakeDurationMs.WiFi.Pattern" units="ms">
  <owner>chirantan@chromium.org</owner>
  <owner>samueltan@chromium.org</owner>
  <summary>
    The amount of time a system spent awake every time it woke up in dark resume
    triggered by a WiFi packet pattern match.
  </summary>
</histogram>

<histogram name="Power.DarkResumeWakeDurationMs.WiFi.SSID" units="ms">
  <owner>chirantan@chromium.org</owner>
  <owner>samueltan@chromium.org</owner>
  <summary>
    The amount of time a system spent awake every time it woke up in dark resume
    triggered by a net detect SSID match.
  </summary>
</histogram>

<histogram name="Power.DarkResumeWakeupsPerHour">
  <owner>chirantan@chromium.org</owner>
  <summary>
    The number of times a system woke up in dark resume in an hour.  Note that
    this value is scaled up or down to an hour based on the amount of time the
    system spent in suspend.  So if the system suspended for 20 minutes and woke
    up 3 times, it would report a value of 9.
  </summary>
</histogram>

<histogram name="Power.ExternalBrightnessReadResult"
    enum="ExternalDisplayReceiveResult">
  <owner>derat@chromium.org</owner>
  <summary>
    The result of attempting to read an external display's brightness on Chrome
    OS. A read attempt is made after successfully requesting the brightness (see
    Power.ExternalBrightnessRequestResult).
  </summary>
</histogram>

<histogram name="Power.ExternalBrightnessRequestResult"
    enum="ExternalDisplaySendResult">
  <owner>derat@chromium.org</owner>
  <summary>
    The result of requesting an external display's brightness on Chrome OS. A
    request is sent when the user presses a brightness key and the current
    brightness is not already cached. A successful request is followed shortly
    thereafter by a read attempt (see Power.ExternalBrightnessReadResult).
  </summary>
</histogram>

<histogram name="Power.ExternalBrightnessWriteResult"
    enum="ExternalDisplaySendResult">
  <owner>derat@chromium.org</owner>
  <summary>
    The result of attempting to change an external display's brightness on
    Chrome OS. A request is sent when the user presses a brightness key and the
    current brightness is either already cached or successfully loaded.
  </summary>
</histogram>

<histogram name="Power.ExternalDisplayOpenResult"
    enum="ExternalDisplayOpenResult">
  <owner>derat@chromium.org</owner>
  <summary>
    The result of attempting to open an I2C device to control an external
    display's brightness on Chrome OS. An attempt is made when a display is
    connected to a device that lacks an internal display.
  </summary>
</histogram>

<histogram name="Power.FirmwareResumeTimeOnAC" units="ms">
  <owner>snanda@chromium.org</owner>
  <summary>
    The time that the firmware took to resume the Chrome OS device from
    suspend-to-RAM state when running on AC at pre-suspend time.
  </summary>
</histogram>

<histogram name="Power.FirmwareResumeTimeOnBattery" units="ms">
  <owner>snanda@chromium.org</owner>
  <summary>
    The time that the firmware took to resume the Chrome OS device from
    suspend-to-RAM state when running on battery at pre-suspend time.
  </summary>
</histogram>

<histogram name="Power.IdleTimeAfterDimOnAC" units="ms">
  <owner>derat@chromium.org</owner>
  <summary>
    Chrome OS user idle time since the screen dimmed sampled when the user
    becomes active again if the device runs on AC.
  </summary>
</histogram>

<histogram name="Power.IdleTimeAfterDimOnBattery" units="ms">
  <owner>derat@chromium.org</owner>
  <summary>
    Chrome OS user idle time since the screen dimmed sampled when the user
    becomes active again if the device runs on battery.
  </summary>
</histogram>

<histogram name="Power.IdleTimeAfterScreenOffOnAC" units="ms">
  <owner>derat@chromium.org</owner>
  <summary>
    Chrome OS user idle time since the screen turned off sampled when the user
    becomes active again if the device runs on AC.
  </summary>
</histogram>

<histogram name="Power.IdleTimeAfterScreenOffOnBattery" units="ms">
  <owner>derat@chromium.org</owner>
  <summary>
    Chrome OS user idle time since the screen turned off sampled when the user
    becomes active again if the device runs on battery.
  </summary>
</histogram>

<histogram name="Power.IdleTimeOnAC" units="ms">
  <owner>derat@chromium.org</owner>
  <summary>
    Chrome OS user idle time sampled when the user becomes active again if the
    device runs on AC.
  </summary>
</histogram>

<histogram name="Power.IdleTimeOnBattery" units="ms">
  <owner>derat@chromium.org</owner>
  <summary>
    Chrome OS user idle time sampled when the user becomes active again if the
    device runs on battery.
  </summary>
</histogram>

<histogram name="Power.KernelResumeTimeOnAC" units="ms">
  <owner>snanda@chromium.org</owner>
  <summary>
    The time that the kernel took to resume the Chrome OS device from
    suspend-to-RAM state when running on AC at pre-suspend time.
  </summary>
</histogram>

<histogram name="Power.KernelResumeTimeOnBattery" units="ms">
  <owner>snanda@chromium.org</owner>
  <summary>
    The time that the kernel took to resume the Chrome OS device from
    suspend-to-RAM state when running on battery at pre-suspend time.
  </summary>
</histogram>

<histogram name="Power.KernelSuspendTimeOnAC" units="ms">
  <owner>snanda@chromium.org</owner>
  <summary>
    The time that the kernel took to suspend-to-RAM the Chrome OS device when
    running on AC.
  </summary>
</histogram>

<histogram name="Power.KernelSuspendTimeOnBattery" units="ms">
  <owner>snanda@chromium.org</owner>
  <summary>
    The time that the kernel took to suspend-to-RAM the Chrome OS device when
    running on battery.
  </summary>
</histogram>

<histogram name="Power.KeyboardBacklightLevel" units="%">
  <owner>derat@chromium.org</owner>
  <summary>
    The level of the keyboard backlight as a percentage. Sampled every 30
    seconds.
  </summary>
</histogram>

<histogram name="Power.LengthOfSession" units="seconds">
  <owner>derat@chromium.org</owner>
  <summary>
    The length of time, in seconds, that a user spent in a single session.
    Values for this metric are clamped to 12 hours, so the last bucket should be
    considered to be including all metrics above 12 hours.
  </summary>
</histogram>

<histogram name="Power.MilliConsumptionPerHourIosOnActive">
  <obsolete>
    Deprecated 04/2016 as doesn't have data nor owner.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The average power consumption, measured in milli-units per hour, when sync
    invalidator listens to on_application_active events. Values for this metric
    are per session, i.e. from battery level at application entering foreground
    to returning to background, and normalized to an hourly average consumption.
    This is an iOS only measurement. Due to how iOS reports battery levels, it
    is likely to see many readings of 0.
  </summary>
</histogram>

<histogram name="Power.MilliConsumptionPerHourOthers">
  <obsolete>
    Deprecated 04/2016 as doesn't have data nor owner.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The average power consumption, measured in milli-units per hour, for other
    sync invalidator methods. Values for this metric are per session, i.e. from
    battery level at application entering foreground to returning to background,
    and normalized to an hourly average consumption. This is an iOS only
    measurement. Due to how iOS reports battery levels, it is likely to see many
    readings of 0.
  </summary>
</histogram>

<histogram name="Power.MilliConsumptionPerHourP2P">
  <obsolete>
    Deprecated 04/2016 as doesn't have data nor owner.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The average power consumption, measured in milli-units per hour, when sync
    invalidator uses peer-to-peer notifications. Values for this metric are per
    session, i.e. from battery level at application entering foreground to
    returning to background, and normalized to an hourly average consumption.
    This is an iOS only measurement. Due to how iOS reports battery levels, it
    is likely to see many readings of 0.
  </summary>
</histogram>

<histogram name="Power.MilliConsumptionPerHourServer">
  <obsolete>
    Deprecated 04/2016 as doesn't have data nor owner.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The average power consumption, measured in milli-units per hour, when sync
    invalidator uses server-based non-blocking invalidator. Values for this
    metric are per session, i.e. from battery level at application entering
    foreground to returning to background, and normalized to an hourly average
    consumption. This is an iOS only measurement. Due to how iOS reports battery
    levels, it is likely to see many readings of 0.
  </summary>
</histogram>

<histogram name="Power.NumberOfAlsAdjustmentsPerSession">
  <owner>derat@chromium.org</owner>
  <summary>
    The number of times that the Automatic Light Sensor (ALS) adjusted the
    brightness during a session.  Values for this metric are clamped to 10k
    count, so the last bucket should be considered to be including all metrics
    above 10k.
  </summary>
</histogram>

<histogram name="Power.NumberOfSessionsPerCharge">
  <owner>derat@chromium.org</owner>
  <summary>
    The number of user sessions that occured since the last time that the device
    was charged. Values for this metric are clamped at 10k, so the last bucket
    should be considered to include all metrics about 10k.
  </summary>
</histogram>

<histogram name="Power.PowerButtonAcknowledgmentDelay" units="ms">
  <owner>derat@chromium.org</owner>
  <summary>
    The amount of time between the user pressing the power button and Chrome
    acknowledging the button-down event on Chrome OS. Values for this metric are
    capped to two seconds.
  </summary>
</histogram>

<histogram name="Power.PowerButtonDownTime" units="ms">
  <owner>derat@chromium.org</owner>
  <summary>
    The amount of time between the user pressing the power button and releasing
    it on Chrome OS.
  </summary>
</histogram>

<histogram name="Power.RetrySuspendCount">
  <obsolete>
    Deprecated Feb 2014 by Power.SuspendAttemptsBeforeCancel and
    Power.SuspendAttemptsBeforeSuccess.
  </obsolete>
  <owner>derat@chromium.org</owner>
  <summary>
    The number of times Chrome OS retried suspend due to previous failure.
  </summary>
</histogram>

<histogram name="Power.ShutdownReason" enum="ShutdownReason">
  <owner>derat@chromium.org</owner>
  <summary>
    The reason for the Chrome OS power manager shutting down or rebooting the
    system.
  </summary>
</histogram>

<histogram name="Power.SuspendAttempt" enum="SuspendAttempt">
  <owner>derat@chromium.org</owner>
  <owner>snanda@chromium.org</owner>
  <summary>
    The number of suspend attempts on Chrome OS. Samples are reported before
    each attempt, so this histogram may include cases where the system crashed
    instead of suspending.
  </summary>
</histogram>

<histogram name="Power.SuspendAttemptsBeforeCancel">
  <owner>derat@chromium.org</owner>
  <owner>snanda@chromium.org</owner>
  <summary>
    The number of suspend attempts performed for a single suspend request (e.g.
    triggered by the lid being closed) that was eventually canceled on Chrome
    OS. This also includes requests that were canceled due to the system
    eventually shutting down due to repeated suspend failures.
  </summary>
</histogram>

<histogram name="Power.SuspendAttemptsBeforeSuccess">
  <owner>derat@chromium.org</owner>
  <owner>snanda@chromium.org</owner>
  <summary>
    The number of suspend attempts performed for a single suspend request (e.g.
    triggered by the lid being closed) that eventually succeeded on Chrome OS.
    This includes the successful attempt.
  </summary>
</histogram>

<histogram name="Power.SuspendResult" enum="SuspendResult">
  <owner>derat@chromium.org</owner>
  <owner>snanda@chromium.org</owner>
  <summary>
    The results of suspend attempts on Chrome OS. Samples are reported after
    each attempt.
  </summary>
</histogram>

<histogram name="Power.SuspendStatus" enum="SuspendStatus">
  <obsolete>
    Deprecated Jan 2014 by Power.SuspendAttempt and Power.SuspendResult.
  </obsolete>
  <owner>derat@chromium.org</owner>
  <summary>Chrome OS suspend status.</summary>
</histogram>

<histogram name="Power.ThermalAbortedFanTurnOn" units="%">
  <obsolete>
    No longer sent.
  </obsolete>
  <owner>derat@chromium.org</owner>
  <summary>
    The percentage of aborted fan attempts out of total fan attempts per
    session, where an abort is due to hysteresis.  This value is computed from
    boot and sent when powerd starts and then every 15 minutes afterwards.
  </summary>
</histogram>

<histogram name="Power.ThermalMultipleFanTurnOn" units="%">
  <obsolete>
    No longer sent.
  </obsolete>
  <owner>derat@chromium.org</owner>
  <summary>
    The percentage of fan trip point passes that are more than one trip point.
    This value is computed from boot and sent when powerd starts and then every
    15 minutes afterwards.
  </summary>
</histogram>

<histogram name="Power.TimeInSuspendAtBoot" units="minutes">
  <owner>derat@chromium.org</owner>
  <owner>snanda@chromium.org</owner>
  <summary>
    Chrome OS time in minutes spent in suspend-to-RAM mode sampled at boot
    (i.e., the device most likely ran out of battery while in suspend).
  </summary>
</histogram>

<histogram name="Power.TimeInSuspendAtResume" units="minutes">
  <owner>derat@chromium.org</owner>
  <owner>snanda@chromium.org</owner>
  <summary>
    Chrome OS time in minutes spent in suspend-to-RAM mode sampled at resume.
  </summary>
</histogram>

<histogram name="Power.UserBrightnessAdjustmentsPerSessionOnAC">
  <owner>derat@chromium.org</owner>
  <summary>
    The number of times that the user adjusted the brightness during a session
    when on AC. Values for this metric are clamped to 10k count, so the last
    bucket should be considered to be including all metrics above 10k.
  </summary>
</histogram>

<histogram name="Power.UserBrightnessAdjustmentsPerSessionOnBattery">
  <owner>derat@chromium.org</owner>
  <summary>
    The number of times that the user adjusted the brightness during a session
    when on battery. Values for this metric are clamped to 10k count, so the
    last bucket should be considered to be including all metrics above 10k.
  </summary>
</histogram>

<histogram name="Precache.DownloadedNonPrecache" units="bytes">
  <owner>bengr@chromium.org</owner>
  <summary>
    The number of bytes that were downloaded over the network for HTTP/HTTPS
    fetches that were not motivated by precaching. Logged per-request.
  </summary>
</histogram>

<histogram name="Precache.DownloadedPrecacheMotivated" units="bytes">
  <owner>bengr@chromium.org</owner>
  <summary>
    The number of bytes that were downloaded because of precaching. Logged
    per-request.
  </summary>
</histogram>

<histogram name="Precache.Fetch.FailureReasons">
  <owner>twifkak@chromium.org</owner>
  <owner>bengr@chromium.org</owner>
  <summary>
    A bit vector of reasons why the precache fetch failed to start. Bit values
    are documented in the FailureReason Java enum.
  </summary>
</histogram>

<histogram name="Precache.Fetch.PercentCompleted" units="%">
  <owner>twifkak@chromium.org</owner>
  <owner>bengr@chromium.org</owner>
  <summary>
    The percent of manifests for which all resources have been downloaded.
    Logged per prefetch run.
  </summary>
</histogram>

<histogram name="Precache.Fetch.ResponseBytes" units="bytes">
  <obsolete>
    Deprecated July 29 2015.
  </obsolete>
  <owner>twifkak@chromium.org</owner>
  <owner>bengr@chromium.org</owner>
  <summary>
    The total number of response bytes received from all prefetch requests,
    including config, manifests, and resources. Logged per prefetch run.
  </summary>
</histogram>

<histogram name="Precache.Fetch.ResponseBytes.Network" units="bytes">
  <owner>twifkak@chromium.org</owner>
  <owner>bengr@chromium.org</owner>
  <summary>
    The total number of response bytes received over the network from all
    prefetch requests, including config, manifests, and resources. Logged per
    prefetch run.
  </summary>
</histogram>

<histogram name="Precache.Fetch.ResponseBytes.Total" units="bytes">
  <owner>twifkak@chromium.org</owner>
  <owner>bengr@chromium.org</owner>
  <summary>
    The total number of response bytes contained in all prefetch requests,
    including config, manifests, and resources. Logged per prefetch run.
  </summary>
</histogram>

<histogram name="Precache.Fetch.TimeToComplete" units="ms">
  <owner>twifkak@chromium.org</owner>
  <owner>bengr@chromium.org</owner>
  <summary>
    The time, in milliseconds, to complete a prefetch run. Only applies to
    non-cancelled runs (those for which PercentCompleted is 100).
  </summary>
</histogram>

<histogram name="Precache.Latency.NonPrefetch" units="ms">
  <owner>twifkak@chromium.org</owner>
  <owner>bengr@chromium.org</owner>
  <summary>
    The latency for requests that were not made during precaching. Logged
    per-request.
  </summary>
</histogram>

<histogram name="Precache.Latency.NonPrefetch.NonTopHosts" units="ms">
  <owner>twifkak@chromium.org</owner>
  <owner>bengr@chromium.org</owner>
  <summary>
    Like Precache.Latency.NonPrefetch, but limited to requests with a referer
    not in the user's top visited hosts. See History.TopHostsVisitsByRank for
    details on the top hosts computation.
  </summary>
</histogram>

<histogram name="Precache.Latency.NonPrefetch.TopHosts" units="ms">
  <owner>twifkak@chromium.org</owner>
  <owner>bengr@chromium.org</owner>
  <summary>
    Like Precache.Latency.NonPrefetch, but limited to requests with a referer in
    the user's top visited hosts. See History.TopHostsVisitsByRank for details
    on the top hosts computation.
  </summary>
</histogram>

<histogram name="Precache.Latency.Prefetch" units="ms">
  <owner>twifkak@chromium.org</owner>
  <owner>bengr@chromium.org</owner>
  <summary>
    The latency for requests that were made during precaching. Logged
    per-request.
  </summary>
</histogram>

<histogram name="Precache.Saved" units="bytes">
  <owner>bengr@chromium.org</owner>
  <summary>
    The number of bytes during user browsing that were served from the cache,
    but would have been downloaded over a network if precaching was disabled.
    Logged per-request.
  </summary>
</histogram>

<histogram name="PrefService.CreateProfilePrefsTime" units="ms">
  <owner>rkaplow@chromium.org</owner>
  <summary>The amount of time that elapsed during CreateProfilePrefs.</summary>
</histogram>

<histogram name="PreloadScanner.Counts" units="preloads">
  <owner>csharrison@chromium.org</owner>
  <summary>The number of preloads generated by the preload scanner.</summary>
</histogram>

<histogram name="PreloadScanner.Counts.Miss" units="preloads">
  <owner>csharrison@chromium.org</owner>
  <summary>
    The number of unused preloads generated by the preload scanner. Note that
    some link rel preloads are not referenced until after this point, so they
    will be falsely marked as preload misses. These will show up in the Raw
    bucket.
  </summary>
</histogram>

<histogram name="PreloadScanner.DocumentWrite.ExecutionTime.Failure" units="ms">
  <owner>csharrison@chromium.org</owner>
  <summary>
    Time spent executing a script tag in the blink preload scanner, for the
    purpose of preloading scripts that will be fetched via a call to
    document.write. The execution failed to generate a preload request.
  </summary>
</histogram>

<histogram name="PreloadScanner.DocumentWrite.ExecutionTime.Success" units="ms">
  <owner>csharrison@chromium.org</owner>
  <summary>
    Time spent executing a script tag in the blink preload scanner, for the
    purpose of preloading scripts that will be fetched via a call to
    document.write. The execution successfully resulted in a preload request.
  </summary>
</histogram>

<histogram name="PreloadScanner.DocumentWrite.GatedEvaluation"
    enum="DocumentWriteGatedEvaluation">
  <owner>csharrison@chromium.org</owner>
  <summary>
    The reason a particular inline script was blocked from evaluation.
  </summary>
</histogram>

<histogram name="PreloadScanner.DocumentWrite.InitializationTime" units="ms">
  <owner>csharrison@chromium.org</owner>
  <summary>
    Time spent initializing a new V8 context for the purpose of evaluating it
    and preloading document.written strings.
  </summary>
</histogram>

<histogram name="PreloadScanner.DocumentWrite.ScriptLength" units="characters">
  <owner>csharrison@chromium.org</owner>
  <summary>
    The length of the inline script that is being considered for document write
    evaluation.
  </summary>
</histogram>

<histogram name="PreloadScanner.ExternalCSS.PreloadCount" units="preloads">
  <owner>csharrison@chromium.org</owner>
  <summary>
    The number of preloads generated by scanning an external preloaded CSS
    resource. As of 4/25/2016 this only includes @import declarations.
  </summary>
</histogram>

<histogram name="Prerender.AbandonTimeUntilUsed" units="ms">
  <owner>davidben@chromium.org</owner>
  <owner>pasko@chromium.org</owner>
  <summary>
    Time from when a prerendered page is abandoned to when it is first used due
    to user navigation. If the page is swapped before begin abandoned, a zero is
    recorded.
  </summary>
</histogram>

<histogram name="Prerender.CookieSendType" enum="PrerenderCookieSendType">
  <obsolete>
    Deprecated March 13 2015.
  </obsolete>
  <owner>pasko@chromium.org</owner>
  <summary>
    Enumeration of what types of cookies were sent for a prerender.
  </summary>
</histogram>

<histogram name="Prerender.CookieStatus" enum="PrerenderCookieStatus">
  <obsolete>
    Deprecated March 13 2015.
  </obsolete>
  <owner>pasko@chromium.org</owner>
  <summary>Enumeration of what cookie actions a prerender caused.</summary>
</histogram>

<histogram name="Prerender.Event" enum="PrerenderEvent">
  <obsolete>
    Deprecated Dec 12 2014.
  </obsolete>
  <summary>
    Enumeration of what events related to prerendering have occurred.
  </summary>
</histogram>

<histogram name="Prerender.Events" enum="PrerenderHoverEvent">
  <obsolete>
    deprecated May 10 2012
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>Hover Event counts for prerendering.</summary>
</histogram>

<histogram name="Prerender.FinalStatus" enum="PrerenderFinalStatus">
  <owner>pasko@chromium.org</owner>
  <summary>
    Final status for prerender pages - either success, or why it was canceled.
  </summary>
</histogram>

<histogram name="Prerender.FinalStatusMatchComplete"
    enum="PrerenderFinalStatus">
  <obsolete>
    deprecated 2016-05-12
  </obsolete>
  <summary>
    Final status for prerender pages - either success, or why it was canceled.
    This is for the MatchComplete set of pages (including some pages that were
    not actually prerendered), to match the control group.
  </summary>
</histogram>

<histogram name="Prerender.FractionPixelsFinalAtSwapin">
  <obsolete>
    Deprecated Jan 14 2014.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    For prerenders that are swapped in, the percentage of pixels that is already
    final at swap-in time compared to when the spinner stops.
  </summary>
</histogram>

<histogram name="Prerender.HoverStats_TimeUntilClicked" units="ms">
  <obsolete>
    deprecated May 10 2012
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Duration that a user hovers a link before clicking on it.

    This is recorded for all pages loaded in a session.
  </summary>
</histogram>

<histogram name="Prerender.HoverStats_TimeUntilDiscarded" units="ms">
  <obsolete>
    deprecated May 10 2012
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Duration that the mouse pointer hovers on a link before the mouse pointer
    moves off of it.

    This is recorded for all pages loaded in a session.
  </summary>
</histogram>

<histogram name="Prerender.LocalPredictorEvent"
    enum="PrerenderLocalPredictorEvents">
  <obsolete>
    Deprecated April 2015
  </obsolete>
  <owner>pasko@chromium.org</owner>
  <summary>
    Enumeration of what events related to the local predictor have occurred
  </summary>
</histogram>

<histogram name="Prerender.LocalPredictorLoggedInLookupTime" units="ms">
  <obsolete>
    Deprecated April 2015
  </obsolete>
  <owner>pasko@chromium.org</owner>
  <summary>
    Time to perform the LoggedIn Lookup for the local predictor. This operation
    checks whether a user his likely logged into a page that we would like to
    prerender.
  </summary>
</histogram>

<histogram name="Prerender.LocalPredictorPrefetchMatchPLT" units="ms">
  <obsolete>
    Deprecated April 2015
  </obsolete>
  <owner>pasko@chromium.org</owner>
  <summary>
    The PrerenderLocalPredictor uses local browsing history and the prerender
    service to predict pages likely visited soon. Some of these URLs are
    prefetched. When such prefetched likely next pages are visited, this
    histogram records the PLT for such pages. In particular, this also happens
    if prefetch is actually disabled, allowing (by pivoting on whether or not
    prefetch is enabled) to compare the effect of prefetch on PLT.
  </summary>
</histogram>

<histogram name="Prerender.LocalPredictorServiceLookupTime" units="ms">
  <obsolete>
    Deprecated April 2015
  </obsolete>
  <owner>pasko@chromium.org</owner>
  <summary>
    Time to perform the Service Lookup for the local predictor. This operation
    queries a Google service to obtain pages to prerender, as well as whether
    prerender candidate pages are likely safe for prerendering.
  </summary>
</histogram>

<histogram name="Prerender.LocalPredictorTimeUntilUsed" units="ms">
  <obsolete>
    Deprecated April 2015
  </obsolete>
  <owner>pasko@chromium.org</owner>
  <summary>
    Time from when a prerendered page is started to when it is first used due to
    user navigation. If the page is never used, it is not included in this
    histogram.  This only refers to prerenders based on the local predictor.
  </summary>
</histogram>

<histogram name="Prerender.LocalPredictorURLLookupTime" units="ms">
  <obsolete>
    Deprecated April 2015
  </obsolete>
  <owner>pasko@chromium.org</owner>
  <summary>
    Time to perform the URL Lookup for the local predictor. This operation
    retrieves from the user's local browsing history the URLs corresponding to
    URLIDs.
  </summary>
</histogram>

<histogram name="Prerender.LocalVisitCoreTransition"
    enum="PrerenderLocalVisitCoreTransition">
  <obsolete>
    deprecated Nov 16 2012
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The transition type for each new visit as recorded in the local visits
    database.
  </summary>
</histogram>

<histogram name="Prerender.LocalVisitDatabaseSize">
  <obsolete>
    deprecated Nov 16 2012
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>Size of the local visits database (number of entries).</summary>
</histogram>

<histogram name="Prerender.LocalVisitEvents" enum="PrerenderLocalVisitEvents">
  <obsolete>
    deprecated Nov 16 2012
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Enumeration of what events related to local visits have occurred
  </summary>
</histogram>

<histogram name="Prerender.ModPagespeedHeader">
  <obsolete>
    Deprecated as of 10/2013.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Previous version of the Prerender.PagespeedHeader.* histograms.
  </summary>
</histogram>

<histogram name="Prerender.NetworkBytes.TotalForProfile" units="bytes">
  <obsolete>
    Deprecated May 13th 2014, use Prerender.NetworkBytesTotalForProfile instead.
  </obsolete>
  <owner>hajimehoshi@chromium.org</owner>
  <owner>jkarlin@chromium.org</owner>
  <owner>kouhei@chromium.org</owner>
  <summary>
    Number of bytes transferred on the network for URLRequests (not including
    HTTP/TLS/TCP/IP overhead).  Reported on event of a PrerenderContents
    deletion.  Includes prerender bytes.  Bytes are only counted when
    prerendering is enabled and not in a control group.  The sum of the
    distribution for a single user represents all of that user's network
    transfers for resource for that time period while prerendering was enabled.
  </summary>
</histogram>

<histogram name="Prerender.NetworkBytes.Used" units="bytes">
  <obsolete>
    Deprecated May 13th 2014, use Prerender.NetworkBytes.Used instead.
  </obsolete>
  <owner>hajimehoshi@chromium.org</owner>
  <owner>jkarlin@chromium.org</owner>
  <owner>kouhei@chromium.org</owner>
  <summary>
    Number of bytes transferred on the network for URLRequests (not including
    HTTP/TLS/TCP/IP overhead) for a prerender that was used (or would have been
    used).
  </summary>
</histogram>

<histogram name="Prerender.NetworkBytes.Wasted" units="bytes">
  <obsolete>
    Deprecated May 13th 2014, use Prerender.NetworkBytes.Wasted instead.
  </obsolete>
  <owner>hajimehoshi@chromium.org</owner>
  <owner>jkarlin@chromium.org</owner>
  <owner>kouhei@chromium.org</owner>
  <summary>
    Number of bytes transferred on the network for URLRequests (not including
    HTTP/TLS/TCP/IP overhead) for a prerender that was not used.
  </summary>
</histogram>

<histogram name="Prerender.NetworkBytesTotalForProfile" units="bytes">
  <owner>hajimehoshi@chromium.org</owner>
  <owner>jkarlin@chromium.org</owner>
  <owner>kouhei@chromium.org</owner>
  <summary>
    Number of bytes transferred on the network for URLRequests (not including
    HTTP/TLS/TCP/IP overhead).  Reported on event of a PrerenderContents
    deletion.  Includes prerender bytes.  Bytes are only counted when
    prerendering is enabled and not in a control group.  The sum of the
    distribution for a single user represents all of that user's network
    transfers for resource for that time period while prerendering was enabled.
  </summary>
</histogram>

<histogram name="Prerender.NetworkBytesUsed" units="bytes">
  <owner>hajimehoshi@chromium.org</owner>
  <owner>jkarlin@chromium.org</owner>
  <owner>kouhei@chromium.org</owner>
  <summary>
    Number of bytes transferred on the network for URLRequests (not including
    HTTP/TLS/TCP/IP overhead) for a prerender that was used (or would have been
    used).
  </summary>
</histogram>

<histogram name="Prerender.NetworkBytesWasted" units="bytes">
  <owner>hajimehoshi@chromium.org</owner>
  <owner>jkarlin@chromium.org</owner>
  <owner>kouhei@chromium.org</owner>
  <summary>
    Number of bytes transferred on the network for URLRequests (not including
    HTTP/TLS/TCP/IP overhead) for a prerender that was not used.
  </summary>
</histogram>

<histogram name="Prerender.OmniboxNavigationsCouldPrerender">
  <owner>pasko@chromium.org</owner>
  <summary>
    A boolean that indicates whether the Omnibox navigation being committed
    could have been prerendered by the Omnibox Prerender system. This provides
    an upper bound for Prerender.OmniboxNavigationsUsedPrerenderCount and allows
    the potential for Omnibox Prerendering coverage to be understood. If Omnibox
    Prerendering is disabled, this histogram will register a 'false' entry. The
    total count is the equivalent of the deprecated
    NetworkActionPredictor.NavigationCount histogram.
  </summary>
</histogram>

<histogram name="Prerender.OmniboxNavigationsUsedPrerenderCount">
  <owner>pasko@chromium.org</owner>
  <summary>
    The number of navigations that use a prerender initiated from the Omnibox.
    The count is incremented when the Prerendered tab is swapped in if the
    Prerender was initiated by the Omnibox, which obviously requires
    Prerendering from the Omnibox to be enabled.
  </summary>
</histogram>

<histogram name="Prerender.OmniboxPrerenderCount">
  <owner>pasko@chromium.org</owner>
  <summary>
    The number of prerenders initiated from the Omnibox. This is incremented
    when the NetworkActionPredictor suggests Prerendering as an optimal strategy
    given the text the user has entered and the Autocomplete suggestion
    currently selected. It is only incremented if Prerendering from the Omnibox
    is enabled.
  </summary>
</histogram>

<histogram name="Prerender.PagespeedHeader.ServerCounts"
    enum="PagespeedHeaderServerType">
  <owner>pasko@chromium.org</owner>
  <summary>
    The number of responses received bucketed into the range [0,4]: bucket 0 is
    the total number of responses received; bucket 1 is the number of responses
    received with an X-Mod-Pagespeed header [indicating a mod_pagespeed server];
    bucket 2 is the number of responses received with an X-Page-Speed header and
    a header value in the X-Mod-Pagespeed format (a.b.c.d-e) [indicating an
    ngx_pagespeed server]; bucket 3 is the number of responses received with an
    X-Page-Speed header and a header value in the PageSpeed Service format
    (a_b_c) [indicating a PSS server]; and bucket 4 is the number of responses
    received with an X-Page-Speed header and a header value in neither of the
    preceding formats [indicating some other server; IISpeed is the only known
    one at this stage].
  </summary>
</histogram>

<histogram name="Prerender.PagespeedHeader.VersionCounts"
    enum="PagespeedVersion">
  <owner>pasko@chromium.org</owner>
  <summary>
    The number of responses received that either have an X-Mod-Pagespeed header
    or have an X-Page-Speed header with a value in the X-Mod-Pagespeed format
    (a.b.c.d-e), bucketed into the range [1,99]: bucket 1 is for header values
    that aren't in the a.b.c.d-e format, the remaining buckets are an encoding
    of the value: 2 + 2 * (max(c, 10) - 10) + (d &gt; 1 ? 1 : 0). The rationale
    is that 'c' is incremented with each new release and 'd' is initially 0 but
    is incremented for each patch to a release.
  </summary>
</histogram>

<histogram name="Prerender.PageviewEvents" enum="PrerenderPageviewEvents">
  <obsolete>
    deprecated Nov 16 2012
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>Types of pages rendered.</summary>
</histogram>

<histogram name="Prerender.PageVisitedStatus" enum="Boolean">
  <obsolete>
    deprecated March 30, 2015
  </obsolete>
  <owner>pasko@chromium.org</owner>
  <summary>
    Indicates whether the user has ever visited (in the past) a URL for which a
    prerender is launched.
  </summary>
</histogram>

<histogram name="Prerender.PerceivedPageLoadTime_Control" units="ms">
  <obsolete>
    Deprecated 03/24/11.  Replaced by
    Prerender.PerceivedPLT_ContentPrefetchPrerenderControl.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Time from when a user navigates to a page to when it loads. Since the pages
    may start loading before the user navigates to it, this does not include any
    portion of load prior to navigation.

    This particular histogram is for all page loads for users who do not have
    prerendering enabled.
  </summary>
</histogram>

<histogram name="Prerender.PerceivedPageLoadTime_PrerenderMatchControl"
    units="ms">
  <obsolete>
    Deprecated 03/24/11.   Replaced by
    Prerender.PerceivedPLTMatched_ContentPrefetchPrerenderControl.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Time from when a user navigates to a page to when it loads. Since the pages
    may start loading before the user navigates to it, this does not include any
    portion of load prior to navigation.

    This particular histogram is only for pages that would have been prerendered
    if the user had prerender enabled.
  </summary>
</histogram>

<histogram name="Prerender.PerceivedPageLoadTime_PrerenderMatchTreatment"
    units="ms">
  <obsolete>
    Deprecated 03/24/11.   Replaced by
    Prerender.PerceivedPLTMatched_ContentPrefetchPrerender.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Time from when a user navigates to a page to when it loads. Since the pages
    may start loading before the user navigates to it, this does not include any
    portion of load prior to navigation.

    This particular histogram is for all prerendered page loads for users who
    have prerender enabled.
  </summary>
</histogram>

<histogram name="Prerender.PerceivedPageLoadTime_Treatment" units="ms">
  <obsolete>
    Deprecated 03/24/11.   Replaced by
    Prerender.PerceivedPLT_ContentPrefetchPrerender.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Time from when a user navigates to a page to when it loads. Since the pages
    may start loading before the user navigates to it, this does not include any
    portion of load prior to navigation.

    This particular histogram is for all page loads for users who have
    prerendering enabled.
  </summary>
</histogram>

<histogram name="Prerender.PerceivedPageLoadTime_WindowControl" units="ms">
  <obsolete>
    Deprecated 03/24/11.   Replaced by
    Prerender.PerceivedPLTWindowed_ContentPrefetchPrerenderControl.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Time from when a user navigates to a page to when it loads. Since the pages
    may start loading before the user navigates to it, this does not include any
    portion of load prior to navigation.

    This particular histogram is for all page loads within 30 seconds after a
    prefetch tag is seen for users who do not have prerendering enabled.
  </summary>
</histogram>

<histogram name="Prerender.PerceivedPageLoadTime_WindowTreatment" units="ms">
  <obsolete>
    Deprecated 03/24/11.   Replaced by
    Prerender.PerceivedPLTWindowed_ContentPrefetchPrerender.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Time from when a user navigates to a page to when it loads. Since the pages
    may start loading before the user navigates to it, this does not include any
    portion of load pre navigation.

    This particular histogram is for all page loads within 30 seconds after a
    prefetch tag is seen for users who have prerendering enabled.
  </summary>
</histogram>

<histogram name="Prerender.PerceivedPLT" units="ms">
  <owner>pasko@chromium.org</owner>
  <summary>
    Time from when a user navigates to a page to when it loads. Since the pages
    may start loading before the user navigates to it, this does not include any
    portion of load prior to navigation.

    This is recorded for all pages loaded in a session.
  </summary>
</histogram>

<histogram name="Prerender.PerceivedPLTFirstAfterMiss" units="ms">
  <owner>pasko@chromium.org</owner>
  <summary>
    Time from when a user navigates to a page to when it loads. Since the pages
    may start loading before the user navigates to it, this does not include any
    portion of load prior to navigation.

    This is recorded for the first page load completing immediately after a
    prerender.
  </summary>
</histogram>

<histogram name="Prerender.PerceivedPLTFirstAfterMissAnyOnly" units="ms">
  <owner>pasko@chromium.org</owner>
  <summary>
    Time from when a user navigates to a page to when it loads. Since the pages
    may start loading before the user navigates to it, this does not include any
    portion of load prior to navigation.

    &quot;FirstAfterMiss&quot; means the first pageload after a prerender miss.
    There are two types: Any, and Non-overlapping.  The latter only applies to
    page loads initiated after the prerender.  This variable records cases where
    only Any triggered.
  </summary>
</histogram>

<histogram name="Prerender.PerceivedPLTFirstAfterMissBoth" units="ms">
  <owner>pasko@chromium.org</owner>
  <summary>
    Time from when a user navigates to a page to when it loads. Since the pages
    may start loading before the user navigates to it, this does not include any
    portion of load prior to navigation.

    &quot;FirstAfterMiss&quot; means the first pageload after a prerender miss.
    There are two types: Any, and Non-overlapping.  The latter only applies to
    page loads initiated after the prerender.  This variable records cases where
    both triggered.
  </summary>
</histogram>

<histogram name="Prerender.PerceivedPLTFirstAfterMissNonOverlapping" units="ms">
  <owner>pasko@chromium.org</owner>
  <summary>
    Time from when a user navigates to a page to when it loads. Since the pages
    may start loading before the user navigates to it, this does not include any
    portion of load prior to navigation.

    This is recorded for the first page load completing immediately after a
    prerender, but which has also started after the prerender has been
    initiated.
  </summary>
</histogram>

<histogram name="Prerender.PerceivedPLTFirstAfterMissNonOverlappingOnly"
    units="ms">
  <owner>pasko@chromium.org</owner>
  <summary>
    Time from when a user navigates to a page to when it loads. Since the pages
    may start loading before the user navigates to it, this does not include any
    portion of load prior to navigation.

    &quot;FirstAfterMiss&quot; means the first pageload after a prerender miss.
    There are two types: Any, and Non-overlapping.  The latter only applies to
    page loads initiated after the prerender.  This variable records cases where
    only Non-overlapping triggered.
  </summary>
</histogram>

<histogram name="Prerender.PerceivedPLTMatched" units="ms">
  <owner>pasko@chromium.org</owner>
  <summary>
    Time from when a user navigates to a page to when it loads. Since the pages
    may start loading before the user navigates to it, this does not include any
    portion of load prior to navigation.

    This is recorded only for prerendered pages, or for pages which would have
    been prerendered in the control case.
  </summary>
</histogram>

<histogram name="Prerender.PerceivedPLTMatchedComplete" units="ms">
  <owner>pasko@chromium.org</owner>
  <summary>
    Time from when a user navigates to a page to when it loads. Since the pages
    may start loading before the user navigates to it, this does not include any
    portion of load prior to navigation.

    This is recorded only for prerendered pages, or for pages which would have
    been prerendered in the control case.

    In MatchedComplete, the prerender group also contains cancelled prerenders,
    so as to produce a perfect match of page views attributed this group in the
    prerender group with those attributed to this group in the control group.
  </summary>
</histogram>

<histogram name="Prerender.PerceivedPLTWindowed" units="ms">
  <owner>pasko@chromium.org</owner>
  <summary>
    Time from when a user navigates to a page to when it loads. Since the pages
    may start loading before the user navigates to it, this does not include any
    portion of load prior to navigation.

    This is recorded for all page loads which happen within 30 seconds after a
    prefetch tag is observed.
  </summary>
</histogram>

<histogram name="Prerender.PerceivedPLTWindowNotMatched" units="ms">
  <owner>pasko@chromium.org</owner>
  <summary>
    Time from when a user navigates to a page to when it loads. Since the pages
    may start loading before the user navigates to it, this does not include any
    portion of load prior to navigation.

    This is recorded for all page loads which happen within 30 seconds after a
    prefetch tag is observed and which do not correspond to a prerender tag.
  </summary>
</histogram>

<histogram name="Prerender.PercentLoadDoneAtSwapin">
  <owner>pasko@chromium.org</owner>
  <summary>
    For prerenders that are swapped in, the percentage of the time from load
    start until the onload event fires that has elapsed at the time of the
    swapin.
  </summary>
</histogram>

<histogram name="Prerender.PeriodicCleanupDeleteContentsTime" units="ms">
  <owner>pasko@chromium.org</owner>
  <summary>
    How long the cleanup portion of PrerenderManager::PeriodicCleanup takes, to
    measure jank.
  </summary>
</histogram>

<histogram name="Prerender.PeriodicCleanupResourceCheckTime" units="ms">
  <owner>pasko@chromium.org</owner>
  <summary>
    How long the resource check portion of PrerenderManager::PeriodicCleanup
    takes, to measure jank.
  </summary>
</histogram>

<histogram name="Prerender.PrerenderCountOf3Max">
  <owner>pasko@chromium.org</owner>
  <summary>
    After launching a prerender, how many simultanious prerenders are recorded
    as running, out of a maximum of three.
  </summary>
</histogram>

<histogram name="Prerender.PrerenderNotSwappedInPLT" units="ms">
  <owner>pasko@chromium.org</owner>
  <summary>
    For prerenders that finish loading before they are ever swapped in, their
    page load time until the onload event fires.
  </summary>
</histogram>

<histogram name="Prerender.PrerendersPerSessionCount">
  <owner>pasko@chromium.org</owner>
  <summary>
    The number of sessions that have at least X successful prerenders.
  </summary>
</histogram>

<histogram name="Prerender.RelTypesLinkAdded" enum="PrerenderRelTypes">
  <owner>pasko@chromium.org</owner>
  <summary>
    For each prerender link added to a document, records the rel types present
    on the link element.
  </summary>
</histogram>

<histogram name="Prerender.RelTypesLinkStarted" enum="PrerenderRelTypes">
  <owner>pasko@chromium.org</owner>
  <summary>
    For each prerender in a document which starts prerendering, records the rel
    types present on the link element.
  </summary>
</histogram>

<histogram name="Prerender.RendererIdleTime" units="ms">
  <obsolete>
    deprecated Nov 16 2012
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    This is the time from when a prerendered page finishes loading to when it is
    displayed, as measured by the renderer process. When a page is displayed
    before it finishes loading, no value is recorded in this histogram.
  </summary>
</histogram>

<histogram name="Prerender.RendererPerceivedPLT" units="ms">
  <obsolete>
    deprecated Nov 16 2012
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Perceived load time of a page, as measured by the renderer process. For
    non-prerendered pages, this is just BeginToFinish. For displayed prerendered
    pages, this is the time from when the prerendered page is moved into a
    TabContents until finish. &quot;Finish&quot; == after onload() and all
    resources are loaded. Note that this is 0 if the loading finishes before the
    page is moved into a TabContents.
  </summary>
</histogram>

<histogram name="Prerender.RendererPerceivedPLTMatched" units="ms">
  <obsolete>
    deprecated Nov 16 2012
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Perceived load time of a prerendered page that is displayed, as measured by
    the renderer process. This is the time from when the prerendered page is
    moved into a TabContents until finish. &quot;Finish&quot; == after onload()
    and all resources are loaded. Note that this is 0 if the loading finishes
    before the page is moved into a TabContents.
  </summary>
</histogram>

<histogram name="Prerender.RendererTimeUntilDisplay" units="ms">
  <obsolete>
    deprecated Nov 16 2012
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The time elapsed between when the prerendering of a page starts and when the
    page is displayed, as measured by the renderer process. Prerendered pages
    discarded without being displayed are excluded from this count.
  </summary>
</histogram>

<histogram name="Prerender.SchemeCancelReason"
    enum="PrerenderSchemeCancelReason">
  <owner>pasko@chromium.org</owner>
  <summary>
    The detailed reason why a prerender is canceled with
    FINAL_STATUS_UNSUPPORTED_SCHEME
  </summary>
</histogram>

<histogram name="Prerender.Sessions" enum="PrerenderMode">
  <obsolete>
    deprecated Nov 16 2012
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>Enumeration of how prerender was used per session.</summary>
</histogram>

<histogram name="Prerender.SessionStorageNamespaceMergeTime" units="ms">
  <obsolete>
    Deprecated Dec 12 2014.
  </obsolete>
  <owner>pasko@chromium.org</owner>
  <summary>Time to perform the session storage namespace merge.</summary>
</histogram>

<histogram name="Prerender.SimulatedLocalBrowsingBaselinePLT" units="ms">
  <obsolete>
    Deprecated April 2015
  </obsolete>
  <owner>pasko@chromium.org</owner>
  <summary>
    For simulated local browsing prerendering, the baseline PLT of pages without
    any prerendering for pages that would be prerendered.
  </summary>
</histogram>

<histogram name="Prerender.SimulatedLocalBrowsingPLT" units="ms">
  <obsolete>
    Deprecated April 2015
  </obsolete>
  <owner>pasko@chromium.org</owner>
  <summary>
    For simulated local browsing prerendering, the estimated PLT of pages with
    prerendering enabled for pages that would be prerendered.
  </summary>
</histogram>

<histogram name="Prerender.TabContentsDeleterSuppressedDialog"
    enum="BooleanSuppressed">
  <owner>pasko@chromium.org</owner>
  <summary>
    A boolean that indicates how often we suppress a dialog from a tab when
    swapping it with a prerender.
  </summary>
</histogram>

<histogram name="Prerender.TabContentsDeleterTimeout"
    enum="BooleanCloseTimeout">
  <owner>pasko@chromium.org</owner>
  <summary>
    A boolean that indicates how often we fail to delete an old prerendered tab
    before the timeout.
  </summary>
</histogram>

<histogram name="Prerender.TabHelperEvent" enum="PrerenderTabHelperEvents">
  <obsolete>
    Deprecated April 2015
  </obsolete>
  <owner>pasko@chromium.org</owner>
  <summary>
    Enumeration of what events related to the TabHelper class have occurred.
  </summary>
</histogram>

<histogram name="Prerender.TimeBetweenPrerenderRequests" units="ms">
  <owner>pasko@chromium.org</owner>
  <summary>Time between subsequent prerender requests.</summary>
</histogram>

<histogram name="Prerender.TimeSinceLastRecentVisit" units="ms">
  <owner>pasko@chromium.org</owner>
  <summary>
    The time elapsed between the most recent visit to a URL and when an
    attempted prerender of the same URL is cancelled with
    FINAL_STATUS_RECENTLY_VISITED.
  </summary>
</histogram>

<histogram name="Prerender.TimeToClick" units="ms">
  <obsolete>
    deprecated Nov 16 2012
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>Duration that a user hovers a link before clicking on it.</summary>
</histogram>

<histogram name="Prerender.TimeUntilUsed" units="ms">
  <obsolete>
    deprecated Nov 16 2012.  See Prerender.TimeUntilUsed2, which has a larger
    range.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Time from when a prerendered page is started to when it is first used due to
    user navigation. If the page is never used, it is not included in this
    histogram.
  </summary>
</histogram>

<histogram name="Prerender.TimeUntilUsed2" units="ms">
  <owner>pasko@chromium.org</owner>
  <summary>
    Time from when a prerendered page is started to when it is first used due to
    user navigation. If the page is never used, it is not included in this
    histogram.
  </summary>
</histogram>

<histogram name="PrinterService.PrinterServiceEvent"
    enum="PrinterServiceEventType">
  <owner>vitalybuka@chromium.org</owner>
  <summary>
    Count of events in PrinterService on ChromeOS related to USB printers.
  </summary>
</histogram>

<histogram name="PrintPreview.DestinationAction"
    enum="PrintPreviewPrintDestinationBuckets">
  <owner>vitalybuka@chromium.org</owner>
  <summary>
    Actions performed by the user when the print destination search widget is
    shown to the user.
  </summary>
</histogram>

<histogram name="PrintPreview.FontType" enum="PrintPreviewFontTypeType">
  <owner>vitalybuka@chromium.org</owner>
  <summary>
    Count of font file formats embeeded in print preview PDFs. These numbers are
    biased by what the platforms supports in terms of detection.
  </summary>
</histogram>

<histogram name="PrintPreview.GcpPromo" enum="PrintPreviewGcpPromoBuckets">
  <owner>vitalybuka@chromium.org</owner>
  <summary>
    Actions performed by the user when the Google Cloud Print add-printers
    promotion is shown to the user.
  </summary>
</histogram>

<histogram name="PrintPreview.InitialDisplayTime" units="ms">
  <owner>vitalybuka@chromium.org</owner>
  <summary>
    Time from when print preview is intiated until the intial preview is sent to
    the preview tab for rendering.
  </summary>
</histogram>

<histogram name="PrintPreview.InitializationTime" units="ms">
  <owner>vitalybuka@chromium.org</owner>
  <summary>
    Time from when print preview is intiated until the preview PDF generation is
    started.
  </summary>
</histogram>

<histogram name="PrintPreview.ManagePrinters">
  <owner>vitalybuka@chromium.org</owner>
  <summary>
    Count the number of requests received to show the manage printers dialog.
  </summary>
</histogram>

<histogram name="PrintPreview.NumberOfPrinters">
  <owner>vitalybuka@chromium.org</owner>
  <summary>
    Count the total number of printers shown in destination drop down list.
  </summary>
</histogram>

<histogram name="PrintPreview.PageCount.Initial">
  <owner>vitalybuka@chromium.org</owner>
  <summary>
    The page count of the initial print preview, a.k.a. the total number of
    pages in documents to be printed.
  </summary>
</histogram>

<histogram name="PrintPreview.PageCount.PrintToCloudPrint">
  <owner>vitalybuka@chromium.org</owner>
  <summary>
    The final page count (after page selection) of documents printed to a cloud
    printer.
  </summary>
</histogram>

<histogram name="PrintPreview.PageCount.PrintToCloudPrintWebDialog">
  <obsolete>
    No longer used as of 01/2016.
  </obsolete>
  <owner>vitalybuka@chromium.org</owner>
  <summary>
    The final page count (after page selection) of documents printed to a cloud
    printer using web dialog.
  </summary>
</histogram>

<histogram name="PrintPreview.PageCount.PrintToPDF">
  <owner>vitalybuka@chromium.org</owner>
  <summary>
    The final page count (after page selection) of documents printed to PDF.
  </summary>
</histogram>

<histogram name="PrintPreview.PageCount.PrintToPrinter">
  <owner>vitalybuka@chromium.org</owner>
  <summary>
    The final page count (after page selection) of documents printed to a
    printer.
  </summary>
</histogram>

<histogram name="PrintPreview.PageCount.PrintWithExtension">
  <owner>vitalybuka@chromium.org</owner>
  <summary>
    The final page count (after page selection) of documents printed to an
    extension printer (using printerProvider API).
  </summary>
</histogram>

<histogram name="PrintPreview.PageCount.PrintWithPrivet">
  <owner>vitalybuka@chromium.org</owner>
  <summary>
    The final page count (after page selection) of documents printed to a privet
    printer.
  </summary>
</histogram>

<histogram name="PrintPreview.PageCount.SystemDialog">
  <owner>vitalybuka@chromium.org</owner>
  <summary>
    The final page count (after page selection) of documents printed using
    system dialog.
  </summary>
</histogram>

<histogram name="PrintPreview.PreviewEvent" enum="PrintPreviewHelperEvents">
  <owner>vitalybuka@chromium.org</owner>
  <summary>Print preview events.</summary>
</histogram>

<histogram name="PrintPreview.PrintSettings" enum="PrintSettings">
  <owner>vitalybuka@chromium.org</owner>
  <summary>
    Track the popularity of print settings. (Settings when printing to PDF are
    excluded from this statistic.)
  </summary>
</histogram>

<histogram name="PrintPreview.PrintSettingsUi"
    enum="PrintPreviewPrintSettingsUiBuckets">
  <owner>alekseys@chromium.org</owner>
  <owner>vitalybuka@chromium.org</owner>
  <summary>
    Actions performed by the user interacting with print settings UI elements.
  </summary>
</histogram>

<histogram name="PrintPreview.RegeneratePreviewRequest.BeforeCancel">
  <owner>vitalybuka@chromium.org</owner>
  <summary>
    The number of times regenerate preview requests received before the user
    clicked the cancel button.
  </summary>
</histogram>

<histogram name="PrintPreview.RegeneratePreviewRequest.BeforeFirstData">
  <owner>vitalybuka@chromium.org</owner>
  <summary>
    The number of times regenerate preview requests received before the first
    preview data is availible.
  </summary>
</histogram>

<histogram name="PrintPreview.RegeneratePreviewRequest.BeforePrint">
  <owner>vitalybuka@chromium.org</owner>
  <summary>
    The number of times regenerate preview requests received before the user
    clicked the print button.
  </summary>
</histogram>

<histogram name="PrintPreview.RenderAndGeneratePDFTime" units="ms">
  <owner>vitalybuka@chromium.org</owner>
  <summary>
    Time taken to render and generate PDF for print preview. (Includes time to
    reflow the page back to normal, but not the time to reflow the page to
    prepare for printing.)
  </summary>
</histogram>

<histogram name="PrintPreview.RenderAndGeneratePDFTimeAvgPerPage" units="ms">
  <owner>vitalybuka@chromium.org</owner>
  <summary>
    Time taken to render and generate PDF for print preview divided by the
    number of pages. (Includes time to reflow the page back to normal, but not
    the time to reflow the page to prepare for printing.)
  </summary>
</histogram>

<histogram name="PrintPreview.RendererError" enum="PrintPreviewFailureType">
  <owner>vitalybuka@chromium.org</owner>
  <summary>
    Count how frequently a set of pre-defined print preview errors occur.
  </summary>
</histogram>

<histogram name="PrintPreview.RenderPDFPageTime" units="ms">
  <owner>vitalybuka@chromium.org</owner>
  <summary>Time taken to render each PDF page for print preview.</summary>
</histogram>

<histogram name="PrintPreview.RenderToPDFTime" units="ms">
  <owner>vitalybuka@chromium.org</owner>
  <summary>Time taken to render to PDF for print preview.</summary>
</histogram>

<histogram name="PrintPreview.UserAction" enum="PrintPreviewUserActionType">
  <owner>vitalybuka@chromium.org</owner>
  <summary>
    Action taken by the user in the preview tab such as print, cancel, print to
    pdf and show advanced print settings dialog.
  </summary>
</histogram>

<histogram name="Process.Sandbox.Launch.Error" units="GetLastError">
  <owner>shrikant@chromium.org</owner>
  <summary>
    Errors returned while launching sandboxed process on Windows. For decoding
    error code please refer to http://goo.gl/fJJiAv.
  </summary>
</histogram>

<histogram name="Process.Sandbox.Lowbox.Launch.Error" units="GetLastError">
  <owner>shrikant@chromium.org</owner>
  <summary>
    Errors returned while launching lowbox enabled sandboxed process on Windows.
    For decoding error code please refer to http://goo.gl/fJJiAv.
  </summary>
</histogram>

<histogram name="Profile.AddNewUser" enum="ProfileAddNewUser">
  <owner>bcwhite@chromium.org</owner>
  <owner>rlp@chromium.org</owner>
  <summary>The frequency of ways that new user profiles are added.</summary>
</histogram>

<histogram name="Profile.AndroidAccountManagementMenu"
    enum="ProfileAndroidAccountManagementMenu">
  <owner>aruslan@chromium.org</owner>
  <summary>
    Track user interactions that can be performed in the Android account
    management menu.
  </summary>
</histogram>

<histogram name="Profile.AppCount">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>The number of installed apps when a profile is opened.</summary>
</histogram>

<histogram name="Profile.AuthResult" enum="ProfileAuth">
  <owner>bcwhite@chromium.org</owner>
  <summary>
    Counts of authorization results when trying to open a locked profile from
    the User Manager.
  </summary>
</histogram>

<histogram name="Profile.Avatar" enum="ProfileAvatar">
  <owner>rlp@chromium.org</owner>
  <summary>The frequency of selection of each avatar.</summary>
</histogram>

<histogram name="Profile.BookmarksSize" units="MB">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>Size of the bookmarks database.</summary>
</histogram>

<histogram name="Profile.CookiesSize" units="MB">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>Size of the cookies database.</summary>
</histogram>

<histogram name="Profile.CreateAndInitializeProfile" units="ms">
  <owner>rkaplow@chromium.org</owner>
  <summary>Length of time to setup profile.</summary>
</histogram>

<histogram name="Profile.CreateBrowserContextServicesTime" units="ms">
  <owner>rkaplow@chromium.org</owner>
  <summary>
    The amount of time that elapsed during the CreateBrowserContextServices call
    within OnPrefsLoaded.
  </summary>
</histogram>

<histogram name="Profile.CreateProfileHelperTime" units="ms">
  <owner>rkaplow@chromium.org</owner>
  <summary>
    The amount of time that elapsed during ProfileManager::CreateProfileHelper.
    This is called when a profile is created synchronously (usually at startup).
  </summary>
</histogram>

<histogram name="Profile.CreateResult" enum="ProfileCreateResult">
  <owner>pam@chromium.org</owner>
  <owner>rlp@chromium.org</owner>
  <summary>Result (final status) when creating a new profile.</summary>
</histogram>

<histogram name="Profile.CreateTime" units="ms">
  <obsolete>
    Deprecated as of 8/2013.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Back-end time elapsed while creating a new profile. The max is 30 seconds,
    when an external timeout was applied.
  </summary>
</histogram>

<histogram name="Profile.CreateTimeCanceled" units="ms">
  <obsolete>
    Deprecated as of 8/2013.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Time elapsed before the user decided to cancel creation of a new profile.
    Since only managed-user profile creation can be canceled, this time comes
    from managed-user registration. The max is 30 seconds, when an external
    timeout was applied.
  </summary>
</histogram>

<histogram name="Profile.CreateTimeCanceledNoTimeout" units="ms">
  <owner>pam@chromium.org</owner>
  <summary>
    Time elapsed from when the handler received the message that a user clicked
    'Create' until the user decided to cancel creation of a new profile. Since
    only managed-user profile creation can be canceled, this time comes from
    managed-user registration.
  </summary>
</histogram>

<histogram name="Profile.CreateTimeNoTimeout" units="ms">
  <owner>pam@chromium.org</owner>
  <summary>
    Time elapsed from when the handler received the message that a user clicked
    'Create' until the creation either failed with a local error (see
    Profile.CreateResult), was canceled (also recorded in
    Profile.CreateTimeCanceledNoTimeout), or completed successfully.
  </summary>
</histogram>

<histogram name="Profile.Delete" enum="BooleanProfileSignedIn">
  <owner>mlerman@chromium.org</owner>
  <summary>
    This histogram tracks the deletion of the profile. This tracks when the
    cleanup actually takes place, not the UI interaction. The parameter
    indicates if the profile was signed in or not; true means the profile was
    signed in, false means the profile was not signed in.
  </summary>
</histogram>

<histogram name="Profile.DeleteProfileAction" enum="ProfileDeleteAction">
  <owner>mlerman@chromium.org</owner>
  <owner>anthonyvd@chromium.org</owner>
  <summary>
    This histogram tracks which UI screen was used to initiate and confirm the
    deletion of a profile. This does not track when the profile is actually
    deleted, which is an asynchronous process that happens later.
  </summary>
</histogram>

<histogram name="Profile.DesktopMenu" enum="ProfileDesktopMenu">
  <owner>mlerman@chromium.org</owner>
  <summary>
    Track user interactions that can be performed in the user menu and user
    manager. The origin of the action, whether the an interaction in the content
    area or some other source, is noted in the histogram suffix.
  </summary>
</histogram>

<histogram name="Profile.ExtensionSize" units="MB">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>Size of the extension cookies database.</summary>
</histogram>

<histogram name="Profile.FaviconsSize" units="MB">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>Size of the favicons database.</summary>
</histogram>

<histogram name="Profile.GetProfile" units="ms">
  <obsolete>
    Deprecated 02/2015. Profile.CreateAndInitializeProfile is more useful.
  </obsolete>
  <owner>rkaplow@chromium.org</owner>
  <summary>Length of time to retrieve profile.</summary>
</histogram>

<histogram name="Profile.GetProfileInfoPath.OutsideUserDir" enum="BooleanHit">
  <owner>anthonyvd@chromium.org</owner>
  <summary>
    Whether Profile::GetProfileInfoPath is called with a profile outside the
    user data directory. We expect this to never happen but need to verify in
    stable. This metric may be removed after M54.
  </summary>
</histogram>

<histogram name="Profile.HistorySize" units="MB">
  <owner>hajimehoshi@chromium.org</owner>
  <owner>kouhei@chromium.org</owner>
  <summary>Size of the history database.</summary>
</histogram>

<histogram name="Profile.InitProfileUserPrefs.OutsideUserDir" enum="BooleanHit">
  <owner>anthonyvd@chromium.org</owner>
  <summary>
    Whether Profile::InitProfileUserPrefs is called with a profile outside the
    user data directory. We expect this to never happen but need to verify in
    stable. This metric may be removed after M54.
  </summary>
</histogram>

<histogram name="Profile.LaunchBrowser" enum="ProfileType">
  <owner>rlp@chromium.org</owner>
  <summary>
    Number of times users launch a browser window from either a primary or
    secondary profile (i.e., each time a browser window is opened we log which
    type of profile it belongs to).
  </summary>
</histogram>

<histogram name="Profile.LockedProfilesDuration" units="minutes">
  <owner>mlerman@chromium.org</owner>
  <summary>
    How long locked profiles have been locked for. This is logged each time any
    profile is loaded. Note that this does not track the total time the profile
    was locked, but rather the span from when the profile was locked to when the
    measurement takes place.
  </summary>
</histogram>

<histogram name="Profile.NetUserCount" enum="ProfileNetUserCount">
  <owner>bcwhite@chromium.org</owner>
  <owner>rlp@chromium.org</owner>
  <summary>
    Counts of users added and deleted. Percentages are not meaningful. Please
    look at the ratio of the counts/percentages.
  </summary>
</histogram>

<histogram name="Profile.NewAvatarMenu.NotYou"
    enum="ProfileNewAvatarMenuNotYou">
  <owner>mlerman@chromium.org</owner>
  <summary>
    Tracks user interactions with the 'Not You?' bubble that users can navigate
    to from the Upgrade bubble after upgrade to the New Avatar Menu.
  </summary>
</histogram>

<histogram name="Profile.NewAvatarMenu.Signin"
    enum="ProfileNewAvatarMenuSignin">
  <owner>mlerman@chromium.org</owner>
  <summary>
    Tracks user interactions with the signin bubble that appears in the New
    Avatar Menu upon signin. This bubble appears after the user signs in using
    the Inline Signin flow.
  </summary>
</histogram>

<histogram name="Profile.NewAvatarMenu.Upgrade"
    enum="ProfileNewAvatarMenuUpgrade">
  <owner>mlerman@chromium.org</owner>
  <summary>
    Tracks user interactions with the bubble that appears for users in the new
    avatar menu after upgrade.
  </summary>
</histogram>

<histogram name="Profile.NotifyProfileCreatedTime" units="ms">
  <owner>rkaplow@chromium.org</owner>
  <summary>
    The amount of time that elapsed during the Notify() of
    NOTIFICATION_PROFILE_CREATED during ProfileImpl::DoFinalInit().
  </summary>
</histogram>

<histogram name="Profile.NumberOfAccountsPerProfile">
  <owner>mlerman@chromium.org</owner>
  <summary>
    Counts the number of Google-managed accounts linked to a profile. This may
    be counted multiple times per profile. Please review with the &quot;Show
    user counts&quot; option enabled on the dashboard.
  </summary>
</histogram>

<histogram name="Profile.NumberOfManagedProfiles">
  <owner>pam@chromium.org</owner>
  <summary>
    Counts the number of locally managed profiles on a user's machine at least
    every 24 hours while Chrome is running, among cases with at least one
    profile. Always de-dupe the results with Show User Counts.
  </summary>
</histogram>

<histogram name="Profile.NumberOfProfiles">
  <owner>bcwhite@chromium.org</owner>
  <owner>rlp@chromium.org</owner>
  <summary>
    Counts the number of profiles on a user's machine at least every 24 hours
    while Chrome is running. Always de-dupe the results with Show User Counts.
  </summary>
</histogram>

<histogram name="Profile.NumberOfProfilesAfterAddOrDelete">
  <obsolete>
    Deprecated 2013-04-09. No longer tracked. See Profile.NumberOfProfiles.
  </obsolete>
  <owner>bcwhite@chromium.org</owner>
  <owner>rlp@chromium.org</owner>
  <summary>
    Counts the number of profiles on a user's machine whenever a profile is
    added or deleted.
  </summary>
</histogram>

<histogram name="Profile.NumberOfProfilesOnStartup">
  <obsolete>
    Deprecated; replaced by Profile.NumberOfProfiles on 2013-04-09. Data are
    suspect, especially after 2012-02-24: see https://crbug.com/189213.
  </obsolete>
  <owner>bcwhite@chromium.org</owner>
  <owner>rlp@chromium.org</owner>
  <summary>
    Counts the number of profiles on a user's machine when Chrome starts up.
  </summary>
</histogram>

<histogram name="Profile.NumberOfProfilesWithAuthErrors">
  <owner>mlerman@chromium.org</owner>
  <summary>
    Counts the type GAIA authentication errors on a user's machine when Chrome
    starts up. The types of errors are broken down in Signin.AuthError.
  </summary>
</histogram>

<histogram name="Profile.NumberOfSignedInProfiles">
  <owner>bcwhite@chromium.org</owner>
  <owner>rlp@chromium.org</owner>
  <summary>
    Counts the number of signed-in profiles on a user's machine at least every
    24 hours while Chrome is running. Always de-dupe the results with Show User
    Counts.
  </summary>
</histogram>

<histogram name="Profile.NumberOfSignedInProfilesOnStartup">
  <obsolete>
    Deprecated; replaced by Profile.NumberOfSignedInProfiles on 2013-04-09.
  </obsolete>
  <owner>bcwhite@chromium.org</owner>
  <owner>rlp@chromium.org</owner>
  <summary>
    Counts the number of profiles that are signed in to Chrome when Chrome
    starts up.
  </summary>
</histogram>

<histogram name="Profile.NumberOfSignedInProfilesWithGAIAIcons">
  <owner>mlerman@chromium.org</owner>
  <summary>
    Counts the number of signed-in profiles that are using the GAIA image as the
    avatar icon. This is counted at least every 24 hours while Chrome is
    running, so always de-dupe the results with Show User Counts.
  </summary>
</histogram>

<histogram name="Profile.NumberOfSwitches">
  <owner>anthonyvd@chromium.org</owner>
  <summary>
    Counts the number of times profiles were switched in a browser session. This
    value is incremented when a profile is switched to and the result is logged
    during shutdown.
  </summary>
</histogram>

<histogram name="Profile.NumberOfUnusedProfiles">
  <owner>mlerman@chromium.org</owner>
  <summary>
    Counts the number of profiles unused within the past 28 days on a user's
    machine. This is counts at least every 24 hours while Chrome is running, so
    always de-dupe the results with Show User Counts.
  </summary>
</histogram>

<histogram name="Profile.OnLocaleReadyTime" units="ms">
  <owner>rkaplow@chromium.org</owner>
  <summary>
    The amount of time that elapsed during ProfileImpl::OnLocaleReady. This
    happens once after profile was loaded.
  </summary>
</histogram>

<histogram name="Profile.OnPrefsLoadedTime" units="ms">
  <obsolete>
    Deprecated 04/2015, and replaced by Profile.OnLocaleReadyTime.
  </obsolete>
  <owner>rkaplow@chromium.org</owner>
  <summary>
    The amount of time that elapsed during ProfileImpl::OnPrefsLoaded.
  </summary>
</histogram>

<histogram name="Profile.Opening" enum="ProfileOpen">
  <obsolete>
    Deprecated because it did not present the information clearly.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>The frequency of ways that the profiles are opened.</summary>
</histogram>

<histogram name="Profile.OpenMethod" enum="ProfileOpenMethod">
  <owner>bcwhite@chromium.org</owner>
  <owner>rlp@chromium.org</owner>
  <summary>
    The frequency with which the user opens the different profile menus or
    switches profiles. For the open statistics, this does not mean the user
    necessarily opened a profile after clicking. The switch statistics indicate
    how often and how the user switches profiles. They are provided together for
    comparison of how often the user actually switches after opening the avatar
    bubble menu.
  </summary>
</histogram>

<histogram name="Profile.PercentageOfManagedProfiles">
  <owner>pam@chromium.org</owner>
  <summary>
    Tracks the percentage (0-100) of profiles that are locally managed, recorded
    when Chrome starts up.
  </summary>
</histogram>

<histogram name="Profile.ProfileError" enum="ProfileErrorType">
  <owner>tnagel@chromium.org</owner>
  <summary>
    The error with the current user profile that caused an error dialog to be
    shown. This dialog is shown usually when there is some sort of corruption in
    the user's profile data.
  </summary>
</histogram>

<histogram name="Profile.ProfileImplDoFinalInit" units="ms">
  <owner>rkaplow@chromium.org</owner>
  <summary>
    The amount of time that elapsed during the ProfileImpl::DoFinalInit().
  </summary>
</histogram>

<histogram name="Profile.SupervisedProfileCreateError"
    enum="GoogleServiceAuthError">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The error code generated in the final step (registration step) of creating a
    new supervised profile.
  </summary>
</histogram>

<histogram name="Profile.SupervisedProfileImportError"
    enum="GoogleServiceAuthError">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The error code generated in the final step (registration step) of importing
    a supervised profile.
  </summary>
</histogram>

<histogram name="Profile.SupervisedProfileTotalCreateTime" units="ms">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Time elapsed from when the handler received the message that a user clicked
    'Create' to create a new supervised user profile until the registration ends
    either successfully or with a failure (both recorded in
    Profile.SupervisedProfileCreateResult).
  </summary>
</histogram>

<histogram name="Profile.SupervisedProfileTotalImportTime" units="ms">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Time elapsed from when the handler received the message that a user clicked
    'Import supervised user' until the registration ends either successfully or
    with a failure (both recorded in Profile.SupervisedProfileImportResult).
  </summary>
</histogram>

<histogram name="Profile.SwitchGaiaPhotoSettings"
    enum="ProfileGaiaPhotoOptions">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Counts of when users switch to using their GAIA photo instead of an avatar
    icon or the opposite when they switch back to an avatar icon instead of
    their GAIA photo.
  </summary>
</histogram>

<histogram name="Profile.Sync" enum="ProfileSync">
  <obsolete>
    Deprecated because it did not present the information clearly.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>Activity of the user with regards to sync.</summary>
</histogram>

<histogram name="Profile.SyncCustomize" enum="ProfileSyncCustomize">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Number of times and ways the user customized the sync options of their
    profile. Percentages are not meaningful. To determine percentages, take the
    count of a given action over the count of number of customizations.
  </summary>
</histogram>

<histogram name="Profile.SyncSignIn" enum="ProfileType">
  <owner>rpop@google.com</owner>
  <summary>
    Number of times the user signed into sync from original or secondary
    profile.
  </summary>
</histogram>

<histogram name="Profile.ThumbnailsSize" units="MB">
  <obsolete>
    Deprecated 04/2016 as doesn't have data nor owner.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>Size of the thumbnails database.</summary>
</histogram>

<histogram name="Profile.TimeToOpenUserManager" units="ms">
  <owner>mlerman@chromium.org</owner>
  <summary>
    Time required to open the UserManager, from when it started to show until
    when its javascript started executing.
  </summary>
</histogram>

<histogram name="Profile.TopSitesSize" units="MB">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>Size of the top sites database.</summary>
</histogram>

<histogram name="Profile.TotalHistorySize" units="MB">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>Total size of all history databases.</summary>
</histogram>

<histogram name="Profile.TotalSize" units="MB">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>Total size of the profile data (excluding sub-folders).</summary>
</histogram>

<histogram name="Profile.TriggeredReset" enum="BooleanReset">
  <owner>robertshield@chromium.org</owner>
  <summary>
    Indicates whether a profile had a reset trigger that caused it to launch a
    reset flow. The presence of this trigger is recorded during profile
    creation.
  </summary>
</histogram>

<histogram name="Profile.Update" enum="ProfileType">
  <owner>rlp@chromium.org</owner>
  <summary>Times a profile name and/or avatar was updated.</summary>
</histogram>

<histogram name="Profile.UpgradeEnrollment" enum="ProfileUpgradeEnrollment">
  <obsolete>
    Deprecated 8/2014. Upgrade Promotional UI removed.
  </obsolete>
  <owner>mlerman@chromium.org</owner>
  <summary>
    The process which leads a user to enroll in New Profile Management. Also
    tracks if the user chooses to opt out, and tutorials which guide the user
    into New Profile Management.
  </summary>
</histogram>

<histogram name="Profile.ValidateMenuItemInvalidIndex.IsGuest" enum="Boolean">
  <owner>anthonyvd@chromium.org</owner>
  <summary>
    Whether the active profile is a guest profile when -validateMenuItem in the
    ProfileMenuController gets an invalid value for the current profile's index.
  </summary>
</histogram>

<histogram name="Profile.ValidateMenuItemInvalidIndex.ProfileCount">
  <owner>anthonyvd@chromium.org</owner>
  <summary>
    The count of profiles in the avatar menu when -validateMenuItem in the
    ProfileMenuController gets an invalid value for the current profile's index.
  </summary>
</histogram>

<histogram name="Profile.ValidateMenuItemInvalidIndex.Selector"
    enum="ValidateMenuItemSelectorType">
  <owner>anthonyvd@chromium.org</owner>
  <summary>
    The selector associated with the menu item when -validateMenuItem in the
    ProfileMenuController gets an invalid value for the current profile's index.
  </summary>
</histogram>

<histogram name="Profile.VisitedLinksSize" units="MB">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>Size of the visited links database.</summary>
</histogram>

<histogram name="Profile.WebDataSize" units="MB">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>Size of the web data database.</summary>
</histogram>

<histogram name="ProfileReset.SendFeedback" enum="Boolean">
  <owner>engedy@chromium.org</owner>
  <owner>vasilii@chromium.org</owner>
  <summary>
    Signifies if the user selected &quot;Send feedback&quot; checkbox in the
    Reset Profile dialog.
  </summary>
</histogram>

<histogram name="Protector.DefaultSearchProvider" enum="ProtectorError">
  <obsolete>
    Deprecated 8/2013. No longer tracked.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Errors that Protector detects about default search provider in Web Data.
    Reported once when Web Data is loaded.
  </summary>
</histogram>

<histogram name="Protector.Preferences" enum="ProtectorError">
  <obsolete>
    Deprecated 8/2013. No longer tracked.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Errors that Protector detects about protected settings in Preferences.
    Reported once when profile is loaded.
  </summary>
</histogram>

<histogram name="Protector.SearchProvider" enum="SearchEngine">
  <obsolete>
    Deprecated 8/2013. No longer tracked.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    When the default search provider setting is changed outside of Chrome, which
    is detected by the Protector, this histogram reports the new setting.
  </summary>
</histogram>

<histogram name="Protector.StartupSettings" enum="SessionStartupType">
  <obsolete>
    Deprecated 8/2013. No longer tracked.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    When the startup settings are changed outside of Chrome, which is detected
    by the Protector, this histogram reports the new setting.
  </summary>
</histogram>

<histogram name="PushMessaging.DeliveryStatus" enum="PushDeliveryStatus">
  <owner>johnme@google.com</owner>
  <owner>mvanouwerkerk@google.com</owner>
  <summary>
    When a Service Worker receives a push message, this records whether it was
    successful, or otherwise the type of error encountered.
  </summary>
</histogram>

<histogram name="PushMessaging.GetRegistrationStatus"
    enum="PushGetRegistrationStatus">
  <owner>johnme@google.com</owner>
  <owner>mvanouwerkerk@google.com</owner>
  <summary>
    When a webpage asks for details about its current push messaging
    registration, this records whether the request is successful, or otherwise
    the type of error encountered.
  </summary>
</histogram>

<histogram name="PushMessaging.RegistrationStatus"
    enum="PushRegistrationStatus">
  <owner>johnme@google.com</owner>
  <owner>mvanouwerkerk@google.com</owner>
  <summary>
    When a webpage registers for push messaging, this records whether the
    request is successful, or otherwise the type of error encountered.
  </summary>
</histogram>

<histogram name="PushMessaging.UnregistrationStatus"
    enum="PushUnregistrationStatus">
  <owner>johnme@google.com</owner>
  <owner>mvanouwerkerk@google.com</owner>
  <summary>
    When a webpage unregisters from push messaging, this records whether the
    request is successful, or otherwise the type of error encountered.
  </summary>
</histogram>

<histogram name="PushMessaging.UserVisibleStatus" enum="PushUserVisibleStatus">
  <owner>johnme@google.com</owner>
  <owner>mvanouwerkerk@google.com</owner>
  <summary>
    When a Service Worker receives a push message, this records whether it
    showed user-visible UX (like a notification), or whether we showed a forced
    notification on its behalf.
  </summary>
</histogram>

<histogram name="Quickoffice.csvFormattedCellCount">
  <owner>dskelton@google.com</owner>
  <summary>
    Records the number of cells that contain formatting data in the default
    worksheet when a comma separated value spreadsheet is opened.
  </summary>
</histogram>

<histogram name="Quickoffice.csvNonEmptyCellCount">
  <owner>dskelton@google.com</owner>
  <summary>
    Records the number of non-empty cells in the default worksheet when a comma
    separated value spreadsheet is opened.
  </summary>
</histogram>

<histogram name="Quickoffice.csvSheetCount">
  <owner>dskelton@google.com</owner>
  <summary>
    Records the number of worksheets when a comma separated value spreadsheet is
    opened.
  </summary>
</histogram>

<histogram name="Quickoffice.docPageCount">
  <owner>joshwoodward@google.com</owner>
  <summary>
    Records the page count when a compound binary format document is opened.
  </summary>
</histogram>

<histogram name="Quickoffice.docParagraphCount">
  <owner>joshwoodward@google.com</owner>
  <summary>
    Records the paragraph count when a compound binary format document is
    opened.
  </summary>
</histogram>

<histogram name="Quickoffice.docSectionCount">
  <owner>joshwoodward@google.com</owner>
  <summary>
    Records the section count when a compound binary format document is opened.
  </summary>
</histogram>

<histogram name="Quickoffice.docxPageCount">
  <owner>joshwoodward@google.com</owner>
  <summary>
    Records the page count when an OOXML format document is opened.
  </summary>
</histogram>

<histogram name="Quickoffice.docxParagraphCount">
  <owner>joshwoodward@google.com</owner>
  <summary>
    Records the paragraph count when an OOXML format document is opened.
  </summary>
</histogram>

<histogram name="Quickoffice.docxSectionCount">
  <owner>joshwoodward@google.com</owner>
  <summary>
    Records the section count when an OOXML format document is opened.
  </summary>
</histogram>

<histogram name="Quickoffice.ErrorTypes" enum="QuickofficeErrorTypes">
  <owner>joshwoodward@google.com</owner>
  <summary>
    Records the various different error types encountered when opening and
    reading MS Office file formats in the Quickoffice viewer. These range from
    Nacl crashes and uncaught javascript exceptions to document errors inside
    Quickoffice Web Toolkit (eg QOWT). The errors are recorded against the file
    format in which they occurred.
  </summary>
</histogram>

<histogram name="Quickoffice.FileFormat" enum="QuickofficeFileFormat">
  <owner>joshwoodward@google.com</owner>
  <summary>
    Records the various different file types supported by Quickoffice (like MS
    Word, Excel, Powerpoint files) when they opened in the browser to measure
    which file formats are most popular.
  </summary>
</histogram>

<histogram name="Quickoffice.pptMasterCount">
  <owner>joshwoodward@google.com</owner>
  <summary>
    Records the number of slide masters when a compound binary format
    presentation is opened.
  </summary>
</histogram>

<histogram name="Quickoffice.pptSlideCount">
  <owner>joshwoodward@google.com</owner>
  <summary>
    Records the slide count when a compound binary format presentation is
    opened.
  </summary>
</histogram>

<histogram name="Quickoffice.pptxMasterCount">
  <owner>joshwoodward@google.com</owner>
  <summary>
    Records the number of slide masters when an OOXML format presentation is
    opened.
  </summary>
</histogram>

<histogram name="Quickoffice.pptxSlideCount">
  <owner>joshwoodward@google.com</owner>
  <summary>
    Records the slide count when an OOXML format presentation is opened.
  </summary>
</histogram>

<histogram name="Quickoffice.xlsFormattedCellCount">
  <owner>joshwoodward@google.com</owner>
  <summary>
    Records the number of cells that contain formatting data in the default
    worksheet when a compound binary format spreadsheet is opened.
  </summary>
</histogram>

<histogram name="Quickoffice.xlsNonEmptyCellCount">
  <owner>joshwoodward@google.com</owner>
  <summary>
    Records the number of non-empty cells in the default worksheet when a
    compound binary format spreadsheet is opened.
  </summary>
</histogram>

<histogram name="Quickoffice.xlsSheetCount">
  <owner>joshwoodward@google.com</owner>
  <summary>
    Records the number of worksheets when a compound binary format spreadsheet
    is opened.
  </summary>
</histogram>

<histogram name="Quickoffice.xlsxFormattedCellCount">
  <owner>joshwoodward@google.com</owner>
  <summary>
    Records the number of cells that contain formatting data in the default
    worksheet when an OOXML format spreadsheet is opened.
  </summary>
</histogram>

<histogram name="Quickoffice.xlsxNonEmptyCellCount">
  <owner>joshwoodward@google.com</owner>
  <summary>
    Records the number of non-empty cells when an OOXML format spreadsheet is
    opened.
  </summary>
</histogram>

<histogram name="Quickoffice.xlsxSheetCount">
  <owner>joshwoodward@google.com</owner>
  <summary>
    Records the number of worksheets when an OOXML format spreadsheet is opened.
  </summary>
</histogram>

<histogram name="Quota.AvailableDiskSpace" units="MB">
  <owner>micaheln@chromium.org</owner>
  <summary>
    Amount of free disk space for the storage directory. Logged at irregular
    intervals.
  </summary>
</histogram>

<histogram name="Quota.DaysSinceLastAccess" units="days">
  <owner>michaeln@chromium.org</owner>
  <summary>
    The number of days since an origin's data was last accessed. Logged upon
    access when the time since last access is at least 24 hours.
  </summary>
</histogram>

<histogram name="Quota.DiskspaceShortage" units="MB">
  <owner>tzik@chromium.org</owner>
  <summary>
    Difference between acceptable lower limit of diskspace and actual free
    diskspace at beginning of an eviction round.
  </summary>
</histogram>

<histogram name="Quota.ErrorsOnEvictingOriginPerHour">
  <owner>tzik@chromium.org</owner>
  <summary>
    Number of errors on evicting origin by QuotaTemporaryStorageEvictor in an
    hour.
  </summary>
</histogram>

<histogram name="Quota.ErrorsOnGettingUsageAndQuotaPerHour">
  <owner>tzik@chromium.org</owner>
  <summary>
    Number of errors on getting usage and quota by QuotaTemporaryStorageEvictor
    in an hour.
  </summary>
</histogram>

<histogram name="Quota.EvictedBytesPerRound" units="MB">
  <owner>tzik@chromium.org</owner>
  <summary>
    Amount of usage used by evicted origins in an eviction round.
  </summary>
</histogram>

<histogram name="Quota.EvictedOriginAccessCount">
  <owner>calamity@chromium.org</owner>
  <summary>
    The number of times the evicted origin was accessed. Logged when the origin
    is evicted.
  </summary>
</histogram>

<histogram name="Quota.EvictedOriginsPerHour">
  <owner>tzik@chromium.org</owner>
  <summary>Number of evicted origins in an hour.</summary>
</histogram>

<histogram name="Quota.EvictedOriginTimeSinceAccess">
  <owner>calamity@chromium.org</owner>
  <summary>
    The time since the evicted origin was last accessed. Logged when the origin
    is evicted.
  </summary>
</histogram>

<histogram name="Quota.EvictionRoundsPerHour">
  <owner>tzik@chromium.org</owner>
  <summary>Number of eviction rounds in an hour.</summary>
</histogram>

<histogram name="Quota.FreeDiskSpaceForProfile" units="MB">
  <obsolete/>
  <owner>tzik@chromium.org</owner>
  <summary>Amount of free disk space for profile directory.</summary>
</histogram>

<histogram name="Quota.GlobalTemporaryPoolSize" units="MB">
  <owner>michaeln@chromium.org</owner>
  <summary>
    The size of the global temporary storage pool. Logged at irregular
    intervals.
  </summary>
</histogram>

<histogram name="Quota.GlobalUsageOfPersistentStorage" units="MB">
  <owner>tzik@chromium.org</owner>
  <summary>Global usage of persistent storage.</summary>
</histogram>

<histogram name="Quota.GlobalUsageOfTemporaryStorage" units="MB">
  <owner>tzik@chromium.org</owner>
  <summary>Global usage of temporary storage.</summary>
</histogram>

<histogram name="Quota.InitialTemporaryGlobalStorageQuota" units="MB">
  <obsolete/>
  <owner>tzik@chromium.org</owner>
  <summary>Initial quota for global temporary storage.</summary>
</histogram>

<histogram name="Quota.LRUOriginTypes" enum="QuotaOriginTypes">
  <owner>dgrogan@chromium.org</owner>
  <summary>
    Types of origins that are initially selected for eviction via LRU. Some of
    these types are exempt from eviction.
  </summary>
</histogram>

<histogram name="Quota.NumberOfEvictedOriginsPerRound">
  <owner>tzik@chromium.org</owner>
  <summary>Number of evicted origins per round.</summary>
</histogram>

<histogram name="Quota.NumberOfPersistentStorageOrigins">
  <owner>tzik@chromium.org</owner>
  <summary>Number of origins using persistent storage.</summary>
</histogram>

<histogram name="Quota.NumberOfProtectedPersistentStorageOrigins">
  <owner>tzik@chromium.org</owner>
  <summary>Number of protected origins using persistent storage.</summary>
</histogram>

<histogram name="Quota.NumberOfProtectedTemporaryStorageOrigins">
  <owner>tzik@chromium.org</owner>
  <summary>Number of protected origins using temporary storage.</summary>
</histogram>

<histogram name="Quota.NumberOfTemporaryStorageOrigins">
  <owner>tzik@chromium.org</owner>
  <summary>Number of origins using temporary storage.</summary>
</histogram>

<histogram name="Quota.NumberOfUnlimitedPersistentStorageOrigins">
  <owner>tzik@chromium.org</owner>
  <summary>Number of unlimited origins using persistent storage.</summary>
</histogram>

<histogram name="Quota.NumberOfUnlimitedTemporaryStorageOrigins">
  <owner>tzik@chromium.org</owner>
  <summary>Number of unlimited origins using temporary storage.</summary>
</histogram>

<histogram name="Quota.SkippedEvictionRoundsPerHour">
  <owner>tzik@chromium.org</owner>
  <summary>Number of skipped eviction rounds in an hour.</summary>
</histogram>

<histogram name="Quota.TimeBetweenRepeatedOriginEvictions">
  <owner>calamity@chromium.org</owner>
  <summary>
    Time since an origin was last chosen to be evicted from the storage,
    recorded each time the origin is evicted (except for the first eviction).
  </summary>
</histogram>

<histogram name="Quota.TimeDeltaOfEvictionRounds">
  <owner>tzik@chromium.org</owner>
  <summary>Time between two consecutive active eviction rounds.</summary>
</histogram>

<histogram name="Quota.TimeSpentToAEvictionRound">
  <owner>tzik@chromium.org</owner>
  <summary>Time spent to an eviction round.</summary>
</histogram>

<histogram name="Quota.TimeToInitializeGlobalQuota" units="ms">
  <owner>michaeln@chromium.org</owner>
  <summary>
    Time spent initializing the global quota. Logged when the storage
    partition's quota manager is initialized.
  </summary>
</histogram>

<histogram name="Quota.TotalDiskSpace" units="MB">
  <owner>micaheln@chromium.org</owner>
  <summary>
    Total disk space for the storage directory. Logged at irregular intervals.
  </summary>
</histogram>

<histogram name="Quota.UsageOverageOfTemporaryGlobalStorage" units="MB">
  <owner>tzik@chromium.org</owner>
  <summary>
    Overage of the temporary global storage usage at beginning of an eviction
    round.
  </summary>
</histogram>

<histogram name="Rappor.DailyEvent.IntervalType" enum="DailyEventIntervalType">
  <owner>holte@chromium.org</owner>
  <summary>Counts how often daily interval events were fired.</summary>
</histogram>

<histogram name="Rappor.DiscardReason" enum="RapporDiscardReason">
  <owner>holte@chromium.org</owner>
  <summary>
    For each Rappor log that is discarded, the reason that it was discarded.
  </summary>
</histogram>

<histogram name="Rappor.FailedUploadErrorCode" enum="NetErrorCodes">
  <owner>holte@chromium.org</owner>
  <summary>Net error codes for failed Rappor uploads.</summary>
</histogram>

<histogram name="rappor.last_daily_sample" enum="DailyEventIntervalType">
  <obsolete>
    Removed 2015/05/05.
  </obsolete>
  <owner>holte@chromium.org</owner>
  <summary>
    Rappor.DailyEvent.IntervalType reported under the wrong name.
  </summary>
</histogram>

<histogram name="Rappor.LoadCohortResult" enum="RapporLoadResultType">
  <owner>holte@chromium.org</owner>
  <summary>
    Success or errors encountered when loading Rappor cohort pref.
  </summary>
</histogram>

<histogram name="Rappor.LoadSecretResult" enum="RapporLoadResultType">
  <owner>holte@chromium.org</owner>
  <summary>
    Success or errors encountered when loading Rappor secret pref.
  </summary>
</histogram>

<histogram name="Rappor.UploadResponseCode" enum="HttpResponseCode">
  <owner>holte@chromium.org</owner>
  <summary>
    For each upload to the Rappor server, log the response received from the
    server.
  </summary>
</histogram>

<histogram name="RecoveryComponent.Event" enum="RecoveryComponentEvent">
  <owner>robertshield@chromium.org</owner>
  <summary>Log each stage of a recovery component event.</summary>
</histogram>

<histogram name="Render.Workers.MaxWorkerCountInRendererProcess">
  <owner>kinuko@chromium.org</owner>
  <summary>
    Maximum number of workers (SharedWorker or ServiceWorker) that are
    simultaneously hosted in a single renderer process. Recorded when the
    renderer process host is being destructed.
  </summary>
</histogram>

<histogram name="Renderer.AcceleratedFixedRootBackground"
    enum="AcceleratedFixedRootBackground">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Keeps track of the number of main frame scrolls with an accelerated fixed
    root background, the number of main frame scrolls with an unaccelerated
    fixed root background, and the total number of main frame scrolls.
  </summary>
</histogram>

<histogram name="Renderer.CompositedScrolling" enum="CompositedScrolling">
  <owner>hartmanng@chromium.org</owner>
  <summary>
    Total count of the number of RenderLayers which are scrollable areas, need
    to be promoted to stacking containers, and will use composited scrolling.
    Each bucket is sampled at most once per RenderLayer, when the RenderLayer
    first becomes scrollable, first needs to become a stacking container, and
    first uses composited scrolling, respectively.
  </summary>
</histogram>

<histogram name="Renderer.DrawDuration" units="ms">
  <owner>brianderson@chromium.org</owner>
  <summary>
    Deprecated: Replaced by Scheduling.Renderer.DrawDuration. The time it takes
    for the compositor to draw a frame.
  </summary>
</histogram>

<histogram name="Renderer.DrawDurationOverestimate" units="ms">
  <owner>brianderson@chromium.org</owner>
  <summary>
    Deprecated: Replaced by Scheduling.Renderer.DrawDuration.Overestimate. The
    amount by which the compositor's draw duration was overestimated in a
    particular frame (0 if the duration was perfectly predicted or
    underestimated).
  </summary>
</histogram>

<histogram name="Renderer.DrawDurationUnderestimate" units="ms">
  <owner>brianderson@chromium.org</owner>
  <summary>
    Deprecated: Replaced by Scheduling.Renderer.DrawDuration.Underestimate. The
    amount by which the compositor's draw duration was underestimated in a
    particular frame (0 if the duration was perfectly predicted or
    overestimated).
  </summary>
</histogram>

<histogram name="Renderer.GpuLatency" units="ms">
  <obsolete>
    Measurement no longer taken.
  </obsolete>
  <owner>brianderson@chromium.org</owner>
  <summary>
    The delay between the compositor submitting a command to the GPU and that
    command executing on the GPU. This delay is measured once per frame.
  </summary>
</histogram>

<histogram name="Renderer.GpuLatencyOverestimate" units="ms">
  <obsolete>
    Measurement no longer taken.
  </obsolete>
  <owner>brianderson@chromium.org</owner>
  <summary>
    The amount by which GPU latency was overestimated in a particular frame (0
    if the latency was perfectly predicted or underestimated).
  </summary>
</histogram>

<histogram name="Renderer.GpuLatencyUnderestimate" units="ms">
  <obsolete>
    Measurement no longer taken.
  </obsolete>
  <owner>brianderson@chromium.org</owner>
  <summary>
    The amount by which GPU latency was underestimated in a particular frame (0
    if the latency was perfectly predicted or overestimated).
  </summary>
</histogram>

<histogram name="Renderer.Hung.MobileInfoBar.UserEvent"
    enum="MobileHungRendererInfoBarEvent">
  <owner>dfalcantara@chromium.org</owner>
  <summary>
    Android: Records the terminal event associated with a hung renderer infobar.
    This includes both the explicit user actions as well as implicit dismissals,
    e.g., when the renderer regains responsiveness before the infobar is
    interactively dismissed.
  </summary>
</histogram>

<histogram name="Renderer.LayoutMs" units="ms">
  <obsolete>
    Deprecated as of 3/2015.
  </obsolete>
  <owner>benjhayden@chromium.org</owner>
  <summary>
    Duration of the FrameView::performLayout trace event, which occurs at most
    once per frame.
  </summary>
</histogram>

<histogram name="Renderer.LineLayoutMs" units="ms">
  <obsolete>
    Deprecated as of 3/2015.
  </obsolete>
  <owner>benjhayden@chromium.org</owner>
  <summary>
    Amount of time spent doing line layout during FrameView::performLayout.
  </summary>
</histogram>

<histogram name="Renderer.PixelIncreaseFromTransitions">
  <obsolete>
    Deprecated 04/2016 as doesn't have data nor owner.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    A lower-bound on the percentage increase in memory that would result from
    promoting all layers that have a webkit-transition on opacity or transform.
  </summary>
</histogram>

<histogram name="Renderer.unloadEventsDurationMS" units="ms">
  <obsolete>
    Deprecated as of 10/2013.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    This measures how long all unload event handlers required to run whenever an
    unload event is processed.
  </summary>
</histogram>

<histogram name="Renderer.ViewportZoomBugCount" enum="BooleanHit">
  <owner>kkhorimoto@chromium.org</owner>
  <summary>
    [iOS] A boolean that is used to indicate that the WebKit rendering bug in
    http://crbug.com/583231 has occurred. This occurs when a page with no
    viewport tag is rendered with an unusable zoom scale. Only logged on iOS.
  </summary>
</histogram>

<histogram name="Renderer2.FinishDocToFinish">
  <obsolete>
    Deprecated 04/2016 as doesn't have data nor owner.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The time from when a document finished loading to when all it's resources
    are also loaded.
  </summary>
</histogram>

<histogram name="Renderer2.RequestToFinish">
  <obsolete>
    Deprecated 6/15/09.  Replaced by Renderer2.RequestToFinish_L
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The time from when a page was requested by a user to when it is fully
    loaded.
  </summary>
</histogram>

<histogram name="Renderer2.RequestToFinish_L">
  <obsolete>
    Deprecated 04/2016 as doesn't have data nor owner.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The time from when a page was requested by a user to when it is fully
    loaded.
  </summary>
</histogram>

<histogram name="Renderer2.RequestToFirstLayout">
  <obsolete>
    Deprecated 04/2016 as doesn't have data nor owner.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The time from when a page was requested by a user to its first layout.
  </summary>
</histogram>

<histogram name="Renderer2.RequestToStart">
  <obsolete>
    Deprecated 04/2016 as doesn't have data nor owner.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The time from when a page was requested by a user to when it starts loading.
  </summary>
</histogram>

<histogram name="Renderer2.StartToFinish">
  <obsolete>
    Deprecated 04/2016 as doesn't have data nor owner.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The time from when a page started loading to when it is fully loaded.
  </summary>
</histogram>

<histogram name="Renderer2.StartToFinishDoc">
  <obsolete>
    Deprecated 04/2016 as doesn't have data nor owner.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The time from when a page starts loading to when the main document is
    finished loading.
  </summary>
</histogram>

<histogram name="Renderer2.StartToFirstLayout">
  <obsolete>
    Deprecated 04/2016 as doesn't have data nor owner.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The time from when a page starts loading to its first layout.
  </summary>
</histogram>

<histogram name="Renderer4.Abandoned" enum="Abandoned">
  <owner>wiltzius@chromium.org</owner>
  <summary>
    Distribution of actual finished pages, vs abandoned pages, where we needed
    to declare a finish time prematurely since the page was being closed
    (exited).
  </summary>
</histogram>

<histogram name="Renderer4.AccelContentPaintDurationMS">
  <obsolete>
    Deprecated 2014-05 because of impl-side painting.
  </obsolete>
  <owner>wiltzius@chromium.org</owner>
  <summary>
    Time spent by WebKit painting the page, in milliseconds, when the GPU
    acceleration is active, for paints that affect non-root layers.
  </summary>
</histogram>

<histogram name="Renderer4.AccelContentPaintMegapixPerSecond">
  <obsolete>
    Deprecated 2014-05 because of impl-side painting.
  </obsolete>
  <owner>wiltzius@chromium.org</owner>
  <summary>
    WebKit paint throughput, measured in megapixels per second, when GPU
    acceleration is active, for paints that affect non-root layers.
  </summary>
</histogram>

<histogram name="Renderer4.AccelDoDeferredUpdateDelay">
  <owner>wiltzius@chromium.org</owner>
  <summary>Time between frames when GPU acceleration is active.</summary>
</histogram>

<histogram name="Renderer4.AccelRootPaintDurationMS">
  <owner>wiltzius@chromium.org</owner>
  <summary>
    Time spent by WebKit painting the page, in milliseconds, when the GPU
    acceleration is active, for paints that affect the root layer.
  </summary>
</histogram>

<histogram name="Renderer4.AccelRootPaintMegapixPerSecond">
  <owner>wiltzius@chromium.org</owner>
  <summary>
    WebKit paint throughput, measured in megapixels per second, when GPU
    acceleration is active, for paints that affect the root layer.
  </summary>
</histogram>

<histogram name="Renderer4.AnimationCallbackDelayTime" units="ms">
  <owner>wiltzius@chromium.org</owner>
  <summary>
    Time from when the animation callback was posted to when it ran.
  </summary>
</histogram>

<histogram name="Renderer4.BeginToCommit" units="ms">
  <owner>wiltzius@chromium.org</owner>
  <summary>
    Time from &quot;begin&quot; to &quot;commit.&quot;   &quot;Begin&quot;==
    &quot;request&quot; if user requested, and &quot;start&quot; otherwise.
    &quot;Request&quot;== time when user requested document. &quot;Start&quot;==
    time when renderer requested load of document, after any unload of last
    document. &quot;Commit&quot;== time when renderer got first byte of
    document.
  </summary>
</histogram>

<histogram name="Renderer4.BeginToFinish">
  <owner>wiltzius@chromium.org</owner>
  <summary>TBD</summary>
</histogram>

<histogram name="Renderer4.BeginToFinishDoc">
  <owner>wiltzius@chromium.org</owner>
  <summary>TBD</summary>
</histogram>

<histogram name="Renderer4.BeginToFirstPaint" units="ms">
  <owner>wiltzius@chromium.org</owner>
  <summary>
    Time from &quot;begin&quot; to &quot;first paint.&quot;  &quot;Begin&quot;==
    &quot;request&quot; if user requested, and &quot;start&quot; otherwise.
    &quot;Request&quot;== time when user requested document. &quot;Start&quot;==
    time when renderer requested load of document, after any unload of last
    document. &quot;First paint&quot;== time when first paint operation was
    performed.
  </summary>
</histogram>

<histogram name="Renderer4.BeginToFirstPaintAfterLoad" units="ms">
  <owner>wiltzius@chromium.org</owner>
  <summary>
    Time from &quot;big&quot; to &quot;first paint after load.&quot;
    &quot;Begin&quot;== &quot;request&quot; if user requested, and
    &quot;start&quot; otherwise.  &quot;Request&quot;== time when user requested
    document. &quot;Start&quot;== time when renderer requested load of document,
    after any unload of last document. &quot;First paint after load&quot;== time
    after onload() when first paint operation is performed.
  </summary>
</histogram>

<histogram name="Renderer4.CommitToFinish" units="ms">
  <owner>wiltzius@chromium.org</owner>
  <summary>
    Time from &quot;commit&quot; to &quot;finish.&quot; &quot;Commit&quot;==
    time when renderer got first byte of document.  &quot;Finish&quot;==after
    onload() and all resources are loaded.
  </summary>
</histogram>

<histogram name="Renderer4.CommitToFinishDoc" units="ms">
  <owner>wiltzius@chromium.org</owner>
  <summary>
    Time from &quot;commit&quot; to &quot;finish doc.&quot; &quot;Commit&quot;==
    time when renderer got first byte of document. &quot;Finish doc&quot; ==
    main document loaded, before onload(). &quot;Finish&quot;==after onload()
    and all resources are loaded.
  </summary>
</histogram>

<histogram name="Renderer4.CommitToFirstPaint" units="ms">
  <owner>wiltzius@chromium.org</owner>
  <summary>
    Time from &quot;commit&quot; to &quot;first paint.&quot;
    &quot;Commit&quot;== time when renderer got first byte of document.
    &quot;First paint&quot;== time when first paint operation was performed.
  </summary>
</histogram>

<histogram name="Renderer4.CommitToFirstPaintAfterLoad" units="ms">
  <owner>wiltzius@chromium.org</owner>
  <summary>
    Time from &quot;commit&quot; to &quot;first paint after load.&quot;
    &quot;Commit&quot;== time when renderer got first byte of document.
    &quot;First paint after load&quot;== time after onload() when first paint
    operation is performed.
  </summary>
</histogram>

<histogram name="Renderer4.CompositorScrollHitTestResult"
    enum="CompositorScrollResult">
  <owner>vollick@chromium.org</owner>
  <summary>
    It's possible for compositor hit testing to determine conclusively that
    compositor thread scrolling can or cannot be done. It's also possible that
    the hit testing result is inconclusive. We would like to see the I-don't-
    know result as little as possible. This histogram tracks the ratios.
  </summary>
</histogram>

<histogram name="Renderer4.CompositorThreadImplDrawDelay" units="ms">
  <owner>wiltzius@chromium.org</owner>
  <summary>
    Time between frames, as measured on the compositor thread. This is collected
    once per frame while it is being drawn to the screen in the compositor.
  </summary>
</histogram>

<histogram name="Renderer4.CompositorTouchScrollUpdateThread"
    enum="ScrollThread">
  <owner>tdresser@chromium.org</owner>
  <summary>Whether the scroll from touch is executed on main thread.</summary>
</histogram>

<histogram name="Renderer4.CompositorWheelScrollUpdateThread"
    enum="ScrollThread">
  <owner>tdresser@chromium.org</owner>
  <summary>
    Whether the scroll from mouse wheel is executed on main thread.
  </summary>
</histogram>

<histogram name="Renderer4.drawPixelCountCulled" units="NormalizedPixels">
  <obsolete>
    Renamed to Renderer4.pixelCountCulled_Draw.
  </obsolete>
  <owner>wiltzius@chromium.org</owner>
  <summary>
    Number of pixels that culling prevented being drawn to the screen,
    normalized to the viewport size. This is collected once per frame while it
    is being drawn to the screen in the compositor.
  </summary>
</histogram>

<histogram name="Renderer4.drawPixelCountOpaque" units="NormalizedPixels">
  <obsolete>
    Renamed to Renderer4.pixelCountOpaque_Draw.
  </obsolete>
  <owner>wiltzius@chromium.org</owner>
  <summary>
    Number of pixels drawn to the screen and known opaque, normalized to the
    viewport size. This is collected once per frame while it is being drawn to
    the screen in the compositor.
  </summary>
</histogram>

<histogram name="Renderer4.drawPixelCountTranslucent" units="NormalizedPixels">
  <obsolete>
    Renamed to Renderer4.pixelCountTranslucent_Draw.
  </obsolete>
  <owner>wiltzius@chromium.org</owner>
  <summary>
    Number of pixels drawn to the screen and not known opaque, normalized to the
    viewport size. This is collected once per frame while it is being drawn to
    the screen in the compositor.
  </summary>
</histogram>

<histogram name="Renderer4.FinishDocToFinish" units="ms">
  <owner>wiltzius@chromium.org</owner>
  <summary>
    Time from &quot;finish doc&quot; to &quot;finish.&quot; &quot;Finish
    doc&quot;== main document loaded, before onload(). &quot;Finish&quot;==after
    onload() and all resources are loaded.
  </summary>
</histogram>

<histogram name="Renderer4.FinishToFirstPaintAfterLoad" units="ms">
  <owner>wiltzius@chromium.org</owner>
  <summary>
    Time from &quot;finish &quot; to &quot;first paint after load.&quot;
    &quot;Finish&quot;==after onload() and all resources are loaded. &quot;First
    paint after load&quot;== time after onload() when first paint operation is
    performed.
  </summary>
</histogram>

<histogram name="Renderer4.GpuRasterizationEnabled" enum="BooleanEnabled">
  <owner>alokp@chromium.org</owner>
  <summary>
    Whether gpu rasterization is enabled (checked once after the page is painted
    for the first time).
  </summary>
</histogram>

<histogram name="Renderer4.GpuRasterizationSuitableContent"
    enum="BooleanEnabled">
  <owner>alokp@chromium.org</owner>
  <summary>
    If gpu rasterization is enabled, whether the page contents are suitable for
    gpu rasterization (checked once after the page is painted for the first
    time).
  </summary>
</histogram>

<histogram name="Renderer4.GpuRasterizationTriggered" enum="BooleanEnabled">
  <owner>alokp@chromium.org</owner>
  <summary>
    If gpu rasterization is enabled, whether it was triggered (checked once
    after the page is painted for the first time).
  </summary>
</histogram>

<histogram name="Renderer4.GpuRasterizationUsed" enum="BooleanEnabled">
  <owner>alokp@chromium.org</owner>
  <summary>
    If gpu rasterization is enabled, whether it was actually used for the page
    (checked once after the page is painted for the first time).
  </summary>
</histogram>

<histogram name="Renderer4.InvalidationRegionApproximateRectCount"
    units="rects">
  <owner>wiltzius@chromium.org</owner>
  <summary>
    Number of rects inside of a PictureLayer's invalidation region per commit.
  </summary>
</histogram>

<histogram name="Renderer4.LanguageDetection" units="ms">
  <owner>wiltzius@chromium.org</owner>
  <summary>
    Time to determine the page language. This is done after the page has been
    loaded.
  </summary>
</histogram>

<histogram name="Renderer4.LCDText.PercentageOfAALayers" units="%">
  <obsolete>
    Deprecated as of 02/2015.  No longer generated.
  </obsolete>
  <owner>wiltzius@chromium.org</owner>
  <summary>
    The ratio of LCDText CC Layers / candidate LCDText layers. Recorded in
    LayerTreeHost, after LayerTreeHostCommon::CalculateDrawProperties() has
    computed the properties we need. Only recorded for the first 50 frames of
    every page.
  </summary>
</histogram>

<histogram name="Renderer4.LCDText.PercentageOfCandidateLayers" units="%">
  <obsolete>
    Deprecated as of 02/2015.  No longer generated.
  </obsolete>
  <owner>wiltzius@chromium.org</owner>
  <summary>
    The ratio of CC Layers which are candidates for LCDText AA / total picture
    or content Layers.  Recorded in LayerTreeHost, after
    LayerTreeHostCommon::CalculateDrawProperties() has computed the properties
    we need. Only recorded for the first 50 frames of every page.
  </summary>
</histogram>

<histogram name="Renderer4.LoadType" enum="LoadType">
  <owner>wiltzius@chromium.org</owner>
  <summary>
    Probability distribution for enumerated varieties of page loads.
  </summary>
</histogram>

<histogram name="Renderer4.LockExistingCachedImage" enum="BooleanSuccess">
  <owner>vmpstr@chromium.org</owner>
  <summary>
    For each attempted lock of a cached image, records whether it was
    successful.
  </summary>
</histogram>

<histogram name="Renderer4.MainThreadGestureScrollReason"
    enum="MainThreadScrollingReason">
  <owner>tdresser@chromium.org</owner>
  <summary>
    Ideally we'd always scroll on the impl thread, but there are a variety of
    situations where we need to scroll on main. We should try to drive these
    down. For every gesture, we record whether or not the scroll occurred on the
    main thread, and if it did, what the reason was.
  </summary>
</histogram>

<histogram name="Renderer4.MainThreadWheelScrollReason"
    enum="MainThreadScrollingReason">
  <owner>tdresser@chromium.org</owner>
  <summary>
    Ideally we'd always scroll on the impl thread, but there are a variety of
    situations where we need to scroll on main. We should try to drive these
    down. For every wheel tick, we record whether or not the the scroll occurred
    on the main thread, and if it did, what the reason was.
  </summary>
</histogram>

<histogram name="Renderer4.pixelCountCulled_Draw" units="NormalizedPixels">
  <owner>wiltzius@chromium.org</owner>
  <summary>
    Number of pixels that culling prevented being drawn to the screen, recorded
    as 10 times the percentage of the viewport that these pixels cover. This is
    collected once per frame while it is being drawn to the screen in the
    compositor.
  </summary>
</histogram>

<histogram name="Renderer4.pixelCountOpaque" units="NormalizedPixels">
  <owner>wiltzius@chromium.org</owner>
  <summary>
    Number of pixels known to be opaque, recorded as 10 times the percentage of
    the viewport that these pixels cover.
  </summary>
</histogram>

<histogram name="Renderer4.pixelCountPainted" units="NormalizedPixels">
  <owner>wiltzius@chromium.org</owner>
  <summary>
    Number of pixels painted by WebKit into main memory, recorded as 10 times
    the percentage of the viewport that these pixels cover. This is collected
    once per commit from WebKit to the compositor.
  </summary>
</histogram>

<histogram name="Renderer4.pixelCountTranslucent" units="NormalizedPixels">
  <owner>wiltzius@chromium.org</owner>
  <summary>
    Number of pixels not known to be opaque opaque, recorded as 10 times the
    percentage of the viewport that these pixels cover.
  </summary>
</histogram>

<histogram name="Renderer4.ReadyToDrawTileDrawStatus" enum="UsedInDraw">
  <owner>vmpstr@chromium.org</owner>
  <summary>
    For each tile that was ready to draw at some point, logs whether the tile
    was actually used in a draw. This is logged at tile destruction time.
  </summary>
</histogram>

<histogram name="Renderer4.renderPassCount">
  <owner>wiltzius@chromium.org</owner>
  <summary>
    The number of render passes (or render targets) in the renderer's frame. If
    the value is more than one, then an intermediate rendering target must be
    used during the rendering of the frame for each render pass greater than
    one.
  </summary>
</histogram>

<histogram name="Renderer4.RequestToFinish" units="ms">
  <owner>wiltzius@chromium.org</owner>
  <summary>
    Time from &quot;request&quot; to &quot;finish.&quot;  &quot;Request&quot;==
    time when user requested document.  &quot;Finish&quot;==after onload() and
    all resources are loaded.
  </summary>
</histogram>

<histogram name="Renderer4.RequestToStart" units="ms">
  <owner>wiltzius@chromium.org</owner>
  <summary>
    Time from &quot;request&quot; to &quot;start.&quot; &quot;Request&quot;==
    time when user requested document. &quot;Start&quot;== time when renderer
    requested load of document, after any unload of last document.
  </summary>
</histogram>

<histogram name="Renderer4.ResourcePoolMemoryUsage" units="MB">
  <owner>ericrk@chromium.org</owner>
  <summary>
    Size of the in-use portion of the ResourcePool. Recorded each time resources
    are reclaimed after tile work completes.
  </summary>
</histogram>

<histogram name="Renderer4.Snapshot">
  <owner>wiltzius@chromium.org</owner>
  <summary>Time to capture a renderer snapshot.</summary>
</histogram>

<histogram name="Renderer4.SoftwareCompositorThreadImplDrawDelay" units="ms">
  <owner>wiltzius@chromium.org</owner>
  <summary>
    Time between frames when the software renderer is being used, as measured on
    the compositor thread. This is collected once per frame while it is being
    drawn to the screen in the compositor.
  </summary>
</histogram>

<histogram name="Renderer4.SoftwareDoDeferredUpdateDelay">
  <owner>wiltzius@chromium.org</owner>
  <summary>Time between frames when the page is not GPU accelerated.</summary>
</histogram>

<histogram name="Renderer4.SoftwarePaintDurationMS">
  <owner>wiltzius@chromium.org</owner>
  <summary>
    Time spent by WebKit painting the page, in milliseconds, when the page is
    not GPU accelerated.
  </summary>
</histogram>

<histogram name="Renderer4.SoftwarePaintMegapixPerSecond">
  <owner>wiltzius@chromium.org</owner>
  <summary>
    WebKit paint throughput, measured in megapixels per second, when the page is
    not GPU accelerated.
  </summary>
</histogram>

<histogram name="Renderer4.StartToCommit" units="ms">
  <owner>wiltzius@chromium.org</owner>
  <summary>
    Time from &quot;start&quot; to &quot;commit.&quot; &quot;Start&quot;== time
    when renderer requested load of document, after any unload of last document.
    &quot;Commit&quot;== time when renderer got first byte of document.
  </summary>
</histogram>

<histogram name="Renderer4.StartToFinish" units="ms">
  <owner>wiltzius@chromium.org</owner>
  <summary>
    Time from &quot;start&quot; to &quot;finish.&quot; &quot;Start&quot;== time
    when renderer requested load of document, after any unload of last document.
    &quot;Finish&quot;==after onload() and all resources are loaded.
  </summary>
</histogram>

<histogram name="Renderer4.TextureCopyLatency" units="microseconds">
  <owner>reveman@chromium.org</owner>
  <summary>
    Time between the issue of a texture copy operation and detecting that it has
    completed as measured by the GPU process.
  </summary>
</histogram>

<histogram name="Renderer4.TextureGpuUploadTimeUS">
  <owner>wiltzius@chromium.org</owner>
  <summary>
    The number of microseconds it took to upload a tile's full texture as
    measured on the GPU process.
  </summary>
</histogram>

<histogram name="Renderer4.Thumbnail">
  <owner>wiltzius@chromium.org</owner>
  <summary>Time to capture a renderer thumbnail.</summary>
</histogram>

<histogram name="Renderer4.tileCountCulled_Upload" units="NormalizedTiles">
  <owner>wiltzius@chromium.org</owner>
  <summary>
    Number of tiles that culling prevented being uploaded to texture memory.
    This is an approximation and is recorded as a 100 times the percentage of
    the number of tiles, of default size, needed to cover the viewport. This is
    collected once per commit from WebKit to the compositor.
  </summary>
</histogram>

<histogram name="Renderer4.uploadPixelCountCulled" units="NormalizedPixels">
  <obsolete>
    Deprecated as of 04/2012, replaced with Renderer4.tileCountCulled_Upload.
  </obsolete>
  <owner>wiltzius@chromium.org</owner>
  <summary>
    Number of pixels that culling prevented being uploaded to texture memory,
    normalized to the viewport size. This is collected once per commit from
    WebKit to the compositor.
  </summary>
</histogram>

<histogram name="Renderer4.uploadPixelCountOpaque" units="NormalizedPixels">
  <obsolete>
    Renamed to Renderer4.pixelCountOpaque_Upload.
  </obsolete>
  <owner>wiltzius@chromium.org</owner>
  <summary>
    Number of pixels uploaded to texture memory and known to be opaque,
    normalized to the viewport size. This is collected once per commit from
    WebKit to the compositor.
  </summary>
</histogram>

<histogram name="Renderer4.uploadPixelCountTranslucent"
    units="NormalizedPixels">
  <obsolete>
    Renamed to Renderer4.pixelCountTranslucent_Upload.
  </obsolete>
  <owner>wiltzius@chromium.org</owner>
  <summary>
    Number of pixels uploaded to texture memory and not known opaque, normalized
    to the viewport size.  This is collected once per commit from WebKit to the
    compositor.
  </summary>
</histogram>

<histogram name="RendererScheduler.TaskQueueManager.DelayedTaskLateness"
    units="ms">
  <owner>alexclarke@chromium.org</owner>
  <summary>
    The delta between when a delayed task was scheduled to run and when the
    RendererScheduler actually ran it. Note: to reduce overhead only 10% of
    tasks are sampled.
  </summary>
</histogram>

<histogram
    name="RendererScheduler.TaskQueueManager.ImmediateTaskQueueingDuration"
    units="ms">
  <owner>alexclarke@chromium.org</owner>
  <summary>
    The queueing duration for non-delayed tasks posted to the RendererScheduler.
    This metric is only recorded if TrackingInfo::time_posted is set (i.e. not
    on android). Note: to reduce overhead only 10% of tasks are sampled.
  </summary>
</histogram>

<histogram name="RendererScheduler.UserModel.GestureDuration" units="ms">
  <owner>alexclarke@chromium.org</owner>
  <summary>Duration of gestures (scrolls and pinches).</summary>
</histogram>

<histogram name="RendererScheduler.UserModel.GesturePredictedCorrectly"
    units="GesturePredictionResult">
  <owner>alexclarke@chromium.org</owner>
  <summary>Whether a user gesture was predicted correctly.</summary>
</histogram>

<histogram name="RendererScheduler.UserModel.GestureStartTimeSinceModelReset"
    units="ms">
  <owner>alexclarke@chromium.org</owner>
  <summary>
    Time between when the UserModel was last reset (which happens on navigation)
    and a gesture starting.
  </summary>
</histogram>

<histogram name="RendererScheduler.UserModel.TimeBetweenGestures" units="ms">
  <owner>alexclarke@chromium.org</owner>
  <summary>Time between subsequent gestures (scrolls and pinches).</summary>
</histogram>

<histogram name="RendererSyncIPC.ElapsedTime" units="ms">
  <owner>ppi@chromium.org</owner>
  <summary>
    Roundtrip times for synchronous IPC calls from the renderer to browser.
  </summary>
</histogram>

<histogram name="RenderViewContextMenu.OpenLinkAsUser" enum="OpenLinkAsUser">
  <owner>jochen@chromium.org</owner>
  <summary>
    State of the profile that is activated via the &quot;Open Link as User&quot;
    menu. Logged when one of the &quot;Open Link as User&quot; context menu
    options is selected.
  </summary>
</histogram>

<histogram name="RenderViewContextMenu.OpenLinkAsUserProfilesState"
    enum="OpenLinkAsUserProfilesState">
  <owner>jochen@chromium.org</owner>
  <summary>
    Whether or not other profiles are active when the &quot;Open Link as
    User&quot; context menu is shown. Logged when the context menu is created.
  </summary>
</histogram>

<histogram name="RenderViewContextMenu.OpenLinkAsUserShown" units="profiles">
  <owner>jochen@chromium.org</owner>
  <summary>
    Count of the profiles shown for the &quot;Open Link as User&quot; context
    menu. Logged when the context menu is created.
  </summary>
</histogram>

<histogram name="RenderViewContextMenu.Shown" enum="RenderViewContextMenuItem">
  <owner>vitalybuka@chromium.org</owner>
  <summary>Count of renderer view context menu items shown.</summary>
</histogram>

<histogram name="RenderViewContextMenu.Used" enum="RenderViewContextMenuItem">
  <owner>vitalybuka@chromium.org</owner>
  <summary>
    Count of renderer view context menu items (Only commands now) used.
  </summary>
</histogram>

<histogram name="RequestAutocomplete.DismissalState"
    enum="AutofillDialogDismissalState">
  <obsolete>
    Deprecated as of 5/5/2016.
  </obsolete>
  <owner>estade@chromium.org</owner>
  <summary>
    The state of the requestAutocomplete() dialog when it was dismissed.
  </summary>
</histogram>

<histogram name="RequestAutocomplete.InitialUserState"
    enum="AutofillDialogInitialUserState">
  <obsolete>
    Deprecated as of 5/5/2016.
  </obsolete>
  <owner>estade@chromium.org</owner>
  <summary>
    The initial state of a user that's interacting with a freshly shown
    requestAutocomplete() dialog.
  </summary>
</histogram>

<histogram name="RequestAutocomplete.PopupInDialog"
    enum="AutofillDialogPopupEvent">
  <obsolete>
    Deprecated as of 5/5/2016.
  </obsolete>
  <owner>estade@chromium.org</owner>
  <summary>
    User interactions with the Autofill popup shown while filling an
    requestAutocomplete() dialog.
  </summary>
</histogram>

<histogram name="RequestAutocomplete.Security" enum="AutofillDialogSecurity">
  <obsolete>
    Deprecated as of 5/5/2016.
  </obsolete>
  <owner>estade@chromium.org</owner>
  <summary>
    Measures the frequency of security warnings and errors in the
    RequestAutocomplete dialog.
  </summary>
</histogram>

<histogram name="RequestAutocomplete.UiDuration" units="ms">
  <obsolete>
    Deprecated as of 5/5/2016.
  </obsolete>
  <owner>estade@chromium.org</owner>
  <summary>
    Measures the duration for which an requestAutocomplete() dialog was shown.
  </summary>
</histogram>

<histogram name="RequestAutocomplete.UiDuration.Cancel" units="ms">
  <obsolete>
    Deprecated as of 5/5/2016.
  </obsolete>
  <owner>estade@chromium.org</owner>
  <summary>
    Measures the duration for which an requestAutocomplete() dialog was shown,
    in cases where the user ended up canceling out of the dialog.
  </summary>
</histogram>

<histogram name="RequestAutocomplete.UiDuration.Submit" units="ms">
  <obsolete>
    Deprecated as of 5/5/2016.
  </obsolete>
  <owner>estade@chromium.org</owner>
  <summary>
    Measures the duration for which an requestAutocomplete() dialog was shown,
    in cases where the user ended up accepting the dialog.
  </summary>
</histogram>

<histogram name="RequestAutocomplete.UiEvents" enum="AutofillDialogUiEvents">
  <obsolete>
    Deprecated as of 5/5/2016.
  </obsolete>
  <owner>estade@chromium.org</owner>
  <summary>
    Measures how users are interacting with the requestAutocomplete() dialog UI.
  </summary>
</histogram>

<histogram name="RequestAutocomplete.UiLatencyToShow" units="ms">
  <obsolete>
    Deprecated as of 5/5/2016.
  </obsolete>
  <owner>estade@chromium.org</owner>
  <summary>
    Measures the duration of time it takes for the requestAutocomplete() UI to
    be actionable by the user after it is shown.
  </summary>
</histogram>

<histogram name="RequestAutocomplete.WalletErrors" enum="WalletErrors">
  <obsolete>
    Deprecated as of 5/5/2016.
  </obsolete>
  <owner>estade@chromium.org</owner>
  <summary>
    Measures the frequency of errors in communicating with the Google Online
    Wallet server.
  </summary>
</histogram>

<histogram name="RequestAutocomplete.WalletRequiredActions"
    enum="WalletRequiredActions">
  <obsolete>
    Deprecated as of 5/5/2016.
  </obsolete>
  <owner>estade@chromium.org</owner>
  <summary>
    Measures the frequency of required user actions returned by the Google
    Online Wallet server.
  </summary>
</histogram>

<histogram name="Reset.ChromeOS.PowerwashDialogShown"
    enum="PowerwashDialogViewType">
  <owner>merkulova@chromium.org</owner>
  <summary>
    Records the number of times the factory reset dialog was shown. Grouped by
    the viewtype.
  </summary>
</histogram>

<histogram name="ResourcePrefetchPredictor.DbStringTooLong">
  <owner>zhenw@chromium.org</owner>
  <summary>
    A boolean that used to indicate a corner case when certain resources are not
    written to the Predictor database becuase their URLs are too long. We
    monitor this number to ensure that we do not discard too many resources.
  </summary>
</histogram>

<histogram name="ResourcePrefetchPredictor.HavePredictionsForUrl">
  <obsolete>
    Deprecated 08/2012. Replaced with ResourcePrefetchPredictorNavigationEvent.
  </obsolete>
  <owner>zhenw@chromium.org</owner>
  <summary>
    A boolean that indicates if the speculative resource prefetch predictor has
    predictions for a Navigation. This is updated on each navigations and helps
    us determine the coverage of the predictor.
  </summary>
</histogram>

<histogram name="ResourcePrefetchPredictor.HavePrefetchResults">
  <owner>zhenw@chromium.org</owner>
  <summary>
    A boolean that used to indicate a corner case when we may not have prefetch
    results even though prefetching is enabled and predictions are present,
    because another navigation in the same tab canceled the prefetching of the
    previous load.
  </summary>
</histogram>

<histogram name="ResourcePrefetchPredictor.HistoryVisitCountForUrl">
  <owner>zhenw@chromium.org</owner>
  <summary>
    The visit count of a URL in the history database, measured when the onload
    fires for the URL. Helpful in figuring out what visit count should be used
    to start learning about a URL.
  </summary>
</histogram>

<histogram name="ResourcePrefetchPredictor.Host.PredictedPrefetchCount">
  <owner>zhenw@chromium.org</owner>
  <summary>
    Assuming a fixed number (25 or 50) of URLs could be prefetched max, how many
    would be available for prefetch (after we apply our heuristics for picking
    subresources to prefetch for a navigation).

    This stat is recorded when the predictor uses the host of the main frame url
    as the key for prediction.
  </summary>
</histogram>

<histogram name="ResourcePrefetchPredictor.Host.PredictedPrefetchFromCache">
  <owner>zhenw@chromium.org</owner>
  <summary>
    When we have predictions for a navigation, we measure the accuracy of the
    predictions against the actual resources downloaded. This histogram gives
    the distribution of the predictions that were fetched by the page and served
    from the cache restricted to some max predictions (25 or 50).

    This stat is recorded when the predictor uses the host of the main frame url
    as the key for prediction.
  </summary>
</histogram>

<histogram name="ResourcePrefetchPredictor.Host.PredictedPrefetchFromNetwork">
  <owner>zhenw@chromium.org</owner>
  <summary>
    When we have predictions for a navigation, we measure the accuracy of the
    predictions against the actual resources downloaded. This histogram gives
    the distribution of the predictions that were fetched by the page and served
    from the network restricted to some max predictions (25 or 50).

    This stat is recorded when the predictor uses the host of the main frame url
    as the key for prediction.
  </summary>
</histogram>

<histogram
    name="ResourcePrefetchPredictor.Host.PredictedPrefetchFromNetworkPercentOfTotalFromNetwork"
    units="%">
  <owner>zhenw@chromium.org</owner>
  <summary>
    Similar to ResourcePrefetchPredictor.Host.PredictedPrefetchFromNetwork but
    as a percent of the total number of resources the page actually fetched from
    the network. This depcits the major gains that we can get.

    This stat is recorded when the predictor uses the host of the main frame url
    as the key for prediction.
  </summary>
</histogram>

<histogram name="ResourcePrefetchPredictor.Host.PredictedPrefetchMisses">
  <owner>zhenw@chromium.org</owner>
  <summary>
    When we have predictions for a navigation, we measure the accuracy of the
    predictions against the actual resources downloaded. This histogram gives
    the distribution of the predictions that were fetched by the page not used
    by the page, restricted to some max predictions (25 or 50).

    This stat is recorded when the predictor uses the host of the main frame url
    as the key for prediction.
  </summary>
</histogram>

<histogram name="ResourcePrefetchPredictor.Host.PrefetchCancelled" units="%">
  <owner>zhenw@chromium.org</owner>
  <summary>
    For prefetching based on host of main frame URL, the percentage of
    prefetches cancelled as a percentage of the total number of resources that
    the predictor tried to prefetch.
  </summary>
</histogram>

<histogram name="ResourcePrefetchPredictor.Host.PrefetchFailed" units="%">
  <owner>zhenw@chromium.org</owner>
  <summary>
    For prefetching based on host of main frame URL, the percentage of
    prefetches failed as a percentage of the total number of resources that the
    predictor tried to prefetch.
  </summary>
</histogram>

<histogram name="ResourcePrefetchPredictor.Host.PrefetchFromCacheNotUsed"
    units="%">
  <owner>zhenw@chromium.org</owner>
  <summary>
    For prefetching based on host of main frame URL, the percentage of
    successful prefetches that came from cache while prefetching but were not
    requested by the page, as a percentage of the total number of resources that
    the predictor tried to prefetch.
  </summary>
</histogram>

<histogram name="ResourcePrefetchPredictor.Host.PrefetchFromCacheUsedFromCache"
    units="%">
  <owner>zhenw@chromium.org</owner>
  <summary>
    For prefetching based on host of main frame URL, the percentage of
    successful prefetches that came from cache while prefetching and also came
    from the cache when the page requested it, as a percentage of the total
    number of resources that the predictor tried to prefetch.
  </summary>
</histogram>

<histogram
    name="ResourcePrefetchPredictor.Host.PrefetchFromCacheUsedFromNetwork"
    units="%">
  <owner>zhenw@chromium.org</owner>
  <summary>
    For prefetching based on host of main frame URL, the percentage of
    successful prefetches that came from cache while prefetching but came from
    the network when the page requested it, as a percentage of the total number
    of resources that the predictor tried to prefetch.
  </summary>
</histogram>

<histogram name="ResourcePrefetchPredictor.Host.PrefetchFromNetworkNotUsed"
    units="%">
  <owner>zhenw@chromium.org</owner>
  <summary>
    For prefetching based on host of main frame URL, the percentage of
    successful prefetches that came from network while prefetching but were not
    requested by the page, as a percentage of the total number of resources that
    the predictor tried to prefetch.
  </summary>
</histogram>

<histogram
    name="ResourcePrefetchPredictor.Host.PrefetchFromNetworkUsedFromCache"
    units="%">
  <owner>zhenw@chromium.org</owner>
  <summary>
    For prefetching based on host of main frame URL, the percentage of
    successful prefetches that came from network while prefetching but came from
    the cache when the page requested it, as a percentage of the total number of
    resources that the predictor tried to prefetch.
  </summary>
</histogram>

<histogram
    name="ResourcePrefetchPredictor.Host.PrefetchFromNetworkUsedFromNetwork"
    units="%">
  <owner>zhenw@chromium.org</owner>
  <summary>
    For prefetching based on host of main frame URL, the percentage of
    successful prefetches that came from cache while prefetching and also came
    from the network when the page requested it, as a percentage of the total
    number of resources that the predictor tried to prefetch.
  </summary>
</histogram>

<histogram name="ResourcePrefetchPredictor.Host.PrefetchNotStarted" units="%">
  <owner>zhenw@chromium.org</owner>
  <summary>
    For prefetching based on host of main frame URL, the percentage of resources
    that were prefetchable but were not prefetched as a percentage of
    prefetchable resources.
  </summary>
</histogram>

<histogram name="ResourcePrefetchPredictor.HostTableHostCount">
  <owner>zhenw@chromium.org</owner>
  <summary>
    The count of number of unique hosts in the HostTable, i.e. the number of
    hosts that the database has prediction data for. This data is useful for
    determining the recall/precision as a function of the number of hosts that
    need to be tracked by the database. Measured at startup.
  </summary>
</histogram>

<histogram name="ResourcePrefetchPredictor.HostTableRowCount">
  <owner>zhenw@chromium.org</owner>
  <summary>
    The count of number of rows in the HostTable. This is effecively the number
    of (host, resource URL) pairs in the database. This is measured at startup
    and used to get an estimate of the data size.
  </summary>
</histogram>

<histogram name="ResourcePrefetchPredictor.MainFrameRequestStats"
    enum="ResourcePrefetchPredictorMainFrameRequestStats">
  <owner>zhenw@chromium.org</owner>
  <summary>
    Records stats about main frame navigations. Records the total number of
    requests/responses/redirects for main frame urls along with the numbers for
    how often the predictor can process such events. This is useful to figure
    out what percentange of requests are handled by the predictor and also for
    sanity checking the other stats.
  </summary>
</histogram>

<histogram name="ResourcePrefetchPredictor.NavigationEvent"
    enum="ResourcePrefetchPredictorNavigationEvent">
  <owner>zhenw@chromium.org</owner>
  <summary>
    Records stats about various interesting events such as - request start,
    response start, redirect, onload, etc during the load of a main frame.
    Essential for understanding the complete life of a navigation request start
    to the onload fire and the events that occur in between.
  </summary>
</histogram>

<histogram name="ResourcePrefetchPredictor.NavigationStatus"
    enum="ResourcePrefetchPredictorNavigationStatus">
  <obsolete>
    Deprecated 08/2012. Replaced with ResourcePrefetchPredictorNavigationEvent.
  </obsolete>
  <owner>zhenw@chromium.org</owner>
  <summary>
    The status of various navigations from the view point of the 'onload' event.
    Since we measure the prediction accuracy and learn navigation subresources
    on the onload event, it is useful to know how many of the navigations are
    abandoned before 'onload' fires.
  </summary>
</histogram>

<histogram name="ResourcePrefetchPredictor.NetworkType"
    enum="ResourcePrefetchPredictorNetworkType">
  <owner>zhenw@chromium.org</owner>
  <summary>
    Records the number of pages on each type of network after a page is loaded.
  </summary>
</histogram>

<histogram name="ResourcePrefetchPredictor.PLT" units="ms">
  <owner>zhenw@chromium.org</owner>
  <summary>
    Page load time. It starts from when the main frame URL request is sent out
    to when the main frame document load is completed.

    This is recorded for both prefetched and non-prefetched pages.
  </summary>
</histogram>

<histogram name="ResourcePrefetchPredictor.PredictedPrefetchCount">
  <obsolete>
    Deprecated 01/2013. Replaced with specific ones for Url and Host.
  </obsolete>
  <owner>zhenw@chromium.org</owner>
  <summary>
    Assuming a fixed number of URLs could be prefetched max, how many would be
    available for prefetch (after we apply our heuristics for picking
    subresources to prefetch for a navigation).
  </summary>
</histogram>

<histogram name="ResourcePrefetchPredictor.PredictedPrefetchFromCache">
  <obsolete>
    Deprecated 01/2013. Replaced with specific ones for Url and Host.
  </obsolete>
  <owner>zhenw@chromium.org</owner>
  <summary>
    When we have predictions for a navigation, we measure the accuracy of the
    predictions against the actual resources downloaded. This histogram gives
    the distribution of the predictions that were fetched by the page and served
    from the cache restricted to some max predictions.
  </summary>
</histogram>

<histogram name="ResourcePrefetchPredictor.PredictedPrefetchFromNetwork">
  <obsolete>
    Deprecated 01/2013. Replaced with specific ones for Url and Host.
  </obsolete>
  <owner>zhenw@chromium.org</owner>
  <summary>
    When we have predictions for a navigation, we measure the accuracy of the
    predictions against the actual resources downloaded. This histogram gives
    the distribution of the predictions that were fetched by the page and served
    from the network restricted to some max predictions.
  </summary>
</histogram>

<histogram
    name="ResourcePrefetchPredictor.PredictedPrefetchFromNetworkPercentOfTotalFromNetwork">
  <obsolete>
    Deprecated 01/2013. Replaced with specific ones for Url and Host.
  </obsolete>
  <owner>zhenw@chromium.org</owner>
  <summary>
    Similar to ResourcePrefetchPredictor.Predicted.PrefetchFromNetwork but as a
    percent of the total number of resources the page actually fetched from the
    network. This depcits the major gains that we can get.
  </summary>
</histogram>

<histogram name="ResourcePrefetchPredictor.PredictedPrefetchMisses">
  <obsolete>
    Deprecated 01/2013. Replaced with specific ones for Url and Host.
  </obsolete>
  <owner>zhenw@chromium.org</owner>
  <summary>
    When we have predictions for a navigation, we measure the accuracy of the
    predictions against the actual resources downloaded. This histogram gives
    the distribution of the predictions that were fetched by the page not used
    by the page, restricted to some max predictions.
  </summary>
</histogram>

<histogram name="ResourcePrefetchPredictor.ReportingEvent"
    enum="ResourcePrefetchPredictorReportingEvent">
  <owner>zhenw@chromium.org</owner>
  <summary>
    Records stats about various interesting events such as - when partial or all
    of history is cleared. It will include events which do not necessarily
    happen during a navigation (which are reported in
    ResourcePrefetchPredictor.NavigationEvent).
  </summary>
</histogram>

<histogram name="ResourcePrefetchPredictor.RequestStats"
    enum="ResourcePrefetchPredictorRequestStats">
  <owner>zhenw@chromium.org</owner>
  <summary>
    Records stats about requests, redirects, and responses observed by the
    ResourcePrefetchPredictorObserver. These stats are useful as a baseline for
    other stats.
  </summary>
</histogram>

<histogram name="ResourcePrefetchPredictor.ResourceStatus"
    enum="ResourcePrefetchPredictorResourceStatus">
  <owner>zhenw@chromium.org</owner>
  <summary>
    The distribution of the reasons for which subresources are ignored during
    prefetching. This helps us prioritze reasons we should further investigate
    to increase coverage. This is reported as a bit map and every status will be
    a bitwise or of the underlying reasons.
  </summary>
</histogram>

<histogram name="ResourcePrefetchPredictor.Url.PredictedPrefetchCount">
  <owner>zhenw@chromium.org</owner>
  <summary>
    Assuming a fixed number of URLs could be prefetched max (25 or 50), how many
    would be available for prefetch (after we apply our heuristics for picking
    subresources to prefetch for a navigation).

    This stat is recorded when the predictor uses the main frame url as the key
    for prediction.
  </summary>
</histogram>

<histogram name="ResourcePrefetchPredictor.Url.PredictedPrefetchFromCache">
  <owner>zhenw@chromium.org</owner>
  <summary>
    When we have predictions for a navigation, we measure the accuracy of the
    predictions against the actual resources downloaded. This histogram gives
    the distribution of the predictions that were fetched by the page and served
    from the cache restricted to some max predictions (25 or 50).

    This stat is recorded when the predictor uses the main frame url as the key
    for prediction.
  </summary>
</histogram>

<histogram name="ResourcePrefetchPredictor.Url.PredictedPrefetchFromNetwork">
  <owner>zhenw@chromium.org</owner>
  <summary>
    When we have predictions for a navigation, we measure the accuracy of the
    predictions against the actual resources downloaded. This histogram gives
    the distribution of the predictions that were fetched by the page and served
    from the network restricted to some max predictions (25 or 50).

    This stat is recorded when the predictor uses the main frame url as the key
    for prediction.
  </summary>
</histogram>

<histogram
    name="ResourcePrefetchPredictor.Url.PredictedPrefetchFromNetworkPercentOfTotalFromNetwork"
    units="%">
  <owner>zhenw@chromium.org</owner>
  <summary>
    Similar to ResourcePrefetchPredictor.Url.PredictedPrefetchFromNetwork but as
    a percent of the total number of resources the page actually fetched from
    the network. This depcits the major gains that we can get.

    This stat is recorded when the predictor uses the main frame url as the key
    for prediction.
  </summary>
</histogram>

<histogram name="ResourcePrefetchPredictor.Url.PredictedPrefetchMisses">
  <owner>zhenw@chromium.org</owner>
  <summary>
    When we have predictions for a navigation, we measure the accuracy of the
    predictions against the actual resources downloaded. This histogram gives
    the distribution of the predictions that were fetched by the page not used
    by the page, restricted to some max predictions (25 or 50).

    This stat is recorded when the predictor uses the main frame url as the key
    for prediction.
  </summary>
</histogram>

<histogram name="ResourcePrefetchPredictor.Url.PrefetchCancelled" units="%">
  <owner>zhenw@chromium.org</owner>
  <summary>
    For prefetching based on the main frame URL, the percentage of prefetches
    cancelled as a percentage of the total number of resources that the
    predictor tried to prefetch.
  </summary>
</histogram>

<histogram name="ResourcePrefetchPredictor.Url.PrefetchFailed" units="%">
  <owner>zhenw@chromium.org</owner>
  <summary>
    For prefetching based on the main frame URL, the percentage of prefetches
    failed as a percentage of the total number of resources that the predictor
    tried to prefetch.
  </summary>
</histogram>

<histogram name="ResourcePrefetchPredictor.Url.PrefetchFromCacheNotUsed"
    units="%">
  <owner>zhenw@chromium.org</owner>
  <summary>
    For prefetching based on the main frame URL, the percentage of successful
    prefetches that came from cache while prefetching but were not requested by
    the page, as a percentage of the total number of resources that the
    predictor tried to prefetch.
  </summary>
</histogram>

<histogram name="ResourcePrefetchPredictor.Url.PrefetchFromCacheUsedFromCache"
    units="%">
  <owner>zhenw@chromium.org</owner>
  <summary>
    For prefetching based on the main frame URL, the percentage of successful
    prefetches that came from cache while prefetching and also came from the
    cache when the page requested it, as a percentage of the total number of
    resources that the predictor tried to prefetch.
  </summary>
</histogram>

<histogram
    name="ResourcePrefetchPredictor.Url.PrefetchFromCacheUsedFromNetwork"
    units="%">
  <owner>zhenw@chromium.org</owner>
  <summary>
    For prefetching based on the main frame URL, the percentage of successful
    prefetches that came from cache while prefetching but came from the network
    when the page requested it, as a percentage of the total number of resources
    that the predictor tried to prefetch.
  </summary>
</histogram>

<histogram name="ResourcePrefetchPredictor.Url.PrefetchFromNetworkNotUsed"
    units="%">
  <owner>zhenw@chromium.org</owner>
  <summary>
    For prefetching based on the main frame URL, the percentage of successful
    prefetches that came from network while prefetching but were not requested
    by the page, as a percentage of the total number of resources that the
    predictor tried to prefetch.
  </summary>
</histogram>

<histogram
    name="ResourcePrefetchPredictor.Url.PrefetchFromNetworkUsedFromCache"
    units="%">
  <owner>zhenw@chromium.org</owner>
  <summary>
    For prefetching based on the main frame URL, the percentage of successful
    prefetches that came from network while prefetching but came from the cache
    when the page requested it, as a percentage of the total number of resources
    that the predictor tried to prefetch.
  </summary>
</histogram>

<histogram
    name="ResourcePrefetchPredictor.Url.PrefetchFromNetworkUsedFromNetwork"
    units="%">
  <owner>zhenw@chromium.org</owner>
  <summary>
    For prefetching based on the main frame URL, the percentage of successful
    prefetches that came from cache while prefetching and also came from the
    network when the page requested it, as a percentage of the total number of
    resources that the predictor tried to prefetch.
  </summary>
</histogram>

<histogram name="ResourcePrefetchPredictor.Url.PrefetchNotStarted" units="%">
  <owner>zhenw@chromium.org</owner>
  <summary>
    For prefetching based on host of main frame URL, the percentage of resources
    that were prefetchable but were not prefetched as a percentage of
    prefetchable resources.
  </summary>
</histogram>

<histogram name="ResourcePrefetchPredictor.UrlTableMainFrameUrlCount">
  <owner>zhenw@chromium.org</owner>
  <summary>
    The count of number of unique main frame urls in the UrlTable, i.e. the
    number of webpages that the database has prediction data for. This data is
    useful for determining the recall/precision as a function of the number of
    webpages that need to be tracked by the database. Measured at startup.
  </summary>
</histogram>

<histogram
    name="ResourcePrefetchPredictor.UrlTableMainFrameUrlsDeletedNotInHistory">
  <owner>zhenw@chromium.org</owner>
  <summary>
    The count of number of unique main frame urls that are deleted from the URL
    table at startup because they are no longer in history. Essential to figure
    out how much data we are loosing out.
  </summary>
</histogram>

<histogram
    name="ResourcePrefetchPredictor.UrlTableMainFrameUrlsDeletedNotInHistoryPercent"
    units="%">
  <owner>zhenw@chromium.org</owner>
  <summary>
    Same as ResourcePrefetchPredictor.UrlTableMainFrameUrlsDeletedNotInHistory
    but recording percentage of URLs in the table rather than absolute numbers.
  </summary>
</histogram>

<histogram name="ResourcePrefetchPredictor.UrlTableRowCount">
  <owner>zhenw@chromium.org</owner>
  <summary>
    The count of number of rows in the UrlTable. This is effecively the number
    of (main frame URL, resource URL) pairs in the database. This is measured at
    startup and used to get an estimate of the data size.
  </summary>
</histogram>

<histogram name="ResourceReporter.BrowserProcess.CpuUsage"
    enum="ResourceReporterCpuUsage">
  <owner>afakhry@chromium.org</owner>
  <summary>
    The cpu usage range reported for the browser process when the chromeos
    device memory pressure (which is the percentage of total memory used by the
    system) is critical. This is emitted only when memory pressure changes from
    a low pressure to a higher pressure.
  </summary>
</histogram>

<histogram name="ResourceReporter.BrowserProcess.MemoryUsage"
    enum="ResourceReporterMemoryUsage">
  <owner>afakhry@chromium.org</owner>
  <summary>
    The system memory usage range reported for the browser process when the
    chromeos device memory pressure (which is the percentage of total memory
    used by the system) is critical. This is emitted only when memory pressure
    changes from a low pressure to a higher pressure.
  </summary>
</histogram>

<histogram name="ResourceReporter.GpuProcess.CpuUsage"
    enum="ResourceReporterCpuUsage">
  <owner>afakhry@chromium.org</owner>
  <summary>
    The cpu usage range reported for the GPU process when the chromeos device
    memory pressure (which is the percentage of total memory used by the system)
    is critical. This is emitted only when memory pressure changes from a low
    pressure to a higher pressure.
  </summary>
</histogram>

<histogram name="ResourceReporter.GpuProcess.MemoryUsage"
    enum="ResourceReporterMemoryUsage">
  <owner>afakhry@chromium.org</owner>
  <summary>
    The system's RAM memory usage range reported for the GPU process when the
    chromeos device memory pressure (which is the percentage of total memory
    used by the system) is critical. This is emitted only when memory pressure
    changes from a low pressure to a higher pressure.
  </summary>
</histogram>

<histogram name="ResourceScheduler.ClientLoadedTime.Active">
  <obsolete>
    Deprecated 1/2016
  </obsolete>
  <owner>aiolos@chromium.org</owner>
  <summary>
    The amount of time between when the ResourceScheduler is informed of a
    Client's creation or starts loading and when that Client finishes loading in
    a Client which has been user-observable the entire time.

    Note: Will not include time for the main resource if PlzNavigate is in use.
  </summary>
</histogram>

<histogram name="ResourceScheduler.ClientLoadedTime.Background">
  <obsolete>
    Deprecated 1/2016
  </obsolete>
  <owner>aiolos@chromium.org</owner>
  <summary>
    The amount of time between when the ResourceScheduler is informed of a
    Client's creation or starts loading and when that Client finishes loading in
    a Client which has been background the entire time.

    Note: Will not include time for the main resource if PlzNavigate is in use.
  </summary>
</histogram>

<histogram name="ResourceScheduler.ClientLoadedTime.Other">
  <obsolete>
    Deprecated 1/2016
  </obsolete>
  <owner>aiolos@chromium.org</owner>
  <summary>
    The amount of time between when the ResourceScheduler is informed of a
    Client's creation or starts loading and when that Client finishes loading in
    a Client which has switched between Active and Background.

    Note: Will not include time for the main resource if PlzNavigate is in use.
  </summary>
</histogram>

<histogram name="ResourceScheduler.ClientLoadedTime.Other.SwitchedToActive">
  <obsolete>
    Deprecated 1/2016
  </obsolete>
  <owner>aiolos@chromium.org</owner>
  <summary>
    The amount of time between the last time that a Client becomes
    user-observable and when that Client finishes loading in a Client that was
    user-observable when the load completed.

    Note: Will not include time for the main resource if PlzNavigate is in use.
  </summary>
</histogram>

<histogram name="ResourceScheduler.RequestTimeDeferred.Active">
  <obsolete>
    Deprecated 1/2016
  </obsolete>
  <owner>aiolos@chromium.org</owner>
  <summary>
    The amount of time the ResourceScheduler is throttling a request after
    WillStartRequest is called for a request in a client that was
    user-observable at creation and start time.
  </summary>
</histogram>

<histogram name="ResourceScheduler.RequestTimeDeferred.Background">
  <obsolete>
    Deprecated 1/2016
  </obsolete>
  <owner>aiolos@chromium.org</owner>
  <summary>
    The amount of time the ResourceScheduler is throttling a request after
    WillStartRequest is called for a request in a client that was background at
    creation and start time.
  </summary>
</histogram>

<histogram name="ResourceScheduler.RequestTimeDeferred.Other">
  <obsolete>
    Deprecated 1/2016
  </obsolete>
  <owner>aiolos@chromium.org</owner>
  <summary>
    The amount of time the ResourceScheduler is throttling a request after
    WillStartRequest is called on a request without a Client or a request in a
    Client which is in a different state since the request was made. Note that
    this won't capture requests which have switched state an even number of
    times. Switching from Active to Background back to Active will be recorded
    in the Active version of this histogram.
  </summary>
</histogram>

<histogram name="ResourceScheduler.RequestTimeThrottled.Active">
  <obsolete>
    Deprecated 1/2016
  </obsolete>
  <owner>aiolos@chromium.org</owner>
  <summary>
    The amount of time between when the request was created and when the
    ResourceScheduler stops throttling the request in a client that was
    user-observable at creation and start time.
  </summary>
</histogram>

<histogram name="ResourceScheduler.RequestTimeThrottled.Background">
  <obsolete>
    Deprecated 1/2016
  </obsolete>
  <owner>aiolos@chromium.org</owner>
  <summary>
    The amount of time between when the request was created and when the
    ResourceScheduler stops throttling the request in a client that was
    background at creation and start time.
  </summary>
</histogram>

<histogram name="ResourceScheduler.RequestTimeThrottled.Other">
  <obsolete>
    Deprecated 1/2016
  </obsolete>
  <owner>aiolos@chromium.org</owner>
  <summary>
    The amount of time between when the request was created and when the
    ResourceScheduler stops throttling a request without a client or a request
    in a Client which is in a different state since the request was made. Note
    that this won't capture requests which have switched state an even number of
    times. Switching from Active to Background back to Active will be recorded
    in the Active version of this histogram.
  </summary>
</histogram>

<histogram name="SadTab.Created" enum="SadTabKind">
  <obsolete>
    Replaced with Tabs.SadTab.* in R20.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Track number of times we built a sad tab page for a renderer crash or kill.
    The user may not have seen the page if it was not the frontmost tab.
  </summary>
</histogram>

<histogram name="SadTab.Displayed" enum="SadTabKind">
  <obsolete>
    Replaced with Tabs.SadTab.* in R20.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Track number of times the user actually saw a sad tab page for a renderer
    crash or kill.
  </summary>
</histogram>

<histogram name="SafeBrowsing.EnabledSettingChanged" enum="BooleanEnabled">
  <owner>feng@chromium.org</owner>
  <obsolete>
    Not in the code anymore (10/2015).
  </obsolete>
  <summary>
    Records the user action that enables/disables safe browsing feature in the
    Settings page on Android.
  </summary>
</histogram>

<histogram name="SafeBrowsing.GetV4HashHttpResponseOrErrorCode"
    enum="CombinedHttpResponseAndNetErrorCode">
  <owner>kcarattini@google.com</owner>
  <summary>
    Response or error codes from the SafeBrowsing Pver4 service. Logged after a
    GetHash or request finishes to capture the response code or error code for
    that call.
  </summary>
</histogram>

<histogram name="SafeBrowsing.GetV4HashResult"
    enum="SafeBrowsingV4OperationResult">
  <owner>kcarattini@chromium.org</owner>
  <summary>
    Track return status from V4 GetHash attempts. The buckets of this histogram
    overlap, so the counts cannot be used as percentages.
  </summary>
</histogram>

<histogram name="SafeBrowsing.ModuleBaseRelocation" units="BaseRelocationType">
  <owner>csharp@chromium.org</owner>
  <owner>krstnmnlsn@chromium.org</owner>
  <summary>
    A windows only historgram. Records when an unknown base relocation type is
    encountered while reading the reloc table of a loaded module.
  </summary>
</histogram>

<histogram name="SafeBrowsing.ParseV4HashResult"
    enum="SafeBrowsingParseV4HashResult">
  <owner>kcarattini@chromium.org</owner>
  <summary>
    Track the parsing results of a status 200 GetV4Hash request.
  </summary>
</histogram>

<histogram name="SafeBrowsing.ParseV4UpdateResult"
    enum="SafeBrowsingParseV4UpdateResult">
  <owner>vakh@chromium.org</owner>
  <summary>
    Track the parsing results of a status 200 GetV4Update request.
  </summary>
</histogram>

<histogram name="SafeBrowsing.Pref.Extended" enum="BooleanEnabled">
  <owner>nparker@chromium.org</owner>
  <summary>
    Whether the Safe Browsing extended reporting service is currently enabled.
    Recorded for all non-Incognito profiles on profile startup.
  </summary>
</histogram>

<histogram name="SafeBrowsing.Pref.General" enum="BooleanEnabled">
  <owner>nparker@chromium.org</owner>
  <summary>
    Whether the Safe Browsing service is currently enabled. Recorded for all
    non-Incognito profiles on profile startup.
  </summary>
</histogram>

<histogram name="SafeBrowsing.UnverifiedDownloads.Allowed"
    enum="SBClientDownloadExtensions">
  <owner>asanka@chromium.org</owner>
  <summary>
    File types that were allowed to be downloaded without verifying their
    content nor their source URLs with Safe Browsing.
  </summary>
</histogram>

<histogram name="SafeBrowsing.UnverifiedDownloads.AllowedByWhitelist"
    enum="SBClientDownloadExtensions">
  <owner>asanka@chromium.org</owner>
  <summary>
    File types that were allowed to be downloaded without verifying their
    content nor their source URLs with Safe Browsing due to the requestor URL
    being on the Safe Browsing whitelist. Each sample recorded on this histogram
    is also recorded in SafeBrowsing.UnverifiedDownloads.Allowed.
  </summary>
</histogram>

<histogram name="SafeBrowsing.UnverifiedDownloads.AllowedDueToDisabledService"
    enum="SBClientDownloadExtensions">
  <owner>asanka@chromium.org</owner>
  <summary>
    File types that were allowed to be downloaded without verifying their
    content nor their source URLs with Safe Browsing due to the SafeBrowsing
    service being disabled. Each sample recorded on this histogram is also
    recorded in SafeBrowsing.UnverifiedDownloads.Allowed.
  </summary>
</histogram>

<histogram name="SafeBrowsing.UnverifiedDownloads.AlternateExtensionCount">
  <owner>asanka@chromium.org</owner>
  <summary>
    Count of alternate extensions that were supplied when attempting to download
    a file without verifying their content nor their source URLs with Safe
    Browsing.
  </summary>
</histogram>

<histogram name="SafeBrowsing.UnverifiedDownloads.Blocked"
    enum="SBClientDownloadExtensions">
  <owner>asanka@chromium.org</owner>
  <summary>
    File types that were blocked from downloaded without verifying their content
    nor their source URLs with Safe Browsing.
  </summary>
</histogram>

<histogram name="SafeBrowsing.V4UpdateResult"
    enum="SafeBrowsingV4OperationResult">
  <owner>vakh@chromium.org</owner>
  <summary>
    Track return status from V4 update attempts. The buckets of this histogram
    overlap, so the counts cannot be used as percentages.
  </summary>
</histogram>

<histogram name="SB.BloomFilter" units="ms">
  <obsolete>
    Has not been generated for years (7/8/14).
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The first stage check that measures the time that Chrome took to check if a
    URL is present in our in-memory bloom filter.
  </summary>
</histogram>

<histogram name="SB.BuildBloom">
  <obsolete>
    Deprecated 9/2012. No longer generated.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>TBD.</summary>
</histogram>

<histogram name="SB.Database" units="ms">
  <obsolete>
    Has not been generated for years (7/8/14).
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The second stage check that measures the time that Chrome took to check if a
    URL is present in our SQLite database.
  </summary>
</histogram>

<histogram name="SB.DBCheck" units="ms">
  <obsolete>
    Has not been generated for years (7/8/14).
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The second stage check that mesures the time that Chrome took to check if a
    URL is present in our SQLite database. This time includes the filter check
    time.
  </summary>
</histogram>

<histogram name="SB.Delay" units="ms">
  <obsolete>
    Has not been generated for years (7/8/14).
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    This measures the time that SafeBrowsing actually delayed the browsing
    experience. It records the difference between the time when Chrome would
    have started reading the response for a URL and when the SafeBrowsing system
    completed its check of that URL.
  </summary>
</histogram>

<histogram name="SB.FilterCheck" units="ms">
  <obsolete>
    Has not been generated for years (7/8/14).
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The first stage check that measures the time that Chrome took to check if a
    URL is present in our in-memory hash table.
  </summary>
</histogram>

<histogram name="SB.Network" units="ms">
  <obsolete>
    Has not been generated for years (7/8/14).
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The third and final stage check that mesures the time that Chrome took to
    get a response from the Google SafeBrowsing servers for a particular URL.
  </summary>
</histogram>

<histogram name="SB.NetworkCheck" units="ms">
  <obsolete>
    Has not been generated for years (7/8/14).
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The third and final stage check that mesures the time that Chrome took to
    get a response from the Google SafeBrowsing servers for a particular URL.
    This time includes the filter and database check time.
  </summary>
</histogram>

<histogram name="SB.PauseSafe" units="ms">
  <obsolete>
    Has not been generated for years (7/8/14).
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    This measures the time that SafeBrowsing actually delayed the browsing
    experience. It records the difference between the time when Chrome would
    have started reading the response for a URL and when the SafeBrowsing system
    completed its check of that URL.
  </summary>
</histogram>

<histogram name="SB.Update">
  <obsolete>
    Has not been generated for years (7/8/14).
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>TBD.</summary>
</histogram>

<histogram name="SB2.AddPrefixes">
  <owner>shess@chromium.org</owner>
  <summary>
    The number of add prefixes stored in the database after the last update.
  </summary>
</histogram>

<histogram name="SB2.BloomFailure" enum="SB2BloomFailure">
  <obsolete>
    Bloom filter support deleted in October 2012.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Track failures when in processing the safe-browsing database bloom filter.
  </summary>
</histogram>

<histogram name="SB2.BloomFilterFalsePositives"
    enum="SB2BloomFilterFalsePositives">
  <obsolete>
    This became misleading around M-22 (September 2012), deleted in M-32
    (November 2013).
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    All prefix misses (server returned no full hashes) and prefix misses due to
    false positives in the bloom filter.
  </summary>
</histogram>

<histogram name="SB2.BloomFilterLoad" units="ms">
  <obsolete>
    Bloom filter support deleted in October 2012.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>Time to load the BloomFilter file.</summary>
</histogram>

<histogram name="SB2.BrowseDatabaseKilobytes" units="KB">
  <obsolete>
    Deprecated 12/2014. Moved to SB2.DatabaseSizeKilobytes.Browse.
  </obsolete>
  <owner>shess@chromium.org</owner>
  <summary>
    The size of the browsing SafeBrowsing database file on disk in kilobytes,
    after an update has occurred.
  </summary>
</histogram>

<histogram name="SB2.BuildFilter" units="ms">
  <owner>shess@chromium.org</owner>
  <summary>
    The time that it took to regenerate the filter after we have received all
    the update chunks.
  </summary>
</histogram>

<histogram name="SB2.BuildReadBytes" units="bytes">
  <obsolete>
    Deprecated because it was exceeding the range.  Replaced by
    SB2.BuildReadKilobytes.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The number of bytes read by the browser process during the bloom filter
    generation phase.
  </summary>
</histogram>

<histogram name="SB2.BuildReadKilobytes" units="KB">
  <owner>shess@chromium.org</owner>
  <summary>
    The number of kilobytes read by the browser process during the filter
    generation phase.
  </summary>
</histogram>

<histogram name="SB2.BuildReadOperations">
  <owner>shess@chromium.org</owner>
  <summary>
    The number of read operations issued by the browser process during the
    filter generation phase.
  </summary>
</histogram>

<histogram name="SB2.BuildWriteBytes" units="bytes">
  <obsolete>
    Deprecated because it was exceeding the range.  Replaced by
    SB2.BuildWriteKilobytes.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The number of bytes written by the browser process during the bloom filter
    generation phase.
  </summary>
</histogram>

<histogram name="SB2.BuildWriteKilobytes" units="KB">
  <owner>shess@chromium.org</owner>
  <summary>
    The number of kilobytes written by the browser process during the filter
    generation phase.
  </summary>
</histogram>

<histogram name="SB2.BuildWriteOperations">
  <owner>shess@chromium.org</owner>
  <summary>
    The number of write operations issued by the browser process during the
    filter generation phase.
  </summary>
</histogram>

<histogram name="SB2.ChunkInsert" units="ms">
  <owner>shess@chromium.org</owner>
  <summary>
    The time that it takes to write one redirect URL (which can contain multiple
    chunks) to the database.
  </summary>
</histogram>

<histogram name="SB2.ChunkRequest" units="ms">
  <owner>shess@chromium.org</owner>
  <summary>
    The network time between the request and response for a chunk.
  </summary>
</histogram>

<histogram name="SB2.ChunkSize" units="bytes">
  <owner>shess@chromium.org</owner>
  <summary>The size of one chunk URL.</summary>
</histogram>

<histogram name="SB2.DatabaseBytes" units="bytes">
  <obsolete>
    Deprecated because it was exceeding the range.  Replaced by
    SB2.DatabaseKilobytes.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>The size of the SafeBrowsing database file on disk.</summary>
</histogram>

<histogram name="SB2.DatabaseFailure" enum="SB2DatabaseFailure">
  <owner>shess@chromium.org</owner>
  <summary>Track failures when updating the safe-browsing database.</summary>
</histogram>

<histogram name="SB2.DatabaseKilobytes" units="KB">
  <obsolete>
    Replaced by SB2.BrowseDatabaseKilobytes.
  </obsolete>
  <owner>shess@chromium.org</owner>
  <summary>
    The size of the SafeBrowsing database file on disk in kilobytes.
  </summary>
</histogram>

<histogram name="SB2.DatabaseOpen" units="ms">
  <owner>shess@chromium.org</owner>
  <summary>
    The time it takes to initialize the SafeBrowsing storage backend, in
    milliseconds.
  </summary>
</histogram>

<histogram name="SB2.DatabaseSizeKilobytes" units="KB">
  <owner>gab@chromium.org</owner>
  <summary>
    The size of one of the SafeBrowsing database file on disk in kilobytes,
    after a database update has occurred (once a few minutes after startup, and
    every thirty minutes or so thereafter).
  </summary>
</histogram>

<histogram name="SB2.DatabaseUpdateKilobytes" units="KB">
  <owner>shess@chromium.org</owner>
  <summary>
    The size of the update file before merging with the database file, in
    kilobytes.
  </summary>
</histogram>

<histogram name="SB2.Delay" units="ms">
  <owner>shess@chromium.org</owner>
  <summary>
    The time that SafeBrowsing actually delayed the browsing experience. It
    records the difference between the time when Chrome would have started
    reading the response for a URL and when the SafeBrowsing system completed
    its check of that URL.
  </summary>
</histogram>

<histogram name="SB2.DownloadBinhashAddsDeleted">
  <obsolete>
    Deleted in M-34 (February 2014).
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>Obsolete download BINHASH add chunks deleted.</summary>
</histogram>

<histogram name="SB2.DownloadBinhashSubsDeleted">
  <obsolete>
    Deleted in M-34 (February 2014).
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>Obsolete download BINHASH sub chunks deleted.</summary>
</histogram>

<histogram name="SB2.DownloadChecks" enum="SB2DownloadChecks">
  <owner>shess@chromium.org</owner>
  <summary>
    Records results of SafeBrowsing download check, including both url check and
    downloaded file hash check.
  </summary>
</histogram>

<histogram name="SB2.DownloadDatabaseKilobytes" units="KB">
  <obsolete>
    Deprecated 12/2014. Moved to SB2.DatabaseSizeKilobytes.Download.
  </obsolete>
  <owner>shess@chromium.org</owner>
  <summary>
    The size of the downloads SafeBrowsing database file on disk in kilobytes,
    after an update has occurred.
  </summary>
</histogram>

<histogram name="SB2.DownloadDuration" units="ms">
  <owner>shess@chromium.org</owner>
  <summary>The time it takes for a download to finish.</summary>
</histogram>

<histogram name="SB2.DownloadHashCheckDuration" units="ms">
  <owner>shess@chromium.org</owner>
  <summary>
    The time it takes for SafeBrowsing to check hash of a download file.
  </summary>
</histogram>

<histogram name="SB2.DownloadUrlCheckDuration" units="ms">
  <owner>shess@chromium.org</owner>
  <summary>The time it takes for SafeBrowsing to check a download url.</summary>
</histogram>

<histogram name="SB2.DownloadUrlChecks" enum="SB2DownloadChecks">
  <obsolete>
    Deprecated 3/11/11, and replaced by SB2.DownloadChecks.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>Records results of SafeBrowsing download url check.</summary>
</histogram>

<histogram name="SB2.ExtendedReportingIsEnabled" enum="BooleanEnabled">
  <obsolete>
    Deprecated 03/2015. Replaced by
    SecurityInterstitialInteraction::EXTENDED_REPORTING_IS_ENABLED.
  </obsolete>
  <owner>felt@chromium.org</owner>
  <summary>
    Whether the user has Safe Browsing extended reporting enabled at the time a
    Safe Browsing warning was dismissed.  This tracks the fraction of all SB
    interstitials that had reporting enabled.
  </summary>
</histogram>

<histogram name="SB2.FailedUpdate">
  <obsolete>
    Deprecated, replaced by SB2.DatabaseFailure BROWSE_DB_UPDATE_FINISH.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The count of the number of times an update failed when being committed to
    the database.
  </summary>
</histogram>

<histogram name="SB2.FilterCheck" units="ms">
  <owner>shess@chromium.org</owner>
  <summary>
    The time that it took to check a URL against our in-memory filter.
  </summary>
</histogram>

<histogram name="SB2.FilterKilobytes" units="KB">
  <obsolete>
    Deprecated 9/2012. No longer generated.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>The size of the current bloom filter in kilobytes.</summary>
</histogram>

<histogram name="SB2.FilterLoad" enum="SB2FilterLoad">
  <owner>shess@chromium.org</owner>
  <summary>Which filter file the database loaded from disk.</summary>
</histogram>

<histogram name="SB2.FilterMissing">
  <obsolete>
    Deprecated, replaced by SB2.DatabaseFailure FILTER_MISSING.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The count of the number of times we attempted to load the bloom filter file
    but it was missing.
  </summary>
</histogram>

<histogram name="SB2.FilterReadFail">
  <obsolete>
    Deprecated, replaced by SB2.DatabaseFailure FILTER_READ.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The count of the number of times we attempted to load the bloom filter file
    but failed while reading the file on disk.
  </summary>
</histogram>

<histogram name="SB2.FilterSize" units="bytes">
  <obsolete>
    Deprecated because it was exceeding the range.  Replaced by
    SB2.FilterKilobytes.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>The size of the current bloom filter.</summary>
</histogram>

<histogram name="SB2.FilterWriteFail">
  <obsolete>
    Deprecated, replaced by SB2.DatabaseFailure FILTER_WRITE.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The count of the number of times we attempted to save the bloom filter file
    but failed while writing the file to disk.
  </summary>
</histogram>

<histogram name="SB2.FormatEvent" enum="SB2FormatEvent">
  <owner>shess@chromium.org</owner>
  <summary>
    Collection of boolean events for SafeBrowsingFileStore instances.  Includes
    corruptions detected, old versions detected, and various failures detected.
  </summary>
</histogram>

<histogram name="SB2.GetChunkResponseOrErrorCode"
    enum="CombinedHttpResponseAndNetErrorCode">
  <owner>vakh@google.com</owner>
  <summary>
    Response or error codes from the SafeBrowsing service. Logged after a
    GetChunk request finishes to capture the response code or error code for
    that call. Split out from SB2.GetHashErrorResponseOrErrorCode in M49.
  </summary>
</histogram>

<histogram name="SB2.GetHash200">
  <obsolete>
    Deprecated in favor of SB2.GetHashResult STATUS_200.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The number of GetHash requests that returned data (valid requests).
  </summary>
</histogram>

<histogram name="SB2.GetHash204">
  <obsolete>
    Deprecated in favor of SB2.GetHashResult STATUS_204.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The number of GetHash requests that returned empty data (false positives).
  </summary>
</histogram>

<histogram name="SB2.GetHashResponseOrErrorCode"
    enum="CombinedHttpResponseAndNetErrorCode">
  <owner>vakh@google.com</owner>
  <summary>
    Response or error codes from the SafeBrowsing service. Logged after a
    GetHash request finishes to capture the response code or error code for that
    call. Split out from SB2.GetHashErrorResponseOrErrorCode in M49.
  </summary>
</histogram>

<histogram name="SB2.GetHashResult" enum="SB2GetHashResult">
  <owner>mattm@chromium.org</owner>
  <summary>
    Track return status from GetHash attempts (STATUS_200, STATUS_204,
    NETWORK_ERROR, HTTP_ERROR, BACKOFF_ERROR), whether parsing a 200 result
    failed (PARSE_ERROR), and dispensation of returned values (EMPTY, HIT,
    MISS).  EMPTY means the response had no full hashes, and should contain all
    of the 204 responses plus all *_ERROR cases.  HIT means that one of the full
    hashes matched. MISS means that none of the hashes matched (there was a
    prefix collision). (PARSE_ERROR, NETWORK_ERROR, HTTP_ERROR, and
    BACKOFF_ERROR were added in M36.)
  </summary>
</histogram>

<histogram name="SB2.GetHashResultDownload" enum="SB2GetHashResult">
  <owner>mattm@chromium.org</owner>
  <summary>
    Track return status from GetHash attempts (STATUS_200, STATUS_204,
    NETWORK_ERROR, HTTP_ERROR, BACKOFF_ERROR), whether parsing a 200 result
    failed (PARSE_ERROR), and dispensation of returned values (EMPTY, HIT,
    MISS).  EMPTY means the response had no full hashes, and should contain all
    of the 204 responses plus all *_ERROR cases.  HIT means that one of the full
    hashes matched. MISS means that none of the hashes matched (there was a
    prefix collision). (PARSE_ERROR, NETWORK_ERROR, HTTP_ERROR, and
    BACKOFF_ERROR were added in M36.)
  </summary>
</histogram>

<histogram name="SB2.GetHashServerMiss">
  <obsolete>
    Deprecated in favor of SB2.GetHashResult FULL_HASH_* and
    SB2.BloomFilterFalsePositives.  It is unclear if this histogram ever
    reported useful data.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The number of GetHash requests returning full hashes that didn't match the
    URL that initiated the request.
  </summary>
</histogram>

<histogram name="SB2.HandleCorrupt">
  <obsolete>
    Deprecated, replaced by SB2.DatabaseFailure CORRUPT.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The count of the number of times a database was found corrupt and reset.
  </summary>
</histogram>

<histogram name="SB2.InterstitialAction" enum="SB2InterstitialAction">
  <obsolete>
    Deprecated, replaced by: interstitial.malware.* and interstitial.phishing.*.
  </obsolete>
  <owner>felt@chromium.org</owner>
  <summary>
    Track number of times Safe Browsing interstitials have been shown, and how
    many times they have been clicked through or not.
  </summary>
</histogram>

<histogram name="SB2.InterstitialActionDetails"
    enum="SB2InterstitialActionDetails">
  <obsolete>
    Deprecated, replaced by: interstitial.malware.* and interstitial.phishing.*.
  </obsolete>
  <owner>felt@chromium.org</owner>
  <summary>
    Tracks the click-through rate for specific cases of the interstitial.
  </summary>
</histogram>

<histogram name="SB2.MalwareInterstitialTimeClosed" units="ms">
  <obsolete>
    Deprecated 9/2014.
  </obsolete>
  <owner>felt@chromium.org</owner>
  <summary>
    The time between when we show the SafeBrowsing malware interstitial and the
    user navigating away by for example, closing the tab, clicking the browser
    back button or typing another URL in the address bar.
  </summary>
</histogram>

<histogram name="SB2.MalwareInterstitialTimeDiagnostic" units="ms">
  <obsolete>
    Deprecated 9/2014.
  </obsolete>
  <owner>felt@chromium.org</owner>
  <summary>
    The time between when we show the SafeBrowsing malware interstitial and the
    user clicking on diagnostic page link.
  </summary>
</histogram>

<histogram name="SB2.MalwareInterstitialTimeExpandedSeeMore" units="ms">
  <obsolete>
    Deprecated 9/2014.
  </obsolete>
  <owner>felt@chromium.org</owner>
  <summary>
    The time between when we show the SafeBrowsing malware interstitial and the
    user expanding the &quot;see more info&quot; section of the page.  (Only
    applies to field trial version 2 of the interstitial.)
  </summary>
</histogram>

<histogram name="SB2.MalwareInterstitialTimeLearnMore" units="ms">
  <obsolete>
    Deprecated 9/2014.
  </obsolete>
  <owner>felt@chromium.org</owner>
  <summary>
    The time between when we show the SafeBrowsing malware interstitial and the
    user clicking on the learn more about malware link.
  </summary>
</histogram>

<histogram name="SB2.MalwareInterstitialTimePrivacyPolicy" units="ms">
  <obsolete>
    Deprecated 9/2014.
  </obsolete>
  <owner>felt@chromium.org</owner>
  <summary>
    The time between when we show the SafeBrowsing malware interstitial and the
    user clicking on the privacy policy link.
  </summary>
</histogram>

<histogram name="SB2.MalwareInterstitialTimeProceed" units="ms">
  <obsolete>
    Deprecated 9/2014.
  </obsolete>
  <owner>felt@chromium.org</owner>
  <summary>
    The time between when we show the SafeBrowsing malware interstitial and the
    user clicking on the proceed link.
  </summary>
</histogram>

<histogram name="SB2.MalwareInterstitialTimeTakeMeBack" units="ms">
  <obsolete>
    Deprecated 9/2014.
  </obsolete>
  <owner>felt@chromium.org</owner>
  <summary>
    The time between when we show the SafeBrowsing malware interstitial and the
    user clicking on the big green back button.
  </summary>
</histogram>

<histogram name="SB2.Network" units="ms">
  <owner>shess@chromium.org</owner>
  <summary>
    The time that it took to receive a response from the Google SafeBrowsing
    servers for a GetHash request.
  </summary>
</histogram>

<histogram name="SB2.OldDatabaseKilobytes" units="KB">
  <obsolete>
    Deprecated 7/2014. No longer generated.
  </obsolete>
  <owner>shess@chromium.org</owner>
  <summary>Size of v1 database deleted from client profile.</summary>
</histogram>

<histogram name="SB2.OutShardShifts">
  <owner>shess@chromium.org</owner>
  <summary>
    Indicates how sharded safe-browsing on-disk stores are.  Values like 0 to 4
    are reasonable.
  </summary>
</histogram>

<histogram name="SB2.PhishingInterstitialTimeClosed" units="ms">
  <owner>felt@chromium.org</owner>
  <summary>
    The time between when we show the SafeBrowsing phishing interstitial and the
    user navigating away by for example, closing the tab, clicking the browser
    back button or typing another URL in the address bar.
  </summary>
</histogram>

<histogram name="SB2.PhishingInterstitialTimeExpandedSeeMore" units="ms">
  <owner>felt@chromium.org</owner>
  <summary>
    The time between when we show the SafeBrowsing phishing interstitial and the
    user expanding the &quot;see more info&quot; section of the page.  (Only
    applies to field trial version 2 of the interstitial.)
  </summary>
</histogram>

<histogram name="SB2.PhishingInterstitialTimeLearnMore" units="ms">
  <owner>felt@chromium.org</owner>
  <summary>
    The time between when we show the SafeBrowsing phishing interstitial and the
    user clicking on the learn more link.
  </summary>
</histogram>

<histogram name="SB2.PhishingInterstitialTimeProceed" units="ms">
  <owner>felt@chromium.org</owner>
  <summary>
    The time between when we show the SafeBrowsing phishing interstitial and the
    user clicking on the proceed link.
  </summary>
</histogram>

<histogram name="SB2.PhishingInterstitialTimeReportError" units="ms">
  <owner>felt@chromium.org</owner>
  <summary>
    The time between when we show the SafeBrowsing phishing interstitial and the
    user clicking on the report error link.
  </summary>
</histogram>

<histogram name="SB2.PhishingInterstitialTimeTakeMeBack" units="ms">
  <owner>felt@chromium.org</owner>
  <summary>
    The time between when we show the SafeBrowsing phishing interstitial and the
    user clicking on the big green back button.
  </summary>
</histogram>

<histogram name="SB2.PrefixSetBitsPerPrefix" units="bits">
  <owner>shess@chromium.org</owner>
  <summary>
    The size of the PrefixSet storage in bits, divided by the number of prefixes
    represented.  Should almost always be 16.
  </summary>
</histogram>

<histogram name="SB2.PrefixSetEvent" enum="SB2PrefixSetEvent">
  <obsolete>
    Deprecated 9/2012. No longer generated, BloomFilter being removed.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Records how well the PrefixSet implementation matches the BloomFilter
    implementation.
  </summary>
</histogram>

<histogram name="SB2.PrefixSetKilobytes" units="KB">
  <obsolete>
    Deprecated 01/2014. Replaced by suffixed SB2.PrefixSetSizeKilobytes.
  </obsolete>
  <owner>shess@chromium.org</owner>
  <summary>The size of one of the PrefixSet files in kilobytes.</summary>
</histogram>

<histogram name="SB2.PrefixSetLoad" units="ms">
  <owner>shess@chromium.org</owner>
  <summary>Time to load one of the PrefixSet files.</summary>
</histogram>

<histogram name="SB2.PrefixSetRestoredExcess">
  <obsolete>
    Deprecated 9/2012. No longer generated.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    For debugging PrefixSet.  How many extra results GetPrefixes returns.
  </summary>
</histogram>

<histogram name="SB2.PrefixSetRestoredShortfall">
  <obsolete>
    Deprecated 9/2012. No longer generated.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    For debugging PrefixSet.  How many fewer results GetPrefixes returns.
  </summary>
</histogram>

<histogram name="SB2.PrefixSetSizeKilobytes" units="KB">
  <owner>shess@chromium.org</owner>
  <summary>
    The size of one of the PrefixSet files in kilobytes. Logged after a database
    update has occurred and the PrefixSet has been flushed to disk (once a few
    minutes after startup, and every thirty minutes or so thereafter).
  </summary>
</histogram>

<histogram name="SB2.PrefixSetUnsortedDelta">
  <obsolete>
    Deprecated 9/2012. No longer generated.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    For debugging PrefixSet.  How far unsorted deltas are from expected value.
  </summary>
</histogram>

<histogram name="SB2.PrefixSetUnsortedDifference">
  <obsolete>
    Deprecated 9/2012. No longer generated.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    For debugging PrefixSet.  Distance of unsorted elements from expected
    location.
  </summary>
</histogram>

<histogram name="SB2.PrefixSetUnsortedPercent" units="%">
  <obsolete>
    Deprecated 9/2012. No longer generated.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    For debugging PrefixSet.  How far into the results unsorted elements were
    found.  Interesting values would be 0%, 50%, or 100%.
  </summary>
</histogram>

<histogram name="SB2.PrefixSetUnsortedSize">
  <obsolete>
    Deprecated 9/2012. No longer generated.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    For debugging PrefixSet.  Size of unsorted sets.  To see if there is a
    problem with a particular size of dataset.
  </summary>
</histogram>

<histogram name="SB2.PrefixSetVersionRead">
  <owner>shess@chromium.org</owner>
  <summary>Version read from one of the PrefixSet files.</summary>
</histogram>

<histogram name="SB2.PrefixSetWrite" units="ms">
  <owner>shess@chromium.org</owner>
  <summary>Time to store one of the PrefixSet files.</summary>
</histogram>

<histogram name="SB2.RemoteCall.CanCheckUrl" enum="BooleanCanCheckUrl">
  <owner>nparker@chromium.org</owner>
  <summary>
    Count of how many URLs were actually checked vs skipped via
    RemoteSafeBrowsingDatabaseManager because the scheme is not supported by
    Safe Browsing. Incremented each time a resource load is initiated.
  </summary>
</histogram>

<histogram name="SB2.RemoteCall.ChecksPending" units="calls">
  <owner>nparker@chromium.org</owner>
  <summary>
    Number of outstanding calls for URLs getting classified through
    RemoteSafeBrowsingDatabaseManager.  The size of the queue is logged before
    initiating each request.
  </summary>
</histogram>

<histogram name="SB2.RemoteCall.Elapsed" units="ms">
  <owner>nparker@chromium.org</owner>
  <summary>
    Latency of URL-classification API calls from Chrome via
    RemoteSafeBrowsingDatabaseManager, logged per-request. This includes the
    time to go through JNI, check the URL, and return the result and includes
    several thread hops betwetween IO and UI threads. The resource-load will not
    necessarily be delayed this much (see SB2.Delay for that).
  </summary>
</histogram>

<histogram name="SB2.RemoteCall.Result" enum="SB2RemoteCallResult">
  <owner>nparker@chromium.org</owner>
  <summary>
    Result of URL-classification API calls from Chrome via
    RemoteSafeBrowsingApiHandler.  Logged after each URL is judged
    safe/not-safe, or hits a deadline.
  </summary>
</histogram>

<histogram name="SB2.RemoteCall.ThreatSubType.PotentiallyHarmfulApp"
    enum="SB2RemoteCallThreatSubType">
  <owner>nparker@chromium.org</owner>
  <summary>
    The threat sub-type annotated  for URLs classified as PHA via remote calls
    through RemoteSafeBrowsingApiHandler. &quot;PHA&quot; classifications
    generate &quot;malware&quot; interstitials.
  </summary>
</histogram>

<histogram name="SB2.RemoteCall.ThreatSubType.SocialEngineering"
    enum="SB2RemoteCallThreatSubType">
  <owner>nparker@chromium.org</owner>
  <summary>
    The threat sub-type annotated returned for URLs classified as social
    engineering via remote calls through RemoteSafeBrowsingApiHandler.
    &quot;Social engineering&quot; classifications generate &quot;phishing&quot;
    interstitials.
  </summary>
</histogram>

<histogram name="SB2.ReportingIsEnabled" enum="BooleanEnabled">
  <obsolete>
    Deprecated 06/2014.  Replaced by SB2.ExtendedReportingIsEnabled.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Whether the user has Safe Browsing extended reporting enabled at the time a
    Safe Browsing warning was dismissed.  This tracks the fraction of all SB
    interstitials that had reporting enabled.
  </summary>
</histogram>

<histogram name="SB2.ResourceTypes" enum="ContentResourceType">
  <obsolete>
    Superseded by SB2.ResourceTypes2 in December 2015.
  </obsolete>
  <owner>nparker@chromium.org</owner>
  <summary>
    Resource types of resources that were inspected by Safe Browsing in the
    SafeBrowsingResourceThrottle.
  </summary>
</histogram>

<histogram name="SB2.ResourceTypes2" enum="ContentResourceType2">
  <owner>nparker@chromium.org</owner>
  <summary>
    Resource types of resources that were inspected by Safe Browsing in the
    SafeBrowsingResourceThrottle.
  </summary>
</histogram>

<histogram name="SB2.SetExtendedReportingEnabled" enum="BooleanEnabled">
  <obsolete>
    Deprecated 03/2015. Replaced by
    SecurityInterstitialInteraction::SET_EXTENDED_REPORTING_ENABLED.
  </obsolete>
  <owner>felt@chromium.org</owner>
  <summary>
    Tracks changes to the Safe Browsing extended reporting opt-in which is shown
    in the Safe Browsing interstitial.
  </summary>
</histogram>

<histogram name="SB2.SetReportingEnabled" enum="BooleanEnabled">
  <obsolete>
    Deprecated 06/2014.  Replaced by SB2.SetExtendedReportingEnabled.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Tracks changes to the Safe Browsing extended reporting opt-in which is shown
    in the Safe Browsing interstitial.
  </summary>
</histogram>

<histogram name="SB2.SideEffectFreePrefixSetWrite" units="ms">
  <obsolete>
    Deprecated 12/2014. Merged into SB2.PrefixSetWrite.
  </obsolete>
  <owner>shess@chromium.org</owner>
  <summary>
    Time to store the Side Effect Free Whitelist PrefixSet file. Note: this
    histogram was intended to be stored as
    SB2.SideEffectFreeWhitelistPrefixSetWrite but was actually reported as
    SB2.SideEffectFreePrefixSetWrite from its inception to its deprecation...
  </summary>
</histogram>

<histogram name="SB2.SideEffectFreeWhitelistDatabaseKilobytes" units="KB">
  <obsolete>
    Deprecated 12/2014. Moved to
    SB2.DatabaseSizeKilobytes.SideEffectFreeWhitelist.
  </obsolete>
  <owner>shess@chromium.org</owner>
  <summary>
    The size of the Side Effect Free Whitelist SaafeBrowsing database file on
    disk in kilobytes, after an update has occurred.
  </summary>
</histogram>

<histogram name="SB2.SideEffectFreeWhitelistPrefixSetKilobytes" units="KB">
  <obsolete>
    Deprecated 12/2014. Moved to
    SB2.PrefixSetSizeKilobytes.SideEffectFreeWhitelist.
  </obsolete>
  <owner>shess@chromium.org</owner>
  <summary>
    The size of the Side Effect Free Whitelist PrefixSet file in kilobytes,
    after an udpate has occurred.
  </summary>
</histogram>

<histogram name="SB2.SideEffectFreeWhitelistPrefixSetLoad" units="ms">
  <obsolete>
    Deprecated 12/2014. Merged into SB2.PrefixSetLoad.
  </obsolete>
  <owner>shess@chromium.org</owner>
  <summary>Time to load the Side Effect Free Whitelist PrefixSet file.</summary>
</histogram>

<histogram name="SB2.SideEffectFreeWhitelistStatus"
    enum="SB2SideEffectFreeWhitelistStatus">
  <obsolete>
    Deprecated 4/2015.
  </obsolete>
  <owner>shess@chromium.org</owner>
  <summary>The instantiation status of the SideEffectFreeWhitelist.</summary>
</histogram>

<histogram name="SB2.StoreVersionRead">
  <owner>shess@chromium.org</owner>
  <summary>Version read from the store file.</summary>
</histogram>

<histogram name="SB2.SubPrefixes">
  <owner>shess@chromium.org</owner>
  <summary>
    The number of sub prefixes stored in the database after the last update.
  </summary>
</histogram>

<histogram name="SB2.Update" units="ms">
  <owner>shess@chromium.org</owner>
  <summary>
    The time from the receipt of the update request to the receipt of the final
    update chunk.
  </summary>
</histogram>

<histogram name="SB2.UpdateRequestSize" units="bytes">
  <owner>shess@chromium.org</owner>
  <summary>The payload size of update requests to the server.</summary>
</histogram>

<histogram name="SB2.UpdateResult" enum="SB2UpdateResult">
  <owner>shess@chromium.org</owner>
  <summary>Result from trying to update the SafeBrowsing data.</summary>
</histogram>

<histogram name="SB2.UpdateSize" units="bytes">
  <owner>shess@chromium.org</owner>
  <summary>The size of all the chunk URLs in an update response.</summary>
</histogram>

<histogram name="SB2.UpdateSizeBackground" units="bytes">
  <owner>nparker@chromium.org</owner>
  <obsolete>
    Was used for an experiment in late 2014.
  </obsolete>
  <summary>
    The size of all the chunk URLs in an update response when Chrome is in the
    background.
  </summary>
</histogram>

<histogram name="SB2.UpdateSizeForeground" units="bytes">
  <owner>nparker@chromium.org</owner>
  <obsolete>
    Was used for an experiment in late 2014.
  </obsolete>
  <summary>
    The size of all the chunk URLs in an update response when Chrome is in the
    foreground.
  </summary>
</histogram>

<histogram name="SB2.UpdateUrls">
  <owner>shess@chromium.org</owner>
  <summary>The number of chunk URLs in an update response.</summary>
</histogram>

<histogram name="SB2.VolunteerPrefixesRemoved">
  <owner>shess@chromium.org</owner>
  <obsolete>
    The operation this is tracking has been deleted as of 09/2014.
  </obsolete>
  <summary>
    Older versions of the safe-browsing code incorrectly added additional
    SBPrefix items when receiving full hashes.  This caused errors when
    calculating when to send gethash requests to the server.  An additional pass
    over the data has been added to remove the excess prefixes.  This histogram
    tracks progress of that code for purposes of informing a decision on when to
    remove the additional pass.  See http://crbug.com/361248 .
  </summary>
</histogram>

<histogram name="SBClientDownload.ArchivedArchiveExtensions"
    enum="SBClientDownloadExtensions">
  <owner>asanka@chromium.org</owner>
  <summary>
    Records a histogram of archive file types that were found while examining a
    downloaded ZIP file. Each archive file type in a single ZIP file is recorded
    at most once. The relative incidence rate of each filetype in this histogram
    should indicate the probability of finding that file type in a ZIP file
    given that that ZIP file contains an archive file.
  </summary>
</histogram>

<histogram name="SBClientDownload.CheckDownloadStats"
    enum="SBClientDownloadCheckDownloadStats">
  <owner>mattm@chromium.org</owner>
  <summary>
    Records a histogram of the reason why downloads are marked as being
    malicious or clean by the improved SafeBrowsing binary download protection.
    Note that UNSUPPORTED_URL_SCHEME was split out of the INVALID_URL bucket in
    M41. The NOT_BINARY_FILE check was moved before the UNSUPPORTED_URL_SCHEME
    check in M42.
  </summary>
</histogram>

<histogram name="SBClientDownload.CheckWhitelistResult"
    enum="WhitelistedDownloadType">
  <owner>jialiul@chromium.org</owner>
  <summary>
    For each download supported by the SafeBrowsing download protection service,
    records if it matches a certain whitelist (e.g. matches URL whitelist,
    matches signature whitelist, or does not match any whitelists).
  </summary>
</histogram>

<histogram name="SBClientDownload.DmgFileFailureByType"
    enum="SBClientDownloadExtensions">
  <owner>nparker@chromium.org</owner>
  <summary>
    Counts of DMG-like file types that failed to be successfully analyzed by the
    SafeBrowsing download service.
  </summary>
</histogram>

<histogram name="SBClientDownload.DmgFileHasExecutable" enum="Boolean">
  <owner>rsesek@chromium.org</owner>
  <obsolete>
    Replaced by SBClientDownload.DmgFileHas[No]ExecutableByType in M51.
  </obsolete>
  <summary>
    For each DMG file analyzed by the SafeBrowsing download service, records if
    the DMG contained an executable file.
  </summary>
</histogram>

<histogram name="SBClientDownload.DmgFileHasExecutableByType"
    enum="SBClientDownloadExtensions">
  <owner>nparker@chromium.org</owner>
  <summary>
    Counts of DMG-like file types which were analyzed by the SafeBrowsing
    download service that contained an executable file.
  </summary>
</histogram>

<histogram name="SBClientDownload.DmgFileHasNoExecutableByType"
    enum="SBClientDownloadExtensions">
  <owner>nparker@chromium.org</owner>
  <summary>
    Counts of DMG-like file types which were analyzed by the SafeBrowsing
    download service that did NOT contain an executable file.
  </summary>
</histogram>

<histogram name="SBClientDownload.DmgFileSuccess" enum="BooleanSuccess">
  <owner>rsesek@chromium.org</owner>
  <obsolete>
    Replaced by SBClientDownload.DmgFile{Success,Failure}ByType in M51.
  </obsolete>
  <summary>
    For each DMG file analyzed by the SafeBrowsing download service, records
    true if the analysis was successful, or false if there was an error
    analyzing the file.
  </summary>
</histogram>

<histogram name="SBClientDownload.DmgFileSuccessByType"
    enum="SBClientDownloadExtensions">
  <owner>nparker@chromium.org</owner>
  <summary>
    Counts of DMG-like file types that were successfully analyzed by the
    SafeBrowsing download service.
  </summary>
</histogram>

<histogram name="SBClientDownload.DownloadExtensions"
    enum="SBClientDownloadExtensions">
  <owner>mattm@chromium.org</owner>
  <summary>
    Records a histogram of how often users download a file with a file extension
    that is possibly dangerous (e.g., exe, class).
  </summary>
</histogram>

<histogram name="SBClientDownload.DownloadRequestDuration" units="ms">
  <owner>mattm@chromium.org</owner>
  <summary>
    Records the total time it takes for the SafeBrowsing download service to
    check whether the content of a download is malicious or not, including file
    feature extraction, whitelist checking, and server ping. This histogram only
    includes checks that sent a ping to the SafeBrowsing server. It does not
    include requests that were cancelled, but does include requests that
    received a bad response.
  </summary>
</histogram>

<histogram name="SBClientDownload.DownloadRequestNetError" enum="NetErrorCodes">
  <owner>mattm@chromium.org</owner>
  <summary>
    The net error code for all CheckClientDownloadRequest URLFetchers.
  </summary>
</histogram>

<histogram name="SBClientDownload.DownloadRequestNetworkDuration" units="ms">
  <owner>mattm@chromium.org</owner>
  <summary>
    Records the time it takes for the SafeBrowsing download service ping. It is
    not recorded for requests that were cancelled.
  </summary>
</histogram>

<histogram name="SBClientDownload.DownloadRequestNetworkStats"
    enum="SBClientDownloadCheckDownloadStats">
  <owner>mattm@chromium.org</owner>
  <summary>
    Records the results of SafeBrowsing binary download checks which caused a
    server ping.
  </summary>
</histogram>

<histogram name="SBClientDownload.DownloadRequestPayloadSize" units="bytes">
  <owner>mattm@chromium.org</owner>
  <summary>
    The size of the upload data for CheckClientDownloadRequest URLFetchers.
  </summary>
</histogram>

<histogram name="SBClientDownload.DownloadRequestResponseCode">
  <owner>mattm@chromium.org</owner>
  <summary>
    For CheckClientDownloadRequest URLFetchers with successful status, the HTTP
    response code that was received.
  </summary>
</histogram>

<histogram name="SBClientDownload.DownloadRequestTimeoutDuration" units="ms">
  <owner>mattm@chromium.org</owner>
  <summary>
    Records the portion of the SafeBrowsing download service check starting with
    the point CheckClientDownloadRequest::StartTimeout() is called. It is
    recorded regardless if a ping was sent or not. It is not recorded for
    requests that were cancelled.
  </summary>
</histogram>

<histogram name="SBClientDownload.DownloadRequestTimeoutStats"
    enum="SBClientDownloadCheckDownloadStats">
  <owner>mattm@chromium.org</owner>
  <summary>
    For SafeBrowsing binary download checks which reached the
    CheckClientDownloadRequest::StartTimeout() call, records the final result
    (once the check finishes or is cancelled).
  </summary>
</histogram>

<histogram name="SBClientDownload.ExtractDmgFeaturesTime" units="ms">
  <owner>rsesek@chromium.org</owner>
  <summary>
    Records the time it takes for the SafeBrowsing download service to extract
    info from a downloaded DMG file.
  </summary>
</histogram>

<histogram name="SBClientDownload.ExtractImageHeadersTime" units="ms">
  <owner>grt@chromium.org</owner>
  <summary>
    Records the time it takes for the SafeBrowsing download service to extract
    image headers from a downloaded binary.
  </summary>
</histogram>

<histogram name="SBClientDownload.ExtractSignatureFeaturesTime" units="ms">
  <owner>mattm@chromium.org</owner>
  <summary>
    Records the time it takes for the SafeBrowsing download service to extract
    signature info from a downloaded binary. This includes both unsigned and
    signed binaries.
  </summary>
</histogram>

<histogram name="SBClientDownload.ExtractZipFeaturesTime" units="ms">
  <owner>mattm@chromium.org</owner>
  <summary>
    Records the time it takes for the SafeBrowsing download service to extract
    info from a downloaded zip file.
  </summary>
</histogram>

<histogram name="SBClientDownload.SignedBinaryDownload"
    enum="SBClientDownloadIsSignedBinary">
  <owner>mattm@chromium.org</owner>
  <summary>
    Records the number of signed vs. unsigned executables that are downloaded.
  </summary>
</histogram>

<histogram name="SBClientDownload.SignedOrWhitelistedDownload">
  <obsolete>
    Deprecated in Chrome 50. Replaced by
    SBClientDownload.CheckWhitelistResult.*.
  </obsolete>
  <owner>mattm@chromium.org</owner>
  <summary>
    Counter which is incremented whenever an executable is downloaded which is
    either signed or whose URL matches the download whitelist.
  </summary>
</histogram>

<histogram name="SBClientDownload.ZipFileHasArchiveButNoExecutable"
    enum="Boolean">
  <owner>mattm@chromium.org</owner>
  <summary>
    For each zip file analyzed by the SafeBrowsing download service, records
    true if the zip did not contain any executables but did contain another zip
    file, false otherwise.
  </summary>
</histogram>

<histogram name="SBClientDownload.ZipFileHasExecutable" enum="Boolean">
  <owner>mattm@chromium.org</owner>
  <summary>
    For each zip file analyzed by the SafeBrowsing download service, records if
    the zip contained an executable file.
  </summary>
</histogram>

<histogram name="SBClientDownload.ZipFileSuccess" enum="BooleanSuccess">
  <owner>nparker@chromium.org</owner>
  <summary>
    For each zip file analyzed by the SafeBrowsing download service, records if
    the unpacking was 100% successful.
  </summary>
</histogram>

<histogram name="SBClientMalware.ClassificationStart" enum="BooleanHit">
  <owner>noelutz@chromium.org</owner>
  <summary>
    The number of pages that we could have possibly classified (essentially the
    number of top page navigations by users with SBClientMalware enabled). The
    name is slightly misleading as it is recorded before
    &quot;Preclassification&quot; happens.
  </summary>
</histogram>

<histogram name="SBClientMalware.IPBlacklistRequestNetError"
    enum="NetErrorCodes">
  <owner>noelutz@chromium.org</owner>
  <summary>
    The net error code for all ClientMalwareRequest URLFetchers.
  </summary>
</histogram>

<histogram name="SBClientMalware.IPBlacklistRequestPayloadSize" units="bytes">
  <owner>noelutz@chromium.org</owner>
  <summary>
    The size of the upload data for ClientMalwareRequest URLFetchers.
  </summary>
</histogram>

<histogram name="SBClientMalware.IPBlacklistRequestResponseCode">
  <owner>noelutz@chromium.org</owner>
  <summary>
    For ClientMalwareRequest URLFetchers with successful status, the HTTP
    response code that was received.
  </summary>
</histogram>

<histogram name="SBClientMalware.PreClassificationCheckFail"
    enum="SBClientDetectionPreClassificationCheckFail">
  <owner>noelutz@chromium.org</owner>
  <summary>
    Records the number of malware classifications that were skipped because a
    pre-classification check failed.
  </summary>
</histogram>

<histogram name="SBClientMalware.ResourceUrlMatchedBadIp"
    enum="BooleanMatchedBadIp">
  <owner>jialiul@chromium.org</owner>
  <summary>
    True if at least one resource url matched the malware IP list. Recorded when
    client side malware feature extraction is done.
  </summary>
</histogram>

<histogram name="SBClientMalware.SentReports" enum="SBClientMalwareSentReports">
  <owner>noelutz@chromium.org</owner>
  <summary>
    Measures the success rate of sending malware reports.  Sending a report can
    fail due to a client reaching the limit on the number of reports it can send
    per day or due to the report failing to be serialized.
  </summary>
</histogram>

<histogram name="SBClientMalware.ServerDeterminesMalware"
    enum="BooleanIsMalware">
  <owner>jialiul@chromium.org</owner>
  <summary>The counts for malware verdicts given by server side model.</summary>
</histogram>

<histogram name="SBClientMalware.UnexpectedPageId" enum="BooleanHit">
  <owner>noelutz@chromium.org</owner>
  <obsolete>
    Deprecated 03/2014.  That part of the code got deleted.
  </obsolete>
  <summary>
    Counts the number of times the page ID that completed the page load does not
    match the browse info page ID.  We expect that number to be zero.
  </summary>
</histogram>

<histogram name="SBClientPhishing.CancelClassificationReason"
    enum="SBClientPhishingCancelClassificationReason">
  <owner>nparker@chromium.org</owner>
  <summary>
    The counts for various reasons why an in-progress phishing classification
    was canceled.
  </summary>
</histogram>

<histogram name="SBClientPhishing.CheckNoPendingClassificationFailed">
  <owner>noelutz@chromium.org</owner>
  <obsolete>
    Removed in M47.
  </obsolete>
  <summary>
    The number of times client-side phishing classifier expected to have no
    pending classifications running but that check failed.
  </summary>
</histogram>

<histogram name="SBClientPhishing.ClassificationStart" enum="BooleanHit">
  <owner>noelutz@chromium.org</owner>
  <summary>
    The number of pages that we could have possibly classified (essentially the
    number of top page navigations by users with SBClientPhishing enabled). The
    name is slightly misleading as it is recorded before
    &quot;Preclassification&quot; happens.
  </summary>
</histogram>

<histogram name="SBClientPhishing.ClientDeterminesPhishing"
    enum="BooleanIsPhishing">
  <owner>jialiul@chromium.org</owner>
  <summary>
    The counts for phishing verdicts given by client side model.
  </summary>
</histogram>

<histogram name="SBClientPhishing.ClientModelDownloadResponseOrErrorCode"
    enum="CombinedHttpResponseAndNetErrorCode">
  <owner>vakh@google.com</owner>
  <summary>
    Response or error codes from the SafeBrowsing service. Logged after a
    request for the client side model finishes to capture the response code or
    the error code for that HTTP request.
  </summary>
</histogram>

<histogram name="SBClientPhishing.ClientModelStatus"
    enum="SBClientPhishingClientModelStatus">
  <owner>nparker@chromium.org</owner>
  <summary>
    The counts for various model status codes that we get after loading a new
    client-side phishing model.
  </summary>
</histogram>

<histogram name="SBClientPhishing.DOMFeatureChunkTime" units="ms">
  <owner>gab@chromium.org</owner>
  <summary>
    The time that an individual chunk of DOM feature extraction work took.
  </summary>
</histogram>

<histogram name="SBClientPhishing.DOMFeatureFrameRemoved">
  <owner>gab@chromium.org</owner>
  <summary>
    The number of times that DOM feature extraction finished early because the
    active WebDocument's frame was removed during traversal.
  </summary>
</histogram>

<histogram name="SBClientPhishing.DOMFeatureIterations">
  <owner>gab@chromium.org</owner>
  <summary>
    The number of iterations that the DOM feature extractor took to finish.
  </summary>
</histogram>

<histogram name="SBClientPhishing.DOMFeatureResumeTime" units="ms">
  <owner>gab@chromium.org</owner>
  <summary>
    The time that it took to resume DOM feature extraction for the phishing
    classifier.  Longer times may indicate that the page DOM changed between
    chunks of work and the extractor had to re-traverse up to the saved
    position.
  </summary>
</histogram>

<histogram name="SBClientPhishing.DOMFeatureTimeout">
  <owner>gab@chromium.org</owner>
  <summary>
    The number of phishing classifications that were aborted because DOM feature
    extraction took too long.
  </summary>
</histogram>

<histogram name="SBClientPhishing.DOMFeatureTotalTime" units="ms">
  <owner>gab@chromium.org</owner>
  <summary>
    The time that the DOM feature extarctor took to finish, summed across all
    chunks of work.
  </summary>
</histogram>

<histogram name="SBClientPhishing.GrabPhishingThumbnail" units="ms">
  <owner>noelutz@chromium.org</owner>
  <obsolete>
    Removed in M47
  </obsolete>
  <summary>Time spent generating the thumbnail.</summary>
</histogram>

<histogram name="SBClientPhishing.IllegalFeatureValue">
  <owner>nparker@chromium.org</owner>
  <summary>
    The number of features which were omitted from phishing classification
    because they were added with an illegal value.  This would indicate a bug.
  </summary>
</histogram>

<histogram name="SBClientPhishing.InitPrivateNetworksFailed">
  <obsolete>
    Deprecated in Chrome 37, which now uses //net's internal matching.
  </obsolete>
  <owner>mattm@chromium.org</owner>
  <summary>
    The number of times that the phishing detection service could not be
    initialized due to an error parsing the private IP networks.  This would
    indicate a bug.
  </summary>
</histogram>

<histogram name="SBClientPhishing.InvalidWhitelistExpression">
  <obsolete>
    Deprecated 12/2011.  Whitelist entries are no longer part of
    ClientPhishingResponse.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The number of whitelist_expression entries in a ClientPhishingResponse that
    could not be canonicalized.
  </summary>
</histogram>

<histogram name="SBClientPhishing.PreClassificationCheckFail"
    enum="SBClientDetectionPreClassificationCheckFail">
  <owner>noelutz@chromium.org</owner>
  <summary>
    Records the number of phishing classifications that were skipped because a
    pre-classification check failed.
  </summary>
</histogram>

<histogram name="SBClientPhishing.ReportLimitSkipped" enum="BooleanHit">
  <owner>noelutz@chromium.org</owner>
  <summary>
    The number of phishing classifications that were previously cached as being
    phishing but that will get re-classified (to possibly fix false positives).
  </summary>
</histogram>

<histogram name="SBClientPhishing.RequestNotSerialized">
  <owner>noelutz@chromium.org</owner>
  <summary>
    The number of phishing classifier pingbacks that were skipped because
    serializing the request protocol buffer to string failed.
  </summary>
</histogram>

<histogram name="SBClientPhishing.RequestSatisfiedFromCache" enum="BooleanHit">
  <owner>noelutz@chromium.org</owner>
  <summary>
    The number of times that a cached phishing classification result was used,
    rather than pinging the server.
  </summary>
</histogram>

<histogram name="SBClientPhishing.ScorerCreationStatus"
    enum="SBClientPhishingScorerCreationStatus">
  <owner>noelutz@chromium.org</owner>
  <summary>
    Records the status when we create a scorer object for the client-side
    phishing detection classifier.
  </summary>
</histogram>

<histogram name="SBClientPhishing.ServerDeterminesPhishing"
    enum="BooleanIsPhishing">
  <owner>jialiul@chromium.org</owner>
  <summary>
    The counts for phishing verdicts given by server side model.
  </summary>
</histogram>

<histogram name="SBClientPhishing.SkipClassificationReason"
    enum="SBClientPhishingSkipClassificationReason">
  <owner>jialiul@chromium.org</owner>
  <summary>
    The counts for various reasons why a phishing classification is skipped.
  </summary>
</histogram>

<histogram name="SBClientPhishing.TermFeatureBreakIterError">
  <owner>noelutz@chromium.org</owner>
  <summary>
    The number of phishing classifications that were aborted because the term
    feature extractor failed to initialize an ICU break iterator.
  </summary>
</histogram>

<histogram name="SBClientPhishing.TermFeatureChunkTime" units="ms">
  <owner>noelutz@chromium.org</owner>
  <summary>
    The time that an individual chunk of term feature extraction work took.
  </summary>
</histogram>

<histogram name="SBClientPhishing.TermFeatureIterations">
  <owner>noelutz@chromium.org</owner>
  <summary>
    The number of iterations that the term feature extractor took to finish.
  </summary>
</histogram>

<histogram name="SBClientPhishing.TermFeatureTimeout">
  <owner>noelutz@chromium.org</owner>
  <summary>
    The number of phishing classification that were aborted because term feature
    extraction took too long.
  </summary>
</histogram>

<histogram name="SBClientPhishing.TermFeatureTotalTime" units="ms">
  <owner>noelutz@chromium.org</owner>
  <summary>
    The time that the term feature extarctor took to finish, summed across all
    chunks of work.
  </summary>
</histogram>

<histogram name="SBClientPhishing.TooManyFeatures">
  <owner>noelutz@chromium.org</owner>
  <summary>
    The number of times that the limit on the number of phishing classifier
    features for a page was reached.  This may indicate a bug, or that
    kMaxFeatureSize is too small.
  </summary>
</histogram>

<histogram name="SBClientPhishing.URLFeatureTime" units="ms">
  <owner>noelutz@chromium.org</owner>
  <summary>
    The time taken to extract URL features for the phishing classifier.
  </summary>
</histogram>

<histogram name="SBDownloadFeedback.Activations" enum="DownloadItem.DangerType">
  <owner>mattm@chromium.org</owner>
  <summary>
    Count of times download feedback has been started, broken down by danger
    type.
  </summary>
</histogram>

<histogram name="SBDownloadFeedback.ActiveFeedbacks">
  <owner>mattm@chromium.org</owner>
  <summary>
    When a new download feedback request is added, records the number of
    download requests currently active and/or pending.
  </summary>
</histogram>

<histogram name="SBDownloadFeedback.Eligible" enum="DownloadItem.DangerType">
  <owner>mattm@chromium.org</owner>
  <summary>
    Count of times eligible download notifications are shown. Broken down by
    danger type.
  </summary>
</histogram>

<histogram name="SBDownloadFeedback.Shown" enum="DownloadItem.DangerType">
  <obsolete>
    Starting with M32, replaced by SBDownloadFeedback.Eligible.
  </obsolete>
  <owner>mattm@chromium.org</owner>
  <summary>
    Count of times download feedback button has been shown, broken down by
    danger type.
  </summary>
</histogram>

<histogram name="SBDownloadFeedback.SizeEligibleKB" units="KB">
  <owner>mattm@chromium.org</owner>
  <summary>
    Size of downloads that were of the correct danger type, regardless if they
    meet the max file size check or if they are actually uploaded or not.
  </summary>
</histogram>

<histogram name="SBDownloadFeedback.SizeFailure" units="bytes">
  <owner>mattm@chromium.org</owner>
  <summary>
    Size of downloads that failed to be uploaded to the feedback service.
  </summary>
</histogram>

<histogram name="SBDownloadFeedback.SizeSuccess" units="bytes">
  <owner>mattm@chromium.org</owner>
  <summary>
    Size of downloads that were successfully uploaded to the feedback service.
  </summary>
</histogram>

<histogram name="SBDownloadFeedback.UploadResult"
    enum="SBDownloadFeedbackUploadResult">
  <owner>mattm@chromium.org</owner>
  <summary>
    Final result of attempt to upload binary to download feedback service.
  </summary>
</histogram>

<histogram name="SBIRS.BLAHashTime" units="ms">
  <owner>caitkp@google.com</owner>
  <summary>
    The elapsed time to compute the hash of a blacklisted module.
  </summary>
</histogram>

<histogram name="SBIRS.BLASignatureTime" units="ms">
  <owner>caitkp@google.com</owner>
  <summary>
    The elapsed time to validate the signature of a blacklisted module.
  </summary>
</histogram>

<histogram name="SBIRS.DiscardedIncident" enum="IncidentType">
  <owner>caitkp@google.com</owner>
  <summary>
    The type of incident discarded by the safe browsing incident reporting
    service as a result of profile or service destruction.
  </summary>
</histogram>

<histogram name="SBIRS.DownloadMetadata.DeleteSuccess" enum="BooleanSuccess">
  <owner>caitkp@chromium.org</owner>
  <summary>The result of deleting a profile's download metadata file.</summary>
</histogram>

<histogram name="SBIRS.DownloadMetadata.ReadResult" enum="MetadataReadResult">
  <owner>caitkp@chromium.org</owner>
  <summary>The result of reading a profile's download metadata file.</summary>
</histogram>

<histogram name="SBIRS.DownloadMetadata.WriteResult" enum="MetadataWriteResult">
  <owner>caitkp@chromium.org</owner>
  <summary>The result of writing a profile's download metadata file.</summary>
</histogram>

<histogram name="SBIRS.DroppedIncident" enum="IncidentType">
  <owner>caitkp@google.com</owner>
  <summary>
    The type of incident given to the safe browsing incident reporting service
    but dropped as a result of not participating in safe browsing.
  </summary>
</histogram>

<histogram name="SBIRS.EnvCollectionTime" units="ms">
  <owner>caitkp@google.com</owner>
  <summary>
    The elapsed time to collect environmental data for a safe browsing incident
    report.
  </summary>
</histogram>

<histogram name="SBIRS.FindDownloadedBinaryTime" units="ms">
  <owner>caitkp@google.com</owner>
  <summary>
    The elapsed time to find the most recent binary download from all loaded
    profiles when creating a safe browsing incident report.
  </summary>
</histogram>

<histogram name="SBIRS.Incident" enum="IncidentType">
  <owner>caitkp@google.com</owner>
  <summary>
    The type of incident included in an incident report by the safe browsing
    incident reporting service.
  </summary>
</histogram>

<histogram name="SBIRS.IncidentCount">
  <owner>caitkp@google.com</owner>
  <summary>
    The number of incidents collated into a single safe browsing incident
    report.
  </summary>
</histogram>

<histogram name="SBIRS.InterIncidentTime" units="ms">
  <owner>caitkp@google.com</owner>
  <summary>
    The elapsed time between two successive incidents collated into the same
    incident report by the safe browsing incident reporting service.
  </summary>
</histogram>

<histogram name="SBIRS.NoDownloadIncident" enum="IncidentType">
  <owner>caitkp@google.com</owner>
  <summary>
    The type of incident pruned by the safe browsing incident reporting service
    as a result of not having a matching binary download.
  </summary>
</histogram>

<histogram name="SBIRS.PrunedIncident" enum="IncidentType">
  <owner>caitkp@google.com</owner>
  <summary>
    The type of incident pruned from a report in the safe browsing incident
    reporting service as a result of having previously been reported.
  </summary>
</histogram>

<histogram name="SBIRS.PruneRatio" units="%">
  <owner>caitkp@google.com</owner>
  <obsolete>
    Deprecated 08/2015.
  </obsolete>
  <summary>
    The percentage of incidents pruned from a safe browsing incident report on
    account of having been previously reported.
  </summary>
</histogram>

<histogram name="SBIRS.PSSDataStoreSize" units="bytes">
  <owner>grt@google.com</owner>
  <summary>
    The size, in bytes, of a profile's platform state store. This hisogram is
    logged on each write, which always replaces any previous contents.
  </summary>
</histogram>

<histogram name="SBIRS.PSSLoadResult" enum="PlatformStateStoreLoadResult">
  <owner>grt@google.com</owner>
  <summary>The result of loading data from the platform state store.</summary>
</histogram>

<histogram name="SBIRS.ReceivedIncident" enum="IncidentType">
  <owner>caitkp@google.com</owner>
  <summary>
    The type of incident received by the safe browsing incident reporting
    service.
  </summary>
</histogram>

<histogram name="SBIRS.ReportPayloadSize" units="bytes">
  <owner>caitkp@google.com</owner>
  <summary>The size, in bytes, of a safe browsing incident report.</summary>
</histogram>

<histogram name="SBIRS.ReportUploadTime" units="ms">
  <owner>caitkp@google.com</owner>
  <summary>The elapsed time to upload a safe browsing incident report.</summary>
</histogram>

<histogram name="SBIRS.StateStoreInitResult" enum="StateStoreInitResult">
  <owner>proberge@google.com</owner>
  <summary>
    The result of initializing the state store and comparing the preferences to
    the platform-specific state store.
  </summary>
</histogram>

<histogram name="SBIRS.SuspiciousModuleDetectionTime" units="ms">
  <owner>proberge@google.com</owner>
  <summary>
    The elapsed time to check loaded modules against the module whitelist.
  </summary>
</histogram>

<histogram name="SBIRS.SuspiciousModuleReportCount" units="modules">
  <owner>proberge@google.com</owner>
  <summary>The number of suspicious modules found.</summary>
</histogram>

<histogram name="SBIRS.SuspiciousModuleReportingTime" units="ms">
  <owner>proberge@google.com</owner>
  <summary>
    The elapsed time to create incidents for suspicious modules.
  </summary>
</histogram>

<histogram name="SBIRS.UploadResult" enum="ReportProcessingResult">
  <owner>caitkp@google.com</owner>
  <summary>
    The result of an attempted report upload by the safe browsing incident
    reporting service.
  </summary>
</histogram>

<histogram name="SBIRS.VerifyBinaryIntegrity.0" units="ms">
  <owner>caitkp@google.com</owner>
  <summary>
    The elapsed time to verify the binary integrity of chrome.exe.
  </summary>
</histogram>

<histogram name="SBIRS.VerifyBinaryIntegrity.1" units="ms">
  <owner>caitkp@google.com</owner>
  <summary>
    The elapsed time to verify the binary integrity of chrome.dll.
  </summary>
</histogram>

<histogram name="SBIRS.VerifyBinaryIntegrity.2" units="ms">
  <owner>caitkp@google.com</owner>
  <summary>
    The elapsed time to verify the binary integrity of chrome_child.dll.
  </summary>
</histogram>

<histogram name="SBIRS.VerifyBinaryIntegrity.3" units="ms">
  <owner>caitkp@google.com</owner>
  <summary>
    The elapsed time to verify the binary integrity of chrome_elf.dll.
  </summary>
</histogram>

<histogram name="SBOffDomainInclusion.Abort" enum="ContentResourceType">
  <obsolete>
    Superseded by SBOffDomainInclusion2.Abort in December 2015.
  </obsolete>
  <owner>gab@chromium.org</owner>
  <summary>
    Logs the resource type of each resource request for which the off-domain
    inclusion analysis was aborted. This histogram is suffixed with the abort
    reason.
  </summary>
</histogram>

<histogram name="SBOffDomainInclusion.Detected" enum="ContentResourceType">
  <obsolete>
    Deprecated 01/2015.
  </obsolete>
  <owner>gab@chromium.org</owner>
  <summary>
    Logs the resource type of each resource request for which an off-domain
    inclusion was detected by the OffDomainInclusionDetector.
  </summary>
</histogram>

<histogram name="SBOffDomainInclusion.EmptyMainFrameURL"
    enum="ContentResourceType">
  <obsolete>
    Deprecated 01/2015. Moved to SBOffDomainInclusion.Abort.EmptyMainFrameURL.
  </obsolete>
  <owner>gab@chromium.org</owner>
  <summary>
    Logs the resource type of each resource request for which the main frame URL
    was unexpectedly empty in the OffDomainInclusionDetector.
  </summary>
</histogram>

<histogram name="SBOffDomainInclusion.InHistory" enum="ContentResourceType">
  <obsolete>
    Superseded by SBOffDomainInclusion2.InHistory in December 2015.
  </obsolete>
  <owner>gab@chromium.org</owner>
  <summary>
    Logs the resource type of each resource request for which the off-domain
    inclusion analysis concluded in no inclusion whitelist hit but a browsing
    history hit.
  </summary>
</histogram>

<histogram name="SBOffDomainInclusion.InvalidMainFrameURL"
    enum="ContentResourceType">
  <obsolete>
    Deprecated 01/2015 (was never reported, confirming experiment that handling
    it is irrelevant).
  </obsolete>
  <owner>gab@chromium.org</owner>
  <summary>
    Logs the resource type of each resource request for which the main frame URL
    was unexpectedly invalid (and not empty) in the OffDomainInclusionDetector.
  </summary>
</histogram>

<histogram name="SBOffDomainInclusion.RequestAnalyzed"
    enum="ContentResourceType">
  <obsolete>
    Superseded by SBOffDomainInclusion2.RequestAnalyzed in December 2015.
  </obsolete>
  <owner>gab@chromium.org</owner>
  <summary>
    Logs the resource type of each resource request analyzed by the
    OffDomainInclusionDetector.
  </summary>
</histogram>

<histogram name="SBOffDomainInclusion.Suspicious" enum="ContentResourceType">
  <obsolete>
    Superseded by SBOffDomainInclusion2.Suspicious in December 2015.
  </obsolete>
  <owner>gab@chromium.org</owner>
  <summary>
    Logs the resource type of each resource request for which an off-domain
    inclusion was detected by the OffDomainInclusionDetector and considered
    suspicious.
  </summary>
</histogram>

<histogram name="SBOffDomainInclusion.Whitelisted" enum="ContentResourceType">
  <obsolete>
    Superseded by SBOffDomainInclusion2.Suspicious in December 2015.
  </obsolete>
  <owner>gab@chromium.org</owner>
  <summary>
    Logs the resource type of each resource request for which the off-domain
    inclusion analysis concluded in an inclusion whitelist hit.
  </summary>
</histogram>

<histogram name="SBOffDomainInclusion2.Abort" enum="ContentResourceType2">
  <obsolete>
    Deprecated 2016-05 as the OffDomainInclusionDetector was removed.
  </obsolete>
  <owner>gab@chromium.org</owner>
  <summary>
    Logs the resource type of each resource request for which the off-domain
    inclusion analysis was aborted. This histogram is suffixed with the abort
    reason.
  </summary>
</histogram>

<histogram name="SBOffDomainInclusion2.InHistory" enum="ContentResourceType2">
  <obsolete>
    Deprecated 2016-05 as the OffDomainInclusionDetector was removed.
  </obsolete>
  <owner>gab@chromium.org</owner>
  <summary>
    Logs the resource type of each resource request for which the off-domain
    inclusion analysis concluded in no inclusion whitelist hit but a browsing
    history hit.
  </summary>
</histogram>

<histogram name="SBOffDomainInclusion2.RequestAnalyzed"
    enum="ContentResourceType2">
  <obsolete>
    Deprecated 2016-05 as the OffDomainInclusionDetector was removed.
  </obsolete>
  <owner>gab@chromium.org</owner>
  <summary>
    Logs the resource type of each resource request analyzed by the
    OffDomainInclusionDetector.
  </summary>
</histogram>

<histogram name="SBOffDomainInclusion2.Suspicious" enum="ContentResourceType2">
  <obsolete>
    Deprecated 2016-05 as the OffDomainInclusionDetector was removed.
  </obsolete>
  <owner>gab@chromium.org</owner>
  <summary>
    Logs the resource type of each resource request for which an off-domain
    inclusion was detected by the OffDomainInclusionDetector and considered
    suspicious.
  </summary>
</histogram>

<histogram name="SBOffDomainInclusion2.Whitelisted" enum="ContentResourceType2">
  <obsolete>
    Deprecated 2016-05 as the OffDomainInclusionDetector was removed.
  </obsolete>
  <owner>gab@chromium.org</owner>
  <summary>
    Logs the resource type of each resource request for which the off-domain
    inclusion analysis concluded in an inclusion whitelist hit.
  </summary>
</histogram>

<histogram name="Scheduling.ActivateDuration" units="microseconds">
  <owner>brianderson@chromium.org</owner>
  <summary>
    How long it takes for the compositor to activate the pending tree.
  </summary>
</histogram>

<histogram name="Scheduling.BeginMainFrameIntervalCritical"
    units="microseconds">
  <owner>brianderson@chromium.org</owner>
  <summary>
    This is the time delta between back-to-back BeginMainFrames completions on
    the compositor side when the on_critical_path flag is set, regardless of
    whether they abort (have no updates) or commit (have updates).

    The interval is only recorded when the BeginMainFrames are running
    continuously; sepcifically when another BeginMainFrame is requested by the
    next BeginImplFrame after a) an abort or b) activation.
  </summary>
</histogram>

<histogram name="Scheduling.BeginMainFrameIntervalNotCritical"
    units="microseconds">
  <owner>brianderson@chromium.org</owner>
  <summary>
    This is the time delta between back-to-back BeginMainFrames completions on
    the compositor side when the on_critical_path flag is not set, regardless of
    whether they abort (have no updates) or commit (have updates).

    The interval is only recorded when the BeginMainFrames are running
    continuously; sepcifically when another BeginMainFrame is requested by the
    next BeginImplFrame after a) an abort or b) activation.
  </summary>
</histogram>

<histogram name="Scheduling.BeginMainFrameQueueDurationCritical"
    units="microseconds">
  <owner>brianderson@chromium.org</owner>
  <summary>
    How long it takes for the main side to start the BeginMainFrame in response
    to the compositor's SendBeginMainFrame when the on_critical_path flag is
    set.
  </summary>
</histogram>

<histogram name="Scheduling.BeginMainFrameQueueDurationNotCritical"
    units="microseconds">
  <owner>brianderson@chromium.org</owner>
  <summary>
    How long it takes for the main side to start the BeginMainFrame in response
    to the compositor's SendBeginMainFrame when the on_critical_path flag is not
    set.
  </summary>
</histogram>

<histogram name="Scheduling.BeginMainFrameStartToCommitDuration"
    units="microseconds">
  <owner>brianderson@chromium.org</owner>
  <summary>
    The time from when the main side actually starts the BeginMainFrame to when
    the commit completes on the impl side.
  </summary>
</histogram>

<histogram name="Scheduling.BeginMainFrameToCommitDuration"
    units="microseconds">
  <owner>brianderson@chromium.org</owner>
  <summary>
    How long it takes for the blink main thread to respond to the compositor's
    SendBeginMainFrame.
  </summary>
</histogram>

<histogram name="Scheduling.CommitInterval" units="microseconds">
  <owner>brianderson@chromium.org</owner>
  <summary>
    The time delta between the *draw* times of back-to-back BeginMainFrames that
    result in a commit.

    The interval is only recorded when the BeginMainFrames are running and
    committing continuously, where continuously means when another
    BeginMainFrame is requested by the next BeginImplFrame after activation.
  </summary>
</histogram>

<histogram name="Scheduling.CommitToReadyToActivateDuration"
    units="microseconds">
  <owner>brianderson@chromium.org</owner>
  <summary>
    How long it takes for the compositor to rasterize pending tree content after
    a commit before it is ready for activation.
  </summary>
</histogram>

<histogram name="Scheduling.DrawDuration" units="microseconds">
  <owner>brianderson@chromium.org</owner>
  <summary>How long it takes the compositor to draw a frame.</summary>
</histogram>

<histogram name="Scheduling.DrawInterval" units="microseconds">
  <owner>brianderson@chromium.org</owner>
  <summary>
    The time delta between the draw times of back-to-back BeginImplFrames,
    regardless of whether or not they result in a swap.

    The interval is only recorded when every BeginImplFrame wants to draw.
  </summary>
</histogram>

<histogram name="Scheduling.MainAndImplFrameTimeDelta" units="microseconds">
  <owner>brianderson@chromium.org</owner>
  <summary>
    Recorded every time the compositor draws with a new active tree. A value of
    0 indicates the main-side started and finished within the same frame
    interval as the impl-side. Positive values correspond to how old any
    main-side updates are compared to the impl-side updates. If there are no
    mid-frame updates, this metric is a good proxy for how well the main and
    impl threads are synchronized.
  </summary>
</histogram>

<histogram name="Scheduling.PrepareTilesDuration" units="microseconds">
  <owner>brianderson@chromium.org</owner>
  <summary>
    How long it takes the compositor to PreapreTiles, which determines what
    rasterization work to do.
  </summary>
</histogram>

<histogram name="Scheduling.SwapToAckLatency" units="microseconds">
  <owner>brianderson@chromium.org</owner>
  <summary>How long it takes the swap ack to return after a swap.</summary>
</histogram>

<histogram name="Sdch3.AdvertisedWithSecureScheme" enum="BooleanHttps">
  <obsolete>
    Experiment complete, histogram gathering code removed.
  </obsolete>
  <owner>ellyjones@chromium.org</owner>
  <summary>
    Whether an SDCH dictionary was advertised over a secure scheme or not. This
    histogram is logged inside SdchManager at advertisement time.
  </summary>
</histogram>

<histogram name="Sdch3.Advertisement_Count">
  <owner>rdsmith@chromium.org</owner>
  <summary>
    The number of dictionaries advertised in an HTTP GET transaction that
    supports SDCH.  Note that only non-zero advertisements are logged.
  </summary>
</histogram>

<histogram name="Sdch3.BlacklistReason" enum="SdchProblemCode">
  <owner>rdsmith@chromium.org</owner>
  <summary>
    The reason why a blacklist blocking a request from advertising SDCH was
    implemented.  There is one entry in this histogram per inhibited request.
  </summary>
</histogram>

<histogram name="Sdch3.Dictionary size loaded" units="bytes">
  <owner>rdsmith@chromium.org</owner>
  <summary>
    Each sample is the byte count for a dictionary that is loaded by Chrome. A
    dictionary is loaded shortly after the first Google query performed in each
    session, and allows future SDCH transactions to be encoded/decoded using
    that dictionary.
  </summary>
</histogram>

<histogram name="Sdch3.DictionaryFate" enum="SdchDictionaryFate">
  <owner>rdsmith@chromium.org&gt;</owner>
  <summary>
    The fate, both on input and output, of dictionary requests.  There is
    intended to be two entries in this histogram for each Get-Dictionary seen
    (except failed requests are not currently tracked).
  </summary>
</histogram>

<histogram name="Sdch3.DictionaryUseCount">
  <owner>rdsmith@chromium.org</owner>
  <summary>
    The number of times a dictionary has been successfully used for decoding,
    recorded at the time it is evicted from the manager.
  </summary>
</histogram>

<histogram name="Sdch3.Experiment2_Decode">
  <obsolete>
    Replaced by Sdch3.Experiment3_Holdback.
  </obsolete>
  <owner>rdsmith@chromium.org</owner>
  <summary>
    Duration in time from when a request was made, until all bytes were
    received.  During the running of an SDCH latency experiment, these packets
    were part of an SDCH encoded transmission made after the link had proven it
    was capable of handling SDCH compression.
  </summary>
</histogram>

<histogram name="Sdch3.Experiment2_Holdback">
  <obsolete>
    Replaced by Sdch3.Experiment3_Holdback.
  </obsolete>
  <owner>rdsmith@chromium.org</owner>
  <summary>
    Duration in time from when a request was made, until all bytes were
    received.  During the running of an SDCH latency experiment, these packets
    were part of a holdback, which precluded SDCH despite the fact that the link
    had proven it was capable of handling SDCH compression.
  </summary>
</histogram>

<histogram name="Sdch3.Experiment3_Decode">
  <owner>rdsmith@chromium.org</owner>
  <summary>
    Duration in time from the first byte of a request was received, until all
    bytes were received.  During the running of an SDCH latency experiment,
    these packets were part of an SDCH encoded transmission made after the link
    had proven it was capable of handling SDCH compression.
  </summary>
</histogram>

<histogram name="Sdch3.Experiment3_Holdback">
  <owner>rdsmith@chromium.org</owner>
  <summary>
    Duration in time from the first byte of a request was received, until all
    bytes were received.  During the running of an SDCH latency experiment,
    these packets were part of a holdback, which precluded SDCH despite the fact
    that the link had proven it was capable of handling SDCH compression.
  </summary>
</histogram>

<histogram name="Sdch3.Experiment_Decode">
  <obsolete>
    Replaced by Sdch3.Experiment2_Decode.
  </obsolete>
  <owner>rdsmith@chromium.org</owner>
  <summary>
    Duration in time from when a request was made, until all bytes were
    received.  During the running of an SDCH latency experiment, these packets
    were part of an SDCH encoded transmission made after the link had proven it
    was capable of handling SDCH compression.
  </summary>
</histogram>

<histogram name="Sdch3.Experiment_Holdback">
  <obsolete>
    Replaced by Sdch3.Experiment2_Holdback.
  </obsolete>
  <owner>rdsmith@chromium.org</owner>
  <summary>
    Duration in time from when a request was made, until all bytes were
    received.  During the running of an SDCH latency experiment, these packets
    were part of a holdback, which precluded SDCH despite the fact that the link
    had proven it was capable of handling SDCH compression.
  </summary>
</histogram>

<histogram name="Sdch3.Experiment_Holdback_1st_To_2nd_c" units="ms">
  <owner>rdsmith@chromium.org</owner>
  <summary>
    Sampling only transmissions with 5 or more packets, the duration between
    receipt of the 1st **NON**-SDCH encoded packet to receipt of the 2nd packet,
    for processing by the SDCH filter.  Packet count boundaries are calculated
    each time a read from the filter is called, assuming 1430 bytes of data per
    packet since the last boundary calculation.  This *tends* to properly count
    small packets, but can err if small packets come at roughly the same time.
    During the running of an SDCH latency experiment, these packets were part of
    a holdback, which precluded SDCH despite the fact that the link had proven
    it was capable of handling SDCH compression.
  </summary>
</histogram>

<histogram name="Sdch3.Experiment_Holdback_1st_To_Last_a" units="ms">
  <owner>rdsmith@chromium.org</owner>
  <summary>
    The duration between receipt of the 1st holdback (non-SDCH encoded) packet
    and receipt of the last packet.  Only groups that are part of the holdback
    (i.e., could have been sdch encoded) are sampled.
  </summary>
</histogram>

<histogram name="Sdch3.Experiment_Holdback_2nd_To_3rd_c" units="ms">
  <owner>rdsmith@chromium.org</owner>
  <summary>
    Sampling only transmissions with 5 or more packets, the duration between
    receipt of the 2nd **NON**-SDCH encoded packet to receipt of the 3rd packet,
    for processing by the SDCH filter.  Packet count boundaries are calculated
    each time a read from the filter is called, assuming 1430 bytes of data per
    packet since the last boundary calculation.  This *tends* to properly count
    small packets, but can err if small packets come at roughly the same time.
    During the running of an SDCH latency experiment, these packets were part of
    a holdback, which precluded SDCH despite the fact that the link had proven
    it was capable of handling SDCH compression.
  </summary>
</histogram>

<histogram name="Sdch3.Experiment_Holdback_3rd_To_4th_c" units="ms">
  <owner>rdsmith@chromium.org</owner>
  <summary>
    Sampling only transmissions with 5 or more packets, the duration between
    receipt of the 3rd **NON**-SDCH encoded packet to receipt of the 4th packet,
    for processing by the SDCH filter.  Packet count boundaries are calculated
    each time a read from the filter is called, assuming 1430 bytes of data per
    packet since the last boundary calculation.  This *tends* to properly count
    small packets, but can err if small packets come at roughly the same time.
    During the running of an SDCH latency experiment, these packets were part of
    a holdback, which precluded SDCH despite the fact that the link had proven
    it was capable of handling SDCH compression.
  </summary>
</histogram>

<histogram name="Sdch3.Experiment_Holdback_4th_To_5th_c" units="ms">
  <owner>rdsmith@chromium.org</owner>
  <summary>
    Sampling only transmissions with 5 or more packets, the duration between
    receipt of the 4th **NON**-SDCH encoded packet to receipt of the 5th packet,
    for processing by the SDCH filter.  Packet count boundaries are calculated
    each time a read from the filter is called, assuming 1430 bytes of data per
    packet since the last boundary calculation.  This *tends* to properly count
    small packets, but can err if small packets come at roughly the same time.
    During the running of an SDCH latency experiment, these packets were part of
    a holdback, which precluded SDCH despite the fact that the link had proven
    it was capable of handling SDCH compression.
  </summary>
</histogram>

<histogram name="Sdch3.FilterUseBeforeDisabling">
  <owner>rdsmith@chromium.org</owner>
  <summary>
    If SDCH decoding was disabled client side, this records how many URLs were
    processed by the SDCH filter before disabling this feature.  The most common
    number is 1, which happens when there is one home-page tab that contains
    SDCH encoded data, for which there is no dictionary loaded into the Chrome
    process (yet), since Chrome was just restarted.  Large values in this
    histogram are indicative of flaky decompression, that works for a while, and
    then is disabled.  Values of 2 or 3 may appear if a user has more than one
    home page with a query, and restarts there browser.
  </summary>
</histogram>

<histogram name="Sdch3.FirstUseInterval" units="ms">
  <owner>rdsmith@chromium.org</owner>
  <summary>
    The amount of time between creation/load of an SDCH dictionary and its first
    use.
  </summary>
</histogram>

<histogram name="Sdch3.Network_Decode_1st_To_2nd_c" units="ms">
  <owner>rdsmith@chromium.org</owner>
  <summary>
    Sampling only transmissions with 5 or more packets, the duration between
    receipt of the 1st SDCH encoded packet and receipt of the 2nd packet, for
    processing by the SDCH filter.  Packet count boundaries are calculated each
    time a read from the filter is called, assuming 1430 bytes of data per
    packet since the last boundary calculation.  This *tends* to properly count
    small packets, but can err if small packets come at roughly the same time.
  </summary>
</histogram>

<histogram name="Sdch3.Network_Decode_1st_To_Last_a" units="ms">
  <owner>rdsmith@chromium.org</owner>
  <summary>
    The duration between receipt of the 1st SDCH encoded packet and receipt of
    the last packet, for processing by the SDCH filter.
  </summary>
</histogram>

<histogram name="Sdch3.Network_Decode_2nd_To_3rd_c" units="ms">
  <owner>rdsmith@chromium.org</owner>
  <summary>
    Sampling only transmissions with 5 or more packets, the duration between
    receipt of the 2nd SDCH encoded packet and receipt of the 3rd packet, for
    processing by the SDCH filter.  Packet count boundaries are calculated each
    time a read from the filter is called, assuming 1430 bytes of data per
    packet since the last boundary calculation.  This *tends* to properly count
    small packets, but can err if small packets come at roughly the same time.
  </summary>
</histogram>

<histogram name="Sdch3.Network_Decode_3rd_To_4th_c" units="ms">
  <owner>rdsmith@chromium.org</owner>
  <summary>
    Sampling only transmissions with 5 or more packets, the duration between
    receipt of the 3rd SDCH encoded packet and receipt of the 4th packet, for
    processing by the SDCH filter. Packet count boundaries are calculated each
    time a read from the filter is called, assuming 1430 bytes of data per
    packet since the last boundary calculation.  This *tends* to properly count
    small packets, but can err if small packets come at roughly the same time.
  </summary>
</histogram>

<histogram name="Sdch3.Network_Decode_4th_To_5th_c" units="ms">
  <owner>rdsmith@chromium.org</owner>
  <summary>
    Sampling only transmissions with 5 or more packets, the duration between
    receipt of the 4th SDCH encoded packet and receipt of the 5th packet, for
    processing by the SDCH filter. Packet count boundaries are calculated each
    time a read from the filter is called, assuming 1430 bytes of data per
    packet since the last boundary calculation.  This *tends* to properly count
    small packets, but can err if small packets come at roughly the same time.
  </summary>
</histogram>

<histogram name="Sdch3.Network_Decode_Bytes_Processed_a" units="bytes">
  <owner>rdsmith@chromium.org</owner>
  <summary>
    (discontinued 7/29/2009, and replaced by
    Sdch3.Network_Decode_Bytes_Processed_b) The number of bytes processed
    (received over the net or from cache) by the SDCH filter chain.
  </summary>
</histogram>

<histogram name="Sdch3.Network_Decode_Bytes_Processed_b" units="bytes">
  <owner>rdsmith@chromium.org</owner>
  <summary>
    The number of bytes processed (received over the net or from cache) by the
    SDCH filter chain.
  </summary>
</histogram>

<histogram name="Sdch3.Network_Decode_Bytes_VcdiffOut_a" units="bytes">
  <owner>rdsmith@chromium.org</owner>
  <summary>
    The number of bytes emitted after decoding by the SDCH filter.
  </summary>
</histogram>

<histogram name="Sdch3.Network_Decode_Latency_F_a" units="ms">
  <owner>rdsmith@chromium.org</owner>
  <summary>
    The duration between putting the first byte of a request (such as a GET) on
    the wire, until the last by of compressed SDCH encoded content is received
    (with durations over 10 minutes discarded).  During a planned latency
    experiment, some clients will receive encoded SDCH data, and other will
    received mere gzip'ed data (that passes through the SDCH filter unchanged).
  </summary>
</histogram>

<histogram name="Sdch3.Network_Decode_Packets_b">
  <owner>rdsmith@chromium.org</owner>
  <summary>
    An approximation to the total number of SDCH encoded packets received for
    processing by the SDCH filter. Packet count boundaries are calculated each
    time a read from the filter is called, assuming 1430 bytes of data per
    packet since the last boundary calculation.  This *tends* to properly count
    small packets, but can err if small packets come at roughly the same time.
  </summary>
</histogram>

<histogram name="Sdch3.Network_Decode_Ratio_a" units="bytes">
  <owner>rdsmith@chromium.org</owner>
  <summary>
    The ratio of the number of bytes read from the network (or cache) and fed to
    the filter chain (usually the gunzip filter) vs. the number of bytes emitted
    by the SDCH filter to be rendered.  This is commonly described as the SDCH
    compression ratio.
  </summary>
</histogram>

<histogram name="Sdch3.Network_Pass-through_1st_To_2nd_c" units="ms">
  <owner>rdsmith@chromium.org</owner>
  <summary>
    Sampling only transmissions with 5 or more packets, the duration between
    receipt of the 1st **NON**-SDCH encoded packet to receipt of the 2nd packet,
    for processing by the SDCH filter.  Packet count boundaries are calculated
    each time a read from the filter is called, assuming 1430 bytes of data per
    packet since the last boundary calculation.  This *tends* to properly count
    small packets, but can err if small packets come at roughly the same time.
  </summary>
</histogram>

<histogram name="Sdch3.Network_Pass-through_1st_To_Last_a" units="ms">
  <owner>rdsmith@chromium.org</owner>
  <summary>
    The duration between receipt of the 1st **NON**-SDCH encoded packet to
    receipt of the last packet, for processing by the SDCH filter.
  </summary>
</histogram>

<histogram name="Sdch3.Network_Pass-through_2nd_To_3rd_c" units="ms">
  <owner>rdsmith@chromium.org</owner>
  <summary>
    Sampling only transmissions with 5 or more packets, the duration between
    receipt of the 2nd **NON**-SDCH encoded packet to receipt of the 3rd packet,
    for processing by the SDCH filter.  Packet count boundaries are calculated
    each time a read from the filter is called, assuming 1430 bytes of data per
    packet since the last boundary calculation.  This *tends* to properly count
    small packets, but can err if small packets come at roughly the same time.
  </summary>
</histogram>

<histogram name="Sdch3.Network_Pass-through_3rd_To_4th_c" units="ms">
  <owner>rdsmith@chromium.org</owner>
  <summary>
    Sampling only transmissions with 5 or more packets, the duration between
    receipt of the 3rd **NON**-SDCH encoded packet to receipt of the 4th packet,
    for processing by the SDCH filter.  Packet count boundaries are calculated
    each time a read from the filter is called, assuming 1430 bytes of data per
    packet since the last boundary calculation.  This *tends* to properly count
    small packets, but can err if small packets come at roughly the same time.
  </summary>
</histogram>

<histogram name="Sdch3.Network_Pass-through_4th_To_5th_c" units="ms">
  <owner>rdsmith@chromium.org</owner>
  <summary>
    Sampling only transmissions with 5 or more packets, the duration between
    receipt of the 4th **NON**-SDCH encoded packet to receipt of the 5th packet,
    for processing by the SDCH filter.  Packet count boundaries are calculated
    each time a read from the filter is called, assuming 1430 bytes of data per
    packet since the last boundary calculation.  This *tends* to properly count
    small packets, but can err if small packets come at roughly the same time.
  </summary>
</histogram>

<histogram name="Sdch3.Network_Pass-through_Latency_F_a" units="ms">
  <owner>rdsmith@chromium.org</owner>
  <summary>
    The duration between putting the first byte of a request (such as a GET) on
    the wire, until the last by gzip compressed content is received and
    passed-through unchanged by the SDCH filter (with durations over 10 minutes
    discarded).  During a planned latency experiment, some clients will receive
    encoded SDCH data, and other will received mere gzip'ed data (that passes
    through the SDCH filter unchanged).
  </summary>
</histogram>

<histogram name="Sdch3.Network_Pass-through_Packets_b">
  <owner>rdsmith@chromium.org</owner>
  <summary>
    The total number of **NON**-SDCH encoded packets received for processing by
    the SDCH filter in one URL fetch. Packet count boundaries are calculated
    each time a read from the filter is called, assuming 1430 bytes of data per
    packet since the last boundary calculation.  This *tends* to properly count
    small packets, but can err if small packets come at roughly the same time.
  </summary>
</histogram>

<histogram name="Sdch3.NetworkBytesSavedByCompression" units="bytes">
  <owner>ellyjones@chromium.org</owner>
  <summary>
    The absolute difference in bytes between the amount of data entering the
    SDCH filter and the amount of data exiting the SDCH filter.
  </summary>
</histogram>

<histogram name="Sdch3.NetworkBytesSpent" units="bytes">
  <owner>ellyjones@chromium.org</owner>
  <summary>
    Absolute sizes, in bytes, of SDCH dictionaries fetched over the network.
    These are logged in SdchOwner when dictionary fetches complete.
  </summary>
</histogram>

<histogram name="Sdch3.PartialBytesIn" units="bytes">
  <owner>rdsmith@chromium.org</owner>
  <summary>
    If/when a ProblemCode INCOMPLETE_SDCH_CONTENT reports that the VCDIFF
    decoder still has internally buffered data that has never been read, this
    histogram reports the number of bytes that were received over the net (or
    from the cache) and fed to the start of the filter chain (usually to the
    gunzip filter).
  </summary>
</histogram>

<histogram name="Sdch3.PartialVcdiffIn" units="bytes">
  <owner>rdsmith@chromium.org</owner>
  <summary>
    If/when a ProblemCode INCOMPLETE_SDCH_CONTENT reports that the VCDIFF
    decoder still has internally buffered data that has never been read, this
    histogram reports the number of bytes that were received over the net (or
    from the cache) and fed to VCDIFF decoder (usually after gunzipping).
  </summary>
</histogram>

<histogram name="Sdch3.PartialVcdiffOut" units="bytes">
  <owner>rdsmith@chromium.org</owner>
  <summary>
    If/when a ProblemCode INCOMPLETE_SDCH_CONTENT reports that the VCDIFF
    decoder still has internally buffered data that has never been read, this
    histogram reports the number of bytes that were output by the VCDIFF decoder
    (and sent toward the renderer).
  </summary>
</histogram>

<histogram name="Sdch3.PersistenceFailureReason"
    enum="SdchPersistenceFailureReason">
  <owner>rdsmith@chromium.org</owner>
  <summary>
    Tracks failures that occur when reading in or writing out persisted
    dictionary information.
  </summary>
</histogram>

<histogram name="Sdch3.ProblemCodes_3" enum="SdchProblemCode">
  <obsolete>
    Deprecated 2014-11. Sdch3.ProblemCodes_5 used instead.
  </obsolete>
  <owner>rdsmith@chromium.org</owner>
  <summary>Each sample is the report of a distinct problem code.</summary>
</histogram>

<histogram name="Sdch3.ProblemCodes_4" enum="SdchProblemCode">
  <obsolete>
    Deprecated 2014-11. Sdch3.ProblemCodes_5 used instead.
  </obsolete>
  <owner>rdsmith@chromium.org</owner>
  <summary>Each sample is the report of a distinct problem code.</summary>
</histogram>

<histogram name="Sdch3.ProblemCodes_5" enum="SdchProblemCode">
  <owner>rdsmith@chromium.org</owner>
  <summary>Each sample is the report of a distinct problem code.</summary>
</histogram>

<histogram name="Sdch3.ResponseCorruptionDetection.Cached"
    enum="SdchResponseCorruptionDetectionCauses">
  <owner>rdsmith@chromium.org</owner>
  <summary>
    Attempted SDCH decoding can fail at the Read() filter processing stage.  In
    some of those cases, the request is corrupted enough that it must be either
    retried or failed completely.  This histogram records the details of why the
    request was considered corrupted, for results returned from the cache.
  </summary>
</histogram>

<histogram name="Sdch3.ResponseCorruptionDetection.Uncached"
    enum="SdchResponseCorruptionDetectionCauses">
  <owner>rdsmith@chromium.org</owner>
  <summary>
    Attempted SDCH decoding can fail at the Read() filter processing stage.  In
    some of those cases, the request is corrupted enough that it must be either
    retried or failed completely.  This histogram records the details of why the
    request was considered corrupted for results returned from the network.
  </summary>
</histogram>

<histogram name="Sdch3.TimeWeightedMemoryUse" units="bytes">
  <owner>ellyjones@chromium.org</owner>
  <summary>
    Measures the time-weighted memory use of SDCH dictionaries, in bytes. The
    numerator is bytes of dictionary times seconds that dictionary was in
    memory, and the denominator is seconds that the Chrome process lives.
  </summary>
</histogram>

<histogram name="Sdch3.UnflushedBufferSize" units="bytes">
  <owner>rdsmith@chromium.org</owner>
  <summary>
    If/when a ProblemCode UNFLUSHED_CONTENT reports that the SDCH filter is
    still buffering output of the VCDIFF decoder that has never been read, this
    histogram reports the number of bytes that were in that buffer.
  </summary>
</histogram>

<histogram name="Sdch3.UnflushedBytesIn" units="bytes">
  <owner>rdsmith@chromium.org</owner>
  <summary>
    If/when a ProblemCode UNFLUSHED_CONTENT reports that the SDCH filter is
    still buffering output of the VCDIFF decoder  that has never been read, this
    histogram reports the number of bytes that were received over the net (or
    from the cache) and fed to the start of the filter chain (usually to the
    gunzip filter).
  </summary>
</histogram>

<histogram name="Sdch3.UnflushedVcdiffIn" units="bytes">
  <owner>rdsmith@chromium.org</owner>
  <summary>
    If/when a ProblemCode UNFLUSHED_CONTENT reports that the SDCH filter is
    still buffering output of the VCDIFF decoder that has never been read, this
    histogram reports the number of bytes that were received over the net (or
    from the cache) and fed to VCDIFF decoder (usually after gunzipping).
  </summary>
</histogram>

<histogram name="Sdch3.UnflushedVcdiffOut" units="bytes">
  <owner>rdsmith@chromium.org</owner>
  <summary>
    If/when a ProblemCode UNFLUSHED_CONTENT reports that the SDCH filter is
    still buffering output of the VCDIFF decoder  that has never been read, this
    histogram reports the number of bytes that were output by the VCDIFF decoder
    (and sent toward the renderer).
  </summary>
</histogram>

<histogram name="Sdch3.UsageInterval" units="ms">
  <owner>rdsmith@chromium.org</owner>
  <obsolete>
    Use Sdch3.UsageInterval2 instead.
  </obsolete>
  <summary>
    The amount of time from the last time an SDCH dictionary was used.  For the
    first use of a dictionary, the maximum time is used.
  </summary>
</histogram>

<histogram name="Sdch3.UsageInterval2" units="ms">
  <owner>rdsmith@chromium.org</owner>
  <summary>
    The amount of time from the last time an SDCH dictionary was used.  Not
    recorded on first dictionary use. First use is recorded as
    Sdch3.FirstUseInterval.
  </summary>
</histogram>

<histogram name="Search.AddSearchProvider" enum="AddSearchProvider">
  <obsolete>
    Replaced by Search.AddSearchProvider2, which is also now obsolete.
  </obsolete>
  <owner>estade@chromium.org</owner>
  <summary>
    Measures how much the user modifies their search engines, whether through
    window.external.AddSearchProvider or chrome://settings.
  </summary>
</histogram>

<histogram name="Search.AddSearchProvider2" enum="AddSearchProvider">
  <obsolete>
    AddSearchProvider was removed 05/2016.
  </obsolete>
  <owner>estade@chromium.org</owner>
  <summary>
    Measures usage of window.external.AddSearchProvider and user interaction
    with the resulting confirmation dialog (if any). Only works on Views
    platforms (Win, Linux, CrOS).
  </summary>
</histogram>

<histogram name="Search.ContextualSearchBarOverlap"
    enum="ContextualSearchTapSuppression">
  <owner>donnd@chromium.org</owner>
  <owner>twellington@chromium.org</owner>
  <summary>
    Whether a Tap was suppressed because the Bar overlapped the selection area.
    Implemented for Android.
  </summary>
</histogram>

<histogram name="Search.ContextualSearchBarOverlapSeen"
    enum="ContextualSearchBarOverlapSeen">
  <owner>donnd@chromium.org</owner>
  <owner>twellington@chromium.org</owner>
  <summary>
    Whether the Bar overlapped the selection area and whether the results were
    seen. Recorded when the UX is hidden. Implemented for Android.
  </summary>
</histogram>

<histogram name="Search.ContextualSearchBasePageProtocol"
    enum="ContextualSearchBasePageProtocol">
  <owner>donnd@chromium.org</owner>
  <owner>twellington@chromium.org</owner>
  <summary>
    The protocol of the base page, logged at the time that any Search Term
    Resolution Response is recieved.
  </summary>
</histogram>

<histogram name="Search.ContextualSearchBlacklistSeen"
    enum="ContextualSearchBlacklistSeen">
  <owner>donnd@chromium.org</owner>
  <owner>pedrosimonetti@chromium.org</owner>
  <owner>twellington@chromium.org</owner>
  <summary>
    The details (blacklist reason and whether the results were seen) of every
    search term issued by a tap gesture. Implemented for Android.
  </summary>
</histogram>

<histogram name="Search.ContextualSearchDurationNonPrefetched" units="ms">
  <owner>donnd@chromium.org</owner>
  <owner>twellington@chromium.org</owner>
  <summary>
    The time from opening the panel until the SERP is fully loaded. Applies only
    to non-prefetched requests. Implemented for Android.
  </summary>
</histogram>

<histogram name="Search.ContextualSearchDurationPrefetched" units="ms">
  <owner>donnd@chromium.org</owner>
  <owner>twellington@chromium.org</owner>
  <summary>
    The time from opening the panel until the SERP is fully loaded. Applies only
    to prefetched requests. Implemented for Android.
  </summary>
</histogram>

<histogram name="Search.ContextualSearchDurationSeen" units="ms">
  <owner>donnd@chromium.org</owner>
  <owner>twellington@chromium.org</owner>
  <summary>
    The time from initiating to ending a contextual search, when results were
    seen as part of the search. Implemented for Android.
  </summary>
</histogram>

<histogram name="Search.ContextualSearchDurationUnseen" units="ms">
  <owner>donnd@chromium.org</owner>
  <owner>twellington@chromium.org</owner>
  <summary>
    The time from initiating to ending a contextual search, when results were
    not seen as part of the search and the search did not end with the beginning
    of another contextual search. Implemented for Android.
  </summary>
</histogram>

<histogram name="Search.ContextualSearchDurationUnseenChained" units="ms">
  <owner>donnd@chromium.org</owner>
  <owner>twellington@chromium.org</owner>
  <summary>
    The time from initiating to ending a contextual search, when results were
    not seen as part of the search and the search ended with the beginning of
    another contextual search. Implemented for Android.
  </summary>
</histogram>

<histogram name="Search.ContextualSearchEnterClosed"
    enum="ContextualSearchEnterClosedStateChange">
  <owner>donnd@chromium.org</owner>
  <owner>twellington@chromium.org</owner>
  <summary>
    The details (previous state and reason) of the first entry into the closed
    panel state within a contextual search. Implemented for Android.
  </summary>
</histogram>

<histogram name="Search.ContextualSearchEnterExpanded"
    enum="ContextualSearchEnterExpandedStateChange">
  <owner>donnd@chromium.org</owner>
  <owner>twellington@chromium.org</owner>
  <summary>
    The details (previous state and reason) of the first entry into the expanded
    panel state within a contextual search. Implemented for Android.
  </summary>
</histogram>

<histogram name="Search.ContextualSearchEnterMaximized"
    enum="ContextualSearchEnterMaximizedStateChange">
  <owner>donnd@chromium.org</owner>
  <owner>twellington@chromium.org</owner>
  <summary>
    The details (previous state and reason) of the first entry into the
    maximized panel state within a contextual search. Implemented for Android.
  </summary>
</histogram>

<histogram name="Search.ContextualSearchEnterPeeked"
    enum="ContextualSearchEnterPeekedStateChange">
  <owner>donnd@chromium.org</owner>
  <owner>twellington@chromium.org</owner>
  <summary>
    The details (previous state and reason) of the first entry into the peeked
    panel state within a contextual search. Implemented for Android.
  </summary>
</histogram>

<histogram name="Search.ContextualSearchExitClosed"
    enum="ContextualSearchExitClosedStateChange">
  <owner>donnd@chromium.org</owner>
  <owner>twellington@chromium.org</owner>
  <summary>
    The details (destination state and reason) of the first exit out of the
    closed panel state within a contextual search. Implemented for Android.
  </summary>
</histogram>

<histogram name="Search.ContextualSearchExitExpanded"
    enum="ContextualSearchExitExpandedStateChange">
  <owner>donnd@chromium.org</owner>
  <owner>twellington@chromium.org</owner>
  <summary>
    The details (destination state and reason) of the first exit out of the
    expanded panel state within a contextual search. Implemented for Android.
  </summary>
</histogram>

<histogram name="Search.ContextualSearchExitMaximized"
    enum="ContextualSearchExitMaximizedStateChange">
  <owner>donnd@chromium.org</owner>
  <owner>twellington@chromium.org</owner>
  <summary>
    The details (destination state and reason) of the first exit out of the
    maximized panel state within a contextual search. Implemented for Android.
  </summary>
</histogram>

<histogram name="Search.ContextualSearchExitPeeked"
    enum="ContextualSearchExitPeekedStateChange">
  <owner>donnd@chromium.org</owner>
  <owner>twellington@chromium.org</owner>
  <summary>
    The details (destination state and reason) of the first exit out of the
    peeked panel state within a contextual search. Implemented for Android.
  </summary>
</histogram>

<histogram name="Search.ContextualSearchFallbackSearchRequestStatus"
    enum="ContextualSearchSearchRequestStatus">
  <owner>donnd@chromium.org</owner>
  <owner>twellington@chromium.org</owner>
  <summary>
    The status of the Contextual Search fallback Search request. Implemented for
    Android.
  </summary>
</histogram>

<histogram name="Search.ContextualSearchFirstRunFlowOutcome"
    enum="ContextualSearchPreferenceState">
  <owner>donnd@chromium.org</owner>
  <owner>twellington@chromium.org</owner>
  <summary>
    The state of the Contextual Search Preference after the first run flow.
    Implemented for Android.
  </summary>
</histogram>

<histogram name="Search.ContextualSearchFirstRunPanelSeen"
    enum="ContextualSearchFirstRunPanelSeen">
  <owner>donnd@chromium.org</owner>
  <owner>twellington@chromium.org</owner>
  <summary>
    Whether the first run flow's panel was seen as part of a contextual search.
    Only logged when the user triggered the first run flow yet exited the search
    still in the undecided preference state. Implemented for Android.
  </summary>
</histogram>

<histogram name="Search.ContextualSearchIconSpriteAnimated"
    enum="ContextualSearchIconSpriteAnimated">
  <owner>donnd@chromium.org</owner>
  <owner>twellington@chromium.org</owner>
  <summary>
    Whether search results were seen, whether the search provider icon sprite
    was animated when the panel first appeared, and the triggering gesture. If
    animation is disabled due to a field trial, we still log
    &quot;animated&quot; if the animation would have run otherwise.
  </summary>
</histogram>

<histogram name="Search.ContextualSearchLiteralSearchDuration" units="ms">
  <owner>donnd@chromium.org</owner>
  <owner>twellington@chromium.org</owner>
  <summary>
    The time from starting a literal search until the results in the SERP start
    to become viewable. Applies only to prefetched requests. Implemented for
    Android.
  </summary>
</histogram>

<histogram name="Search.ContextualSearchLowPrioritySearchRequestStatus"
    enum="ContextualSearchSearchRequestStatus">
  <owner>donnd@chromium.org</owner>
  <owner>twellington@chromium.org</owner>
  <summary>
    The status of the Contextual Search low priority Search request. Implemented
    for Android.
  </summary>
</histogram>

<histogram name="Search.ContextualSearchMandatoryPromoOutcomeByGesture"
    enum="ContextualSearchOutcomeByGesture">
  <owner>donnd@chromium.org</owner>
  <owner>pedrosimonetti@chromium.org</owner>
  <owner>twellington@chromium.org</owner>
  <summary>
    The outcome of the mandatory Promo broken down by original triggering
    gesture. Logged for each view of the promo. Implemented for Android.
  </summary>
</histogram>

<histogram name="Search.ContextualSearchNormalPrioritySearchRequestStatus"
    enum="ContextualSearchSearchRequestStatus">
  <owner>donnd@chromium.org</owner>
  <owner>twellington@chromium.org</owner>
  <summary>
    The status of the Contextual Search normal priority Search request.
    Implemented for Android.
  </summary>
</histogram>

<histogram name="Search.ContextualSearchPanelOpenDuration" units="ms">
  <owner>donnd@chromium.org</owner>
  <owner>twellington@chromium.org</owner>
  <summary>
    The time from opening the panel beyond peek until the panel is closed.
    Implemented for Android.
  </summary>
</histogram>

<histogram name="Search.ContextualSearchPeekPromoCount" units="count">
  <owner>donnd@chromium.org</owner>
  <owner>pedrosimonetti@chromium.org</owner>
  <owner>twellington@chromium.org</owner>
  <summary>
    The number of times the Peek Promo was seen. This histogram will be emitted
    when the Panel closes. The panel is always visible when the Peek Promo is
    shown, so this histogram will always be emitted after a Promo is shown
    (except in the case of a crash). This histogram does not care whether the
    Panel was opened.
  </summary>
</histogram>

<histogram name="Search.ContextualSearchPeekPromoCountUntilOpened"
    units="count">
  <owner>donnd@chromium.org</owner>
  <owner>pedrosimonetti@chromium.org</owner>
  <owner>twellington@chromium.org</owner>
  <summary>
    The number of times the Peek Promo was seen until the Panel was opened. This
    histogram will be emitted when the Panel closes, if the Panel was opened
    with the Peek Promo visible. If the Panel is not opened, nothing will be
    emitted.
  </summary>
</histogram>

<histogram name="Search.ContextualSearchPeekPromoOutcome"
    enum="ContextualSearchPeekPromoOutcome">
  <owner>donnd@chromium.org</owner>
  <owner>pedrosimonetti@chromium.org</owner>
  <owner>twellington@chromium.org</owner>
  <summary>
    The outcome of the Contextual Search Peek Promo for those who have seen the
    promo and for those who would have seen the promo if it was enabled, so we
    can compare the effect of the promo on users opening the Panel. This
    histogram will be emitted when the Panel closes, if the conditions to
    display the Peek Promo are met, regardless of whether the Peek Promo was
    actually visible (the Promo is controlled by Finch) and regardless of
    whether the Panel was opened.
  </summary>
</histogram>

<histogram name="Search.ContextualSearchPreferenceState"
    enum="ContextualSearchPreferenceState">
  <owner>donnd@chromium.org</owner>
  <owner>twellington@chromium.org</owner>
  <summary>
    The state of the Contextual Search Preference. Can be logged multiple times.
    Used to determine the population size (user view). Implemented for Android.
  </summary>
</histogram>

<histogram name="Search.ContextualSearchPreferenceStateChange"
    enum="ContextualSearchPreferenceState">
  <owner>donnd@chromium.org</owner>
  <owner>twellington@chromium.org</owner>
  <summary>
    The Contextual Search preference state after a modification from the
    preference menu. Implemented for Android.
  </summary>
</histogram>

<histogram name="Search.ContextualSearchPrefetchSummary"
    enum="ContextualSearchPrefetchSummary">
  <owner>donnd@chromium.org</owner>
  <owner>twellington@chromium.org</owner>
  <summary>
    A summary histogram for prefetch timings, indicating fully preloaded, etc.
    Implemented for Android.
  </summary>
</histogram>

<histogram name="Search.ContextualSearchPromoOpenCount" units="opens">
  <owner>donnd@chromium.org</owner>
  <owner>twellington@chromium.org</owner>
  <summary>
    The total count of times that the bar with the promo has been opened. Once
    the user decides, this counter is no longer updated.
  </summary>
</histogram>

<histogram name="Search.ContextualSearchPromoOutcomeByGesture"
    enum="ContextualSearchOutcomeByGesture">
  <owner>donnd@chromium.org</owner>
  <owner>twellington@chromium.org</owner>
  <summary>
    The outcome of the promo broken down by original triggering gesture. Logged
    for each view of the promo.  Implemented for Android.
  </summary>
</histogram>

<histogram name="Search.ContextualSearchPromoSeenByGesture"
    enum="ContextualSearchSeenByGesture">
  <owner>donnd@chromium.org</owner>
  <owner>twellington@chromium.org</owner>
  <summary>
    Whether the promo was seen, broken down by original triggering gesture.
    Logged each time the promo was activated.  Implemented for Android.
  </summary>
</histogram>

<histogram name="Search.ContextualSearchPromoTapsBeforeFirstOpen" units="taps">
  <owner>donnd@chromium.org</owner>
  <owner>twellington@chromium.org</owner>
  <summary>
    The historic number of taps that showed a peeking bar with the opt-out promo
    before the first time the user opened the panel.
  </summary>
</histogram>

<histogram name="Search.ContextualSearchPromoTapsForNeverOpened" units="taps">
  <owner>donnd@chromium.org</owner>
  <owner>twellington@chromium.org</owner>
  <summary>
    The historic number of taps that showed a peeking bar with the opt-out promo
    for users who have never opened the panel. This count may be limited by the
    Finch config param promo_on_limited_taps.
  </summary>
</histogram>

<histogram name="Search.ContextualSearchPromoTapsRemaining" units="taps">
  <owner>donnd@chromium.org</owner>
  <owner>twellington@chromium.org</owner>
  <summary>
    The number of remaining taps that can trigger the promo for this user.
    Implemented for Android.
  </summary>
</histogram>

<histogram name="Search.ContextualSearchQuickAnswerSeen"
    enum="ContextualSearchQuickAnswerSeen">
  <owner>donnd@chromium.org</owner>
  <owner>twellington@chromium.org</owner>
  <summary>
    Whether a Quick Answer was activated, considered an answer, and seen.
    Implemented for Android.
  </summary>
</histogram>

<histogram name="Search.ContextualSearchRecentScrollNotSeen" units="ms">
  <owner>donnd@chromium.org</owner>
  <owner>twellington@chromium.org</owner>
  <summary>
    The duration since a recent scroll when the results were not seen. Recorded
    when the UX is hidden. Implemented for Android.
  </summary>
</histogram>

<histogram name="Search.ContextualSearchRecentScrollSeen" units="ms">
  <owner>donnd@chromium.org</owner>
  <owner>twellington@chromium.org</owner>
  <summary>
    The duration since a recent scroll when the results were seen. Recorded when
    the UX is hidden. Implemented for Android.
  </summary>
</histogram>

<histogram name="Search.ContextualSearchRecentScrollSuppression"
    enum="ContextualSearchTapSuppression">
  <owner>donnd@chromium.org</owner>
  <owner>twellington@chromium.org</owner>
  <summary>
    Whether showing the Tap to Search UX in response to a Tap was suppressed by
    a recent scroll. Implemented for Android.
  </summary>
</histogram>

<histogram name="Search.ContextualSearchResolutionDuration" units="ms">
  <owner>donnd@chromium.org</owner>
  <owner>twellington@chromium.org</owner>
  <summary>
    The time from starting a resolving search until the Search Term Resolves.
    Implemented for Android.
  </summary>
</histogram>

<histogram name="Search.ContextualSearchResolvedSearchDuration" units="ms">
  <owner>donnd@chromium.org</owner>
  <owner>twellington@chromium.org</owner>
  <summary>
    The time from starting a resolving search until the results in the SERP
    start to become viewable. Applies only to prefetched requests. Implemented
    for Android.
  </summary>
</histogram>

<histogram name="Search.ContextualSearchResolvedTermWords"
    enum="ContextualSearchResolvedTermWords">
  <owner>donnd@chromium.org</owner>
  <owner>twellington@chromium.org</owner>
  <summary>
    Whether the search term was single or multi-word, logged at the time that
    any Search Term Resolution Response is recieved.
  </summary>
</histogram>

<histogram name="Search.ContextualSearchResultsSeen"
    enum="ContextualSearchResultsSeen">
  <owner>donnd@chromium.org</owner>
  <owner>twellington@chromium.org</owner>
  <summary>
    Whether search results were seen as part of a contextual search. Implemented
    for Android.
  </summary>
</histogram>

<histogram name="Search.ContextualSearchResultsSeenByGesture"
    enum="ContextualSearchSeenByGesture">
  <owner>donnd@chromium.org</owner>
  <owner>twellington@chromium.org</owner>
  <summary>
    Whether search results were seen, broken down by original triggering
    gesture. Only includes users that have enabled. Implemented for Android.
  </summary>
</histogram>

<histogram name="Search.ContextualSearchResultsSeenSelectionWasUrl"
    enum="ContextualSearchSeenByGesture">
  <owner>donnd@chromium.org</owner>
  <owner>twellington@chromium.org</owner>
  <summary>
    Whether search results were seen (Contextual Search panel was opened) when
    the selection was part of a URL, broken down by original triggering gesture.
    Includes both users that have enabled Contextual Search and users that are
    undecided (have neither enabled or disabled the feature). Implemented for
    Android.
  </summary>
</histogram>

<histogram name="Search.ContextualSearchScreenTopSuppressed"
    enum="ContextualSearchTapSuppression">
  <owner>donnd@chromium.org</owner>
  <owner>twellington@chromium.org</owner>
  <summary>
    Whether Taps near the top of the screen was suppressed. Implemented for
    Android.
  </summary>
</histogram>

<histogram name="Search.ContextualSearchSelectionValid"
    enum="ContextualSearchSelectionValid">
  <owner>donnd@chromium.org</owner>
  <owner>twellington@chromium.org</owner>
  <summary>
    Whether a Contextual Search selection was valid. Implemented for Android.
  </summary>
</histogram>

<histogram name="Search.ContextualSearchSerpLoadedOnClose"
    enum="ContextualSearchLoaded">
  <owner>donnd@chromium.org</owner>
  <owner>twellington@chromium.org</owner>
  <summary>
    Whether the SERP was fully loaded when an opened panel was closed.
  </summary>
</histogram>

<histogram name="Search.ContextualSearchShouldTranslate"
    enum="ContextualSearchShouldTranslate">
  <owner>donnd@chromium.org</owner>
  <owner>twellington@chromium.org</owner>
  <summary>
    Emitted when a translate one-box should be forced, to indicate if it
    actually was forced or simply would have been forced if not disabled by a
    flag in the variations_service.
  </summary>
</histogram>

<histogram name="Search.ContextualSearchTapsSinceOpenDecided" units="taps">
  <owner>donnd@chromium.org</owner>
  <owner>twellington@chromium.org</owner>
  <summary>
    The count of taps that showed a peeking bar without the opt-out promo since
    this user has last opened the panel.
  </summary>
</histogram>

<histogram name="Search.ContextualSearchTapsSinceOpenUndecided" units="taps">
  <owner>donnd@chromium.org</owner>
  <owner>twellington@chromium.org</owner>
  <summary>
    The count of taps that showed a peeking bar with the opt-out promo since
    this user has last opened the panel.
  </summary>
</histogram>

<histogram name="Search.ContextualSearchTimeToSearch" units="ms">
  <owner>donnd@chromium.org</owner>
  <owner>twellington@chromium.org</owner>
  <summary>
    The time between tapping on a word and performing a search. Implemented for
    Android.
  </summary>
</histogram>

<histogram name="Search.ContextualSearchTopLocationNotSeen" units="dps">
  <owner>donnd@chromium.org</owner>
  <owner>twellington@chromium.org</owner>
  <summary>
    The DPs count histogram for Taps that were not seen. Implemented for
    Android.
  </summary>
</histogram>

<histogram name="Search.ContextualSearchTopLocationSeen" units="dps">
  <owner>donnd@chromium.org</owner>
  <owner>twellington@chromium.org</owner>
  <summary>
    The DPs count histogram for Taps that were seen. Implemented for Android.
  </summary>
</histogram>

<histogram name="Search.DefaultSearchChangeOrigin"
    enum="DefaultSearchChangeOrigin">
  <owner>mathp@chromium.org</owner>
  <summary>
    The origin/cause of a change to the default search provider.
  </summary>
</histogram>

<histogram name="Search.DefaultSearchProvider" enum="OmniboxSearchEngine">
  <obsolete>
    Made obsolete around Chrome 32.  Use Search.DefaultSearchProviderType
    instead.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The id of the default search engine that is loaded after Chrome startup. See
    src/chrome/browser/search_engines/prepopulate_engines.json for more info.
  </summary>
</histogram>

<histogram name="Search.DefaultSearchProviderType"
    enum="OmniboxSearchEngineType">
  <owner>mpearson@chromium.org</owner>
  <summary>
    The type of the default search engine that is loaded when a profile is
    opened or after a profile reset.  Note that at least one profile is opened
    on startup. Due to an error, there was a period from roughly May 9 2014 to
    May 23 2014 during which this was not being logged.
  </summary>
</histogram>

<histogram name="Search.DesktopSearch.RedirectionInfobarCloseAction"
    enum="DesktopSearchRedirectionInfobarCloseAction">
  <owner>fdoray@chromium.org</owner>
  <summary>
    The action performed by the user to close the infobar explaining that a
    desktop search has been redirected to the default search engine.
  </summary>
</histogram>

<histogram name="Search.DesktopSearch.URLAction" enum="DesktopSearchURLAction">
  <owner>fdoray@chromium.org</owner>
  <summary>
    The action performed when a desktop search URL is passed to the browser
    through the command line.
  </summary>
</histogram>

<histogram name="Search.MigratedPrefToDictionaryValue" enum="BooleanHit">
  <owner>caitkp@chromium.org</owner>
  <summary>
    The number of times that a user-selected DSE was migrated from separate
    String/List/..Value preferences to the new single DictionaryValue used in
    M36.
  </summary>
</histogram>

<histogram name="SequencedWorkerPool.ShutdownDelayTime" units="ms">
  <owner>gab@chromium.org</owner>
  <summary>
    How long it takes to wait for tasks that block shutdown to complete.
  </summary>
</histogram>

<histogram name="SequencedWorkerPool.TaskCount">
  <obsolete>
    Histogram wasn't even reported anymore when ownership was taken in 11/2015.
  </obsolete>
  <owner>gab@chromium.org</owner>
  <summary>
    How many pending tasks there are on each request for work from a worker
    thread.
  </summary>
</histogram>

<histogram name="SequencedWorkerPool.UnrunnableTaskCount">
  <obsolete>
    Histogram wasn't even reported anymore when ownership was taken in 11/2015.
  </obsolete>
  <owner>gab@chromium.org</owner>
  <summary>How many tasks we skip over to find the next runnable task.</summary>
</histogram>

<histogram name="ServicesCustomization.LoadResult"
    enum="ServicesCustomizationLoadResult">
  <owner>alemate@chromium.org</owner>
  <summary>
    Records result of fetching and parsing OEM customization manifest. See
    ServicesCustomizationDocument class for more info. Used only on Chrome OS.
  </summary>
</histogram>

<histogram name="ServiceWorker.ActivateEvent.Time" units="ms">
  <owner>shimazu@chromium.org</owner>
  <summary>
    Execution time of ServiceWorkerGlobalScope.onactivate. Includes the time for
    waitUntil() promise to settle.
  </summary>
</histogram>

<histogram name="ServiceWorker.ActivateEventExecutionTime" units="ms">
  <owner>shimazu@chromium.org</owner>
  <obsolete>
    Deprecated 2015-05 in favor of ServiceWorker.ActivateEvent.Time.
  </obsolete>
  <summary>
    Execution time of ServiceWorkerGlobalScope.onactivate. Includes the time for
    waitUntil() promise to settle.
  </summary>
</histogram>

<histogram name="ServiceWorker.ActivateEventStatus"
    enum="ServiceWorkerStatusCode">
  <owner>falken@chromium.org</owner>
  <summary>The result of dispatching the activate event to the worker.</summary>
</histogram>

<histogram name="ServiceWorker.BackgroundSyncEvent.Time" units="ms">
  <owner>jkarlin@chromium.org</owner>
  <summary>
    The time taken between dispatching a SyncEvent to a Service Worker and
    receiving a message that it finished handling the event. Includes the time
    for the waitUntil() promise to settle.
  </summary>
</histogram>

<histogram name="ServiceWorker.Database.DestroyDatabaseResult"
    enum="ServiceWorkerDatabaseStatus">
  <owner>nhiroki@chromium.org</owner>
  <summary>
    Records result of destroy database operations in ServiceWorkerDatabase.
  </summary>
</histogram>

<histogram name="ServiceWorker.Database.OpenResult"
    enum="ServiceWorkerDatabaseStatus">
  <owner>nhiroki@chromium.org</owner>
  <summary>
    Records result of opening a database for ServiceWorkerDatabase.
  </summary>
</histogram>

<histogram name="ServiceWorker.Database.ReadResult"
    enum="ServiceWorkerDatabaseStatus">
  <owner>nhiroki@chromium.org</owner>
  <summary>Records result of read operations in ServiceWorkerDatabase.</summary>
</histogram>

<histogram name="ServiceWorker.Database.WriteResult"
    enum="ServiceWorkerDatabaseStatus">
  <owner>nhiroki@chromium.org</owner>
  <summary>
    Records result of write operations in ServiceWorkerDatabase.
  </summary>
</histogram>

<histogram name="ServiceWorker.DiskCache.InitResult">
  <owner>nhiroki@chromium.org</owner>
  <summary>
    Records result of opening a disk cache for ServiceWorkerDiskCache.
  </summary>
</histogram>

<histogram name="ServiceWorker.DiskCache.ReadResponseResult"
    enum="ServiceWorkerReadResponseResult">
  <owner>nhiroki@chromium.org</owner>
  <summary>
    Records result of reading response from ServiceWorkerDiskCache.
  </summary>
</histogram>

<histogram name="ServiceWorker.DiskCache.WriteResponseResult"
    enum="ServiceWorkerWriteResponseResult">
  <owner>nhiroki@chromium.org</owner>
  <summary>
    Records result of writing response into ServiceWorkerDiskCache.
  </summary>
</histogram>

<histogram name="ServiceWorker.DiskCacheMigrator.MigrationResult"
    enum="ServiceWorkerDiskCacheMigrationStatus">
  <owner>nhiroki@chromium.org</owner>
  <obsolete>
    Deprecated because the migrator was removed as of 12/2015.
  </obsolete>
  <summary>
    Records result of ServiceWorkerDiskCacheMigrator::Start that migrates
    resources in BlockFile backend to Simple backend.
  </summary>
</histogram>

<histogram name="ServiceWorker.DiskCacheMigrator.MigrationTime" units="ms">
  <owner>nhiroki@chromium.org</owner>
  <obsolete>
    Deprecated because the migrator was removed as of 12/2015.
  </obsolete>
  <summary>
    Execution time of ServiceWorkerDiskCache migration from BlockFile to Simple.
  </summary>
</histogram>

<histogram name="ServiceWorker.DiskCacheMigrator.NumberOfMigratedResources"
    units="count">
  <owner>nhiroki@chromium.org</owner>
  <obsolete>
    Deprecated because the migrator was removed as of 12/2015.
  </obsolete>
  <summary>
    The counts of resources migrated by ServiceWorkerDiskCacheMigrator. This
    includes the main script and imported scripts.
  </summary>
</histogram>

<histogram name="ServiceWorker.EventHandledRatioType.Fetch"
    enum="ServiceWorkerEventHandleRatioType">
  <owner>kinuko@chromium.org</owner>
  <summary>
    Records the proportion of (non foreign) fetch events that are handled
    compared to the number of events that are fired for a ServiceWorker.
    Recorded each time the ServiceWorker is stopped when at least one event was
    fired.
  </summary>
</histogram>

<histogram name="ServiceWorker.EventHandledRatioType.ForeignFetch"
    enum="ServiceWorkerEventHandleRatioType">
  <owner>mek@chromium.org</owner>
  <summary>
    Records the proportion of foreign fetch events that are handled compared to
    the number of events that are fired for a ServiceWorker.  Recorded each time
    the ServiceWorker is stopped when at least one event was fired.
  </summary>
</histogram>

<histogram name="ServiceWorker.ExtendableMessageEvent.Time" units="ms">
  <owner>nhiroki@chromium.org</owner>
  <summary>
    The time taken between dispatching an ExtendableMessageEvent to a Service
    Worker and receiving a message that it finished handling the event. Includes
    the time for the waitUntil() promise to settle.
  </summary>
</histogram>

<histogram name="ServiceWorker.FetchEvent.Fallback.Time" units="ms">
  <owner>jeremyarcher@chromium.org</owner>
  <summary>
    The time taken between dispatching a FetchEvent to a Service Worker and
    receiving a fallback-to-network reply. Includes the time for the waitUntil()
    promise to settle, if any.
  </summary>
</histogram>

<histogram name="ServiceWorker.FetchEvent.HasResponse.Time" units="ms">
  <owner>jeremyarcher@chromium.org</owner>
  <summary>
    The time taken between dispatching a FetchEvent to a Service Worker and
    receiving a response. Includes the time for the respondWith() promise to
    settle.
  </summary>
</histogram>

<histogram name="ServiceWorker.FetchEvent.MainResource.Status"
    enum="ServiceWorkerStatusCode">
  <owner>falken@chromium.org</owner>
  <summary>
    The result of dispatching a fetch event to a Service Worker for a main
    resource request.
  </summary>
</histogram>

<histogram name="ServiceWorker.FetchEvent.Subresource.Status"
    enum="ServiceWorkerStatusCode">
  <owner>falken@chromium.org</owner>
  <summary>
    The result of dispatching a fetch event to a Service Worker for a
    subresource request.
  </summary>
</histogram>

<histogram name="ServiceWorker.FetchEvent.Time" units="ms">
  <owner>shimazu@chromium.org</owner>
  <obsolete>
    Deprecated on 2015-07-13; please use
    ServiceWorker.FetchEvent.HasResponse.Time or
    ServiceWorker.FetchEvent.Fallback.Time.
  </obsolete>
  <summary>
    Execution time of ServiceWorkerGlobalScope.onfetch. Includes the time for
    the respondWith() promise to settle.
  </summary>
</histogram>

<histogram name="ServiceWorker.FetchEventExecutionTime" units="ms">
  <owner>shimazu@chromium.org</owner>
  <obsolete>
    Deprecated 2015-05 in favor of ServiceWorker.FetchEvent.Time.
  </obsolete>
  <summary>
    Execution time of ServiceWorkerGlobalScope.onfetch. Includes the time for
    the respondWith() promise to settle.
  </summary>
</histogram>

<histogram name="ServiceWorker.ForeignFetchEvent.Fallback.Time" units="ms">
  <owner>mek@chromium.org</owner>
  <summary>
    The time taken between dispatching a ForeignFetchEvent to a Service Worker
    and receiving a fallback-to-network reply. Includes the time for the
    waitUntil() promise to settle, if any.
  </summary>
</histogram>

<histogram name="ServiceWorker.ForeignFetchEvent.HasResponse.Time" units="ms">
  <owner>mek@chromium.org</owner>
  <summary>
    The time taken between dispatching a ForeignFetchEvent to a Service Worker
    and receiving a response. Includes the time for the respondWith() promise to
    settle.
  </summary>
</histogram>

<histogram name="ServiceWorker.InstallEvent.Time" units="ms">
  <owner>shimazu@chromium.org</owner>
  <summary>
    The time taken between dispatching an InstallEvent to a Service Worker and
    receiving a message that it finished handling the event. Includes the time
    for the waitUntil() promise to settle.
  </summary>
</histogram>

<histogram name="ServiceWorker.InstallEventExecutionTime" units="ms">
  <owner>shimazu@chromium.org</owner>
  <obsolete>
    Deprecated 2015-05 in favor of ServiceWorker.InstallEvent.Time.
  </obsolete>
  <summary>
    Execution time of ServiceWorkerGlobalScope.oninstall. Includes the time for
    the waitUntil() promise to settle.
  </summary>
</histogram>

<histogram name="ServiceWorker.InstallEventStatus"
    enum="ServiceWorkerStatusCode">
  <owner>falken@chromium.org</owner>
  <summary>The result of dispatching the install event to the worker.</summary>
</histogram>

<histogram name="ServiceWorker.MessageEvent.Time" units="ms">
  <owner>shimazu@chromium.org</owner>
  <obsolete>
    Deprecated 2016-04 in favor of ServiceWorker.ExtendableMessageEvent.Time.
  </obsolete>
  <summary>Execution time of ServiceWorkerGlobalScope.onmessage.</summary>
</histogram>

<histogram name="ServiceWorker.MessageEventExecutionTime" units="ms">
  <owner>shimazu@chromium.org</owner>
  <obsolete>
    Deprecated 2015-05 in favor of ServiceWorker.MessageEvent.Time.
  </obsolete>
  <summary>Execution time of ServiceWorkerGlobalScope.onmessage.</summary>
</histogram>

<histogram name="ServiceWorker.NotificationClickEvent.Time" units="ms">
  <owner>peter@chromium.org</owner>
  <summary>
    The time taken between dispatching a NotificationClickEvent to a Service
    Worker and receiving a message that it finished handling the event. Includes
    the time for the waitUntil() promise to settle.
  </summary>
</histogram>

<histogram name="ServiceWorker.NotificationClickEventExecutionTime" units="ms">
  <owner>peter@chromium.org</owner>
  <obsolete>
    Deprecated 2015-05 in favor of ServiceWorker.NotificationClickEvent.Time.
  </obsolete>
  <summary>
    Execution time of ServiceWorkerGlobalScope.onnotificationclick.
  </summary>
</histogram>

<histogram name="ServiceWorker.NotificationCloseEvent.Time" units="ms">
  <owner>nsatragno@chromium.org</owner>
  <owner>peter@chromium.org</owner>
  <summary>
    The time taken between dispatching a NotificationCloseEvent to a Service
    Worker and receiving a message that it finished handling the event. Includes
    the time for the waitUntil() promise to settle.
  </summary>
</histogram>

<histogram name="ServiceWorker.PageLoad" enum="ServiceWorkerSite">
  <owner>falken@chromium.org</owner>
  <summary>Counts page loads controlled by a service worker.</summary>
</histogram>

<histogram name="ServiceWorker.PushEvent.Time" units="ms">
  <owner>johnme@chromium.org</owner>
  <summary>
    The time taken between dispatching a PushEvent to a Service Worker and
    receiving a message that it finished handling the event. Includes the time
    for the waitUntil() promise to settle.
  </summary>
</histogram>

<histogram name="ServiceWorker.PushEventExecutionTime" units="ms">
  <owner>johnme@chromium.org</owner>
  <obsolete>
    Deprecated 2015-05 in favor of ServiceWorker.PushEvent.Time.
  </obsolete>
  <summary>Execution time of ServiceWorkerGlobalScope.onpush.</summary>
</histogram>

<histogram name="ServiceWorker.RequestTimeouts.Count"
    enum="ServiceWorkerMetrics.EventType">
  <owner>jeremyarcher@google.com</owner>
  <summary>
    The number of Service Worker request timeouts, by request type.
  </summary>
</histogram>

<histogram name="ServiceWorker.ScriptCachedMetadataSize" units="bytes">
  <owner>horo@chromium.org</owner>
  <summary>
    The length of cached metadata of Service Worker scripts. Logged on each load
    of Service Worker script only when the cached metadata is available. It
    doesn't include the size of imported scripts.
  </summary>
</histogram>

<histogram name="ServiceWorker.ScriptCachedMetadataTotalSize" units="bytes">
  <owner>horo@chromium.org</owner>
  <summary>
    The total length of cached metadata of Service Worker scripts. Logged on
    each start of Service Worker only when the cached metadata is available. It
    includes the main script and imported scripts.
  </summary>
</histogram>

<histogram name="ServiceWorker.ScriptCount" units="count">
  <owner>horo@chromium.org</owner>
  <summary>
    The counts of scripts per Service Worker. Logged on each start of Service
    Worker. It includes the main script and imported scripts.
  </summary>
</histogram>

<histogram name="ServiceWorker.ScriptLoadSuccess" enum="BooleanSuccess">
  <owner>falken@chromium.org</owner>
  <summary>
    Whether loading the service worker script succeeded. Only recorded for
    installed service workers. Recorded by the browser process when reported
    back by the renderer during worker startup.
  </summary>
</histogram>

<histogram name="ServiceWorker.ScriptSize" units="bytes">
  <owner>ksakamoto@chromium.org</owner>
  <summary>
    The length of Service Worker scripts. Logged on each load of Service Worker
    script. It doesn't include the size of imported scripts.
  </summary>
</histogram>

<histogram name="ServiceWorker.ScriptTotalSize" units="bytes">
  <owner>horo@chromium.org</owner>
  <summary>
    The total length of Service Worker scripts. Logged on each start of Service
    Worker. It includes the main script and imported scripts.
  </summary>
</histogram>

<histogram name="ServiceWorker.SendStopWorker.Status"
    enum="ServiceWorkerStatusCode">
  <owner>falken@chromium.org</owner>
  <summary>
    The result of trying to send the IPC message to a renderer process telling
    it to stop an embedded worker. Recorded in EmbeddedWorkerInstance::Stop.
  </summary>
</histogram>

<histogram name="ServiceWorker.StartNewWorker.Status"
    enum="ServiceWorkerStatusCode">
  <owner>falken@chromium.org</owner>
  <summary>
    The result of trying to start a Service Worker that has not yet installed.
    See also ServiceWorker.StartWorker.Status for installed workers.
  </summary>
</histogram>

<histogram name="ServiceWorker.StartNewWorker.Time" units="ms">
  <owner>falken@chromium.org</owner>
  <summary>
    The time taken to start a Service Worker that has not yet installed, from
    process allocation to ACK of started from the renderer (which occurs after
    script execution). This may include script download time. The metric is not
    recorded if DevTools was ever attached to the Service Worker during startup.
    See also ServiceWorker.StartWorker.Time for installed workers.
  </summary>
</histogram>

<histogram name="ServiceWorker.StartWorker.AfterFailureStreak"
    enum="ServiceWorkerStatusCode">
  <owner>falken@chromium.org</owner>
  <summary>
    The result of trying to start a service worker after it has failed
    consecutively. Recorded only for installed workers.
  </summary>
</histogram>

<histogram name="ServiceWorker.StartWorker.FailureStreak" units="count">
  <owner>falken@chromium.org</owner>
  <summary>
    The number of consecutive startup failures of a service worker. Recorded
    each time the service worker failed (so there is double counting: failing
    twice results in 1 and 2 being logged). Only for installed workers.
  </summary>
</histogram>

<histogram name="ServiceWorker.StartWorker.FailureStreakEnded" units="count">
  <owner>falken@chromium.org</owner>
  <summary>
    When a worker startup succeeded after failing, the number of times the
    worker had consecutively failed. Recorded only for installed workers.
  </summary>
</histogram>

<histogram name="ServiceWorker.StartWorker.Purpose"
    enum="ServiceWorkerMetrics.EventType">
  <owner>falken@chromium.org</owner>
  <summary>
    The purpose for starting up a service worker. Recorded only for installed
    workers.
  </summary>
</histogram>

<histogram name="ServiceWorker.StartWorker.Status"
    enum="ServiceWorkerStatusCode">
  <owner>falken@chromium.org</owner>
  <summary>
    The result of trying to start a Service Worker that is already installed.
    See also ServiceWorker.StartNewWorker.Status for new workers. See also
    ServiceWorker.StartWorker.StatusByPurpose_* for the breakdown by event type.
  </summary>
</histogram>

<histogram name="ServiceWorker.StartWorker.StatusByPurpose"
    enum="ServiceWorkerStatusCode">
  <owner>falken@chromium.org</owner>
  <summary>
    The result of trying to start a service worker for a particular event type
    (see ServiceWorker.StartWorker.Status for the total). Only recorded for
    installed workers. For event type:
  </summary>
</histogram>

<histogram name="ServiceWorker.StartWorker.Time" units="ms">
  <owner>falken@chromium.org</owner>
  <summary>
    The time taken to start a Service Worker that is already installed, from
    process allocation to ACK of started from the renderer (which occurs after
    script execution). The metric is not recorded if DevTools was ever attached
    to the Service Worker during startup. See also
    ServiceWorker.StartNewWorker.Time for new workers.
  </summary>
</histogram>

<histogram name="ServiceWorker.StartWorker.Timeout.StartPurpose"
    enum="ServiceWorkerMetrics.EventType">
  <owner>falken@chromium.org</owner>
  <summary>
    Records the start purpose for a service worker that timed out while starting
    up. Recorded only for installed workers.
  </summary>
</histogram>

<histogram name="ServiceWorker.StartWorker.TimeoutPhase"
    enum="EmbeddedWorkerStartingPhase">
  <owner>falken@chromium.org</owner>
  <summary>
    The phase the EmbeddedWorker was in when ServiceWorker startup timed out.
  </summary>
</histogram>

<histogram name="ServiceWorker.StopWorker.Status"
    enum="ServiceWorkerStopStatus">
  <obsolete>
    Removed from code in Oct 2015, replaced with ServiceWorker.WorkerStopped.
  </obsolete>
  <owner>falken@chromium.org</owner>
  <summary>
    The result of trying to stop a Service Worker. Recorded only for installed
    Service Workers that succesfully stopped or were detected as stalling. If a
    worker stalled and later stopped, it will be recorded as both STALLED and
    STALLED_THEN_STOPPED.
  </summary>
</histogram>

<histogram name="ServiceWorker.StopWorker.Time" units="ms">
  <owner>falken@chromium.org</owner>
  <summary>The time taken to stop a Service Worker.</summary>
</histogram>

<histogram name="ServiceWorker.Storage.DeleteAndStartOverResult"
    enum="ServiceWorkerDeleteAndStartOverResult">
  <owner>nhiroki@chromium.org</owner>
  <summary>
    Records result of storage recovery operations in ServiceWorkerStorage.
  </summary>
</histogram>

<histogram name="ServiceWorker.Storage.DiskCacheMigrationResult"
    enum="ServiceWorkerDiskCacheMigrationResult">
  <owner>nhiroki@chromium.org</owner>
  <obsolete>
    Deprecated because the migrator was removed as of 12/2015.
  </obsolete>
  <summary>
    Records the final result of diskcache migration in ServiceWorkerStorage.
    ServiceWorker.DiskCacheMigrator.MigrationResult records more detailed status
    of migration operations.
  </summary>
</histogram>

<histogram name="ServiceWorker.Storage.PurgeResourceResult"
    enum="NetErrorCodes">
  <owner>nhiroki@chromium.org</owner>
  <summary>
    Records successes and failures of purging a stale resource in
    ServiceWorkerStorage.
  </summary>
</histogram>

<histogram name="ServiceWorker.TerminateThread.Time" units="ms">
  <owner>falken@chromium.org</owner>
  <summary>
    The time taken in the renderer process between the main thread asking the
    worker thread to terminate and getting ACK that it terminated.
  </summary>
</histogram>

<histogram name="ServiceWorker.TimeBetweenEvents" units="ms">
  <owner>falken@chromium.org</owner>
  <summary>
    Called at the beginning of each ServiceWorkerVersion::Dispatch*Event
    function: the time elapsed since idle. Generally this is the time between
    one event ending and one event starting, if the worker remained running in
    the interim.
  </summary>
</histogram>

<histogram name="ServiceWorker.UnhandledEventRatio" units="%">
  <owner>kinuko@chromium.org</owner>
  <obsolete>
    Deprecated 2015-06 in favor of ServiceWorker.EventHandledStatus*.
  </obsolete>
  <summary>
    Records the ratio of unhandled events to all events that are dispatched to
    each ServiceWorker.  Recorded when each ServiceWorkerVersion is destructed.
  </summary>
</histogram>

<histogram name="ServiceWorker.URLRequestJob.FallbackedRequestMode"
    enum="FetchRequestMode">
  <owner>horo@chromium.org</owner>
  <summary>
    Records the the mode of request that was fallbacked to the network by the
    Service Worker.
  </summary>
</histogram>

<histogram name="ServiceWorker.URLRequestJob.MainResource.Result"
    enum="ServiceWorkerURLRequestJobResult">
  <owner>falken@chromium.org</owner>
  <summary>
    Records the result of a main resource request forwarded to a Service Worker.
  </summary>
</histogram>

<histogram name="ServiceWorker.URLRequestJob.MainResource.StatusZeroError"
    enum="ServiceWorkerResponseError">
  <owner>falken@chromium.org</owner>
  <summary>
    Records the error provided when the renderer returns a response with status
    code zero to a main resource request forwarded to a Service Worker (i.e.,
    ServiceWorker.URLRequestJob.MainResource.Result was
    REQUEST_JOB_ERROR_RESPONSE_STATUS_ZERO).
  </summary>
</histogram>

<histogram name="ServiceWorker.URLRequestJob.Subresource.Result"
    enum="ServiceWorkerURLRequestJobResult">
  <owner>falken@chromium.org</owner>
  <summary>
    Records the result of a subresource request forwarded to a Service Worker.
  </summary>
</histogram>

<histogram name="ServiceWorker.URLRequestJob.Subresource.StatusZeroError"
    enum="ServiceWorkerResponseError">
  <owner>falken@chromium.org</owner>
  <summary>
    Records the error provided when the renderer returns a response with status
    code zero to a subresource request forwarded to a Service Worker (i.e.,
    ServiceWorker.URLRequestJob.Subresource.Result was
    REQUEST_JOB_ERROR_RESPONSE_STATUS_ZERO).
  </summary>
</histogram>

<histogram name="ServiceWorker.WorkerForMessageFound" enum="Boolean">
  <owner>falken@chromium.org</owner>
  <summary>
    True if a message from the renderer intended for a browser-side embedded
    worker instance found its recipient. False if the instance did not exist
    when the message was received (e.g., it was a detached worker). Recorded in
    EmbeddedWorkerRegistry::GetWorkerForMessage.
  </summary>
</histogram>

<histogram name="ServiceWorker.WorkerStopped" enum="ServiceWorkerStoppedStatus">
  <owner>falken@chromium.org</owner>
  <summary>
    The mechanism by which a service worker entered running status STOPPED.
  </summary>
</histogram>

<histogram name="ServiceWorkerCache.Cache" units="ms">
  <owner>dmurph@chromium.org</owner>
  <summary>
    The time to perform operations on the Cache object in the ServiceWorker
    Cache API.
  </summary>
</histogram>

<histogram name="ServiceWorkerCache.Cache.AddResponseType"
    enum="ServiceWorkerCacheResponseType">
  <owner>nhiroki@chromium.org</owner>
  <summary>
    Records the response type to be added in the Cache by Cache.add()/addAll().
  </summary>
</histogram>

<histogram name="ServiceWorkerCache.CacheStorage" units="ms">
  <owner>dmurph@chromium.org</owner>
  <summary>
    The time to perform operations on the CacheStorage object in the
    ServiceWorker Cache API.
  </summary>
</histogram>

<histogram name="ServiceWorkerCache.CreateCacheStorageResult"
    enum="BooleanCreated">
  <owner>jkarlin@chromium.org</owner>
  <summary>
    Whether a new ServiceWorkerCacheStorage and its directory were successfully
    created on disk.
  </summary>
</histogram>

<histogram name="ServiceWorkerCache.InitBackendResult"
    enum="ServiceWorkerCacheErrorType">
  <owner>jkarlin@chromium.org</owner>
  <summary>
    The result of opening the backend in the ServiceWorker Cache API.
  </summary>
</histogram>

<histogram name="Session.TotalDuration" units="ms">
  <owner>mariakhomenko@chromium.org</owner>
  <owner>fqian@chromium.org</owner>
  <summary>
    The length of a session (launch/foregrounding to backgrounding) on mobile.
  </summary>
</histogram>

<histogram name="SessionCrashed.Bubble" enum="SessionCrashedBubbleUserAction">
  <owner>yiyaoliu@chromium.org</owner>
  <summary>How did the user interact with the SessionCrashed Bubble?</summary>
</histogram>

<histogram name="SessionRestore.Actions" enum="SessionRestoreActions">
  <owner>chrisha@chromium.org</owner>
  <summary>
    The actions that have occurred in a session restore timeline. These are to
    be interpreted as raw event counts. Tabs are almost certainly deferred due
    to the existence memory pressure, but this may not always be the case.
  </summary>
</histogram>

<histogram name="SessionRestore.AllTabsLoaded" units="ms">
  <owner>jeremy@chromium.org</owner>
  <owner>sky@chromium.org</owner>
  <summary>
    The time from SessionRestore start until all tabs have finished loading.
  </summary>
</histogram>

<histogram name="SessionRestore.command_size" units="bytes">
  <owner>jeremy@chromium.org</owner>
  <owner>sky@chromium.org</owner>
  <summary>
    The size of the commands written to disk. See SessionBackend for details.
  </summary>
</histogram>

<histogram name="SessionRestore.FirstTabPainted" units="ms">
  <obsolete>
    Deprecated 2014-10 in favor of SessionRestore.ForegroundTabFirstPaint and
    ultimately SessionRestore.ForegroundTabFirstPaint3.
  </obsolete>
  <owner>jeremy@chromium.org</owner>
  <owner>sky@chromium.org</owner>
  <summary>TBD</summary>
</histogram>

<histogram name="SessionRestore.ForegroundTabFirstLoaded" units="ms">
  <owner>jeremy@chromium.org</owner>
  <owner>sky@chromium.org</owner>
  <summary>
    The time from SessionRestore start until a visible tab has finished loading.
  </summary>
</histogram>

<histogram name="SessionRestore.ForegroundTabFirstPaint" units="ms">
  <obsolete>
    Deprecated 2015-03-13 in favor of SessionRestore.ForegroundTabFirstPaint2
    and ultimately SessionRestore.ForegroundTabFirstPaint3.
  </obsolete>
  <owner>jeremy@chromium.org</owner>
  <owner>sky@chromium.org</owner>
  <summary>
    Deprecated 2015-03-13 in favor of SessionRestore.ForegroundTabFirstPaint2
    and ultimately SessionRestore.ForegroundTabFirstPaint3.
  </summary>
</histogram>

<histogram name="SessionRestore.ForegroundTabFirstPaint2" units="ms">
  <obsolete>
    Deprecated 2015-05 in favor of SessionRestore.ForegroundTabFirstPaint3.
  </obsolete>
  <owner>jeremy@chromium.org</owner>
  <owner>sky@chromium.org</owner>
  <summary>
    The time from SessionRestore start until a visible tab's first paint. This
    metric only records paints that have occurred after a tab has loaded.
  </summary>
</histogram>

<histogram name="SessionRestore.ForegroundTabFirstPaint3" units="ms">
  <owner>chrisha@chromium.org</owner>
  <owner>jeremy@chromium.org</owner>
  <owner>sky@chromium.org</owner>
  <summary>
    The time from SessionRestore start until a visible tab's first paint.
  </summary>
</histogram>

<histogram name="SessionRestore.FrameUniqueNameLength" units="bytes">
  <owner>dcheng@chromium.org</owner>
  <summary>
    Records the length of unique names for web frames that are saved as part of
    session restore data. It is logged each time the unique name changes, which
    typically happens when a web frame is first created or its name is changed
    by mutating window.name.
  </summary>
</histogram>

<histogram name="SessionRestore.last_session_file_size" units="KB">
  <owner>jeremy@chromium.org</owner>
  <owner>sky@chromium.org</owner>
  <summary>The size, in k, of the last session file on disk.</summary>
</histogram>

<histogram name="SessionRestore.NavEntryCommittedLongPeriod">
  <owner>jeremy@chromium.org</owner>
  <owner>sky@chromium.org</owner>
  <summary>
    Like NavEntryCommittedPeriod, but specifically to provide a clearer
    breakdown of samples in the 10 minutes - 8 hours range.
  </summary>
</histogram>

<histogram name="SessionRestore.NavEntryCommittedPeriod" units="ms">
  <owner>jeremy@chromium.org</owner>
  <owner>sky@chromium.org</owner>
  <summary>
    Milliseconds between subsequent Save() operations due to a nav entry being
    committed (new tab created + nav initiated).
  </summary>
</histogram>

<histogram name="SessionRestore.NavigationListPrunedLongPeriod">
  <owner>jeremy@chromium.org</owner>
  <owner>sky@chromium.org</owner>
  <summary>
    Like NavListPrunedPeriod, but specifically to provide a clearer breakdown of
    samples in the 10 minutes - 8 hours range.
  </summary>
</histogram>

<histogram name="SessionRestore.NavigationListPrunedPeriod" units="ms">
  <owner>jeremy@chromium.org</owner>
  <owner>sky@chromium.org</owner>
  <summary>
    Milliseconds between subsequent Save() operations due to the navigation list
    being pruned (typically a change in back/forward stacks).
  </summary>
</histogram>

<histogram name="SessionRestore.ParallelTabLoads">
  <owner>jeremy@chromium.org</owner>
  <owner>sky@chromium.org</owner>
  <summary>
    The number of tabs that were loaded simultaneously when restoring a session.
  </summary>
</histogram>

<histogram name="SessionRestore.read_session_file_time" units="ms">
  <owner>jeremy@chromium.org</owner>
  <owner>sky@chromium.org</owner>
  <summary>
    Amount of time to read and assemble the commands from the last session.
  </summary>
</histogram>

<histogram name="SessionRestore.SaveLongPeriod">
  <owner>jeremy@chromium.org</owner>
  <owner>sky@chromium.org</owner>
  <summary>
    Like SavePeriod, but specifically to provide a clearer breakdown of samples
    in the 10 minutes - 8 hours range.
  </summary>
</histogram>

<histogram name="SessionRestore.SavePeriod" units="ms">
  <owner>jeremy@chromium.org</owner>
  <owner>sky@chromium.org</owner>
  <summary>
    Amount of time between subsequent SessionService Save() operations (aka
    updates to session data).
  </summary>
  <details>
    Periods longer than 10 minutes are grouped together; see SaveLongPeriod for
    resolution.
  </details>
</histogram>

<histogram name="SessionRestore.TabActions" enum="SessionRestoreTabActions">
  <owner>chrisha@chromium.org</owner>
  <summary>
    A breakdown of key events that occur to individual tabs as they are
    processed by an ongoing session restore.
  </summary>
</histogram>

<histogram name="SessionRestore.TabClosedLongPeriod">
  <owner>jeremy@chromium.org</owner>
  <owner>sky@chromium.org</owner>
  <summary>
    TabClosedPeriod, but specifically to provide a clearer breakdown of samples
    in the 10 minutes - 8 hours range.
  </summary>
</histogram>

<histogram name="SessionRestore.TabClosedPeriod" units="ms">
  <owner>jeremy@chromium.org</owner>
  <owner>sky@chromium.org</owner>
  <summary>
    Milliseconds between subsequent Save() operations due to a tab being closed.
  </summary>
</histogram>

<histogram name="SessionRestore.TabCount" units="tabs">
  <owner>chrisha@chromium.org</owner>
  <summary>
    The number of tabs involved in a single session restore event.
  </summary>
</histogram>

<histogram name="SessionStorageDatabase.Commit" enum="LevelDBStatus">
  <owner>cmumford@chromium.org</owner>
  <summary>The result of a commit to the sessionStorage database.</summary>
</histogram>

<histogram name="SessionStorageDatabase.Open" enum="SessionStorageDatabaseOpen">
  <owner>michaeln@chromium.org</owner>
  <summary>
    The result (success, failure, or database recreated) of trying to open the
    LevelDB database for sessionStorage.
  </summary>
</histogram>

<histogram name="Settings.DefaultSearchProvider" enum="OmniboxSearchEngine">
  <obsolete>
    Deprecated in Chrome 30.  Use Search.DefaultSearchProviderType instead.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The id of the default search engine domain that is specified in user
    preferences when a profile is loaded.
  </summary>
</histogram>

<histogram name="Settings.EnforcementGroupDeterminedFromTrial"
    enum="BooleanSuccess">
  <owner>gab@chromium.org</owner>
  <summary>
    Whether the SettingsEnforcement group was successfully determined from the
    field trial or if it had to revert to the hardcoded default.
  </summary>
</histogram>

<histogram name="Settings.FilterOnLoadTime" units="ms">
  <owner>gab@chromium.org</owner>
  <summary>
    The amount of time it took to run PrefHashFilter::FilterOnLoad on startup.
  </summary>
</histogram>

<histogram name="Settings.FilterSerializeDataTime" units="ms">
  <owner>gab@chromium.org</owner>
  <summary>
    The amount of time it took to run PrefHashFilter::FilterSerializeData on the
    UI thread prior to writing the Preferences file to disk. Only logged when
    PrefHashFilter::FilterSerializeData actually had work to do.
  </summary>
</histogram>

<histogram name="Settings.GivenShowHomeButton_HomePageIsNewTabPage"
    enum="Boolean">
  <owner>mpearson@chromium.org</owner>
  <summary>
    Whether or not the home page user preference is set to the default NTP value
    when a profile is loaded. This is only logged if the home button is shown.
  </summary>
</histogram>

<histogram name="Settings.HashesDictionaryTrusted" enum="BooleanValid">
  <owner>csharp@chromium.org</owner>
  <owner>gab@chromium.org</owner>
  <summary>
    Logged on profile load. Indicates whether the hashes dictionary for this
    profile is trusted.
  </summary>
</histogram>

<histogram name="Settings.HomePageDomain" enum="OmniboxSearchEngine">
  <obsolete>
    Deprecated in Chrome 30.  Replaced by Settings.HomePageEngineType.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The id of the home page domain that is specified in user preferences when a
    profile is loaded.
  </summary>
</histogram>

<histogram name="Settings.HomePageEngineType" enum="OmniboxSearchEngineType">
  <owner>mpearson@chromium.org</owner>
  <summary>
    Tries to pretend the home page URL is a search URL, and records the search
    engine type of that URL by comparing the TLD+1 of the home page URL with
    those of the different known search engines.  Recorded when a profile is
    opened, if a home page URL has been set.  Note that at least one profile is
    opened on startup.
  </summary>
</histogram>

<histogram name="Settings.HomePageIsNewTabPage" enum="Boolean">
  <obsolete>
    Deprecated 08/05/2013. Replaced by
    Settings.GivenShowHomeButton_HomePageIsNewTabPage.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Whether or not the home page user preference is set to the default NTP value
    when a profile is loaded.
  </summary>
</histogram>

<histogram name="Settings.HomePageIsNewTabPage.PulledFromSync" enum="Boolean">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The value of the home-page-is-new-tab-page pref when pulled down from sync
    to update an out-of-sync local pref store.
  </summary>
</histogram>

<histogram name="Settings.HomePageIsNewTabPage.PushedToSync" enum="Boolean">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The value of the home-page-is-new-tab-page pref when pushed up to sync from
    a change made locally.
  </summary>
</histogram>

<histogram name="Settings.InitializedFromMasterPrefs" enum="BooleanSuccess">
  <owner>csharp@chromium.org</owner>
  <owner>gab@chromium.org</owner>
  <summary>
    Logged on first run when generating the Preferences file from
    master_preferences. True if serializing the generated Preferences file to
    disk was successful, false otherwise. Note: this event does not occur if
    there is no master_preferences file on first run.
  </summary>
</histogram>

<histogram name="Settings.JsonDataReadSizeKilobytes" units="KB">
  <owner>gab@chromium.org</owner>
  <summary>
    The size (in kilobytes) of the JSON settings read from disk on startup.
    Suffixed with the name of the corresponding JSON file.
  </summary>
</histogram>

<histogram name="Settings.JsonDataSizeKilobytes" units="KB">
  <obsolete>
    Deprecated 02/2015. Replaced by Settings.JsonDataReadSizeKilobytes.
  </obsolete>
  <owner>gab@chromium.org</owner>
  <summary>
    The size of the JSON settings content about to be written to disk in
    kilobytes. Suffixed with the name of the JSON file being written to disk.
  </summary>
</histogram>

<histogram name="Settings.JsonDataWriteCount" units="count">
  <owner>raymes@chromium.org</owner>
  <summary>
    The number of writes of a JSON file that occur in every 5 minute period of
    running Chrome. Suffixed with the name of the corresponding JSON file.
  </summary>
</histogram>

<histogram name="Settings.LoadCompletedTime" units="ms">
  <owner>stevenjb@chromium.org</owner>
  <summary>
    The amount of time between the render frame host StartProvisionalLoad event
    and the render frame DocumentOnLoadCompleted event for the settings page.
  </summary>
</histogram>

<histogram name="Settings.LoadCompletedTime.MD" units="ms">
  <owner>stevenjb@chromium.org</owner>
  <summary>
    The amount of time between the render frame host StartProvisionalLoad event
    and the render frame DocumentOnLoadCompleted event for the md-settings page.
  </summary>
</histogram>

<histogram name="Settings.LoadDocumentTime" units="ms">
  <owner>stevenjb@chromium.org</owner>
  <summary>
    The amount of time between the render frame host StartProvisionalLoad and
    DidFinishDocumentLoad events for the settings page.
  </summary>
</histogram>

<histogram name="Settings.LoadDocumentTime.MD" units="ms">
  <owner>stevenjb@chromium.org</owner>
  <summary>
    The amount of time between the render frame host StartProvisionalLoad and
    DidFinishDocumentLoad events for the md-settings page.
  </summary>
</histogram>

<histogram name="Settings.MigratedHashesFromLocalState" enum="BooleanMigrated">
  <owner>csharp@chromium.org</owner>
  <owner>gab@chromium.org</owner>
  <summary>
    Whether, while loading a profile, any preference hashes were migrated from
    Local State to either Preferences or Protected Preferences.
  </summary>
</histogram>

<histogram name="Settings.PinnedTabEngineTypes" enum="OmniboxSearchEngineType">
  <owner>mpearson@chromium.org</owner>
  <summary>
    Tries to pretend pinned tab URLs are search URLs, and records the search
    engine types of those URLs by comparing the TLD+1s of the URLs with those of
    the different known search engines.  Recorded when a profile is opened, if
    there are pinned tabs.  Note that at least one profile is opened on startup.
  </summary>
</histogram>

<histogram name="Settings.PinnedTabs">
  <owner>mpearson@chromium.org</owner>
  <summary>The number of pinned tabs opened when a profile is loaded.</summary>
</histogram>

<histogram name="Settings.RegisterProfilePrefsTime" units="ms">
  <owner>rkaplow@chromium.org</owner>
  <summary>
    The amount of time that elapsed during RegisterProfilePrefs.
  </summary>
</histogram>

<histogram name="Settings.SearchLength">
  <owner>dschuyler@chromium.org</owner>
  <summary>
    The number of characters typed in the chrome://settings page search box.
    Intended to determine if we are making the user type too much to find what
    they are looking for (the search is incremental).
  </summary>
</histogram>

<histogram name="Settings.SearchLengthNoMatch">
  <owner>dschuyler@chromium.org</owner>
  <summary>
    If no matches are found when searching within the chrome://settings page,
    record the length of the search text.
  </summary>
</histogram>

<histogram name="Settings.SearchPageMatchCount">
  <owner>dschuyler@chromium.org</owner>
  <summary>
    The number of search page hits within the chrome://settings page.  This is
    especially important when the count is zero (i.e. we returned no hits for a
    given search in settings).  A search is considered complete via timeout
    since there is no concrete way to define the end of a search (the search is
    incremental).
  </summary>
</histogram>

<histogram name="Settings.SearchSections" enum="SettingsSections">
  <owner>dschuyler@chromium.org</owner>
  <summary>
    If there is no further activity in the search box for 1 second, this records
    one tick each time a settings section is shown as a result of searching
    withing the chrome://settings page.  If multiple matches are found within
    the same section, the section match is only recorded once.
  </summary>
</histogram>

<histogram name="Settings.SearchSubpageMatchCount">
  <owner>dschuyler@chromium.org</owner>
  <summary>
    The number of search subpage hits within the chrome://settings page.  This
    is different from Settings.SearchPageMatchCount in that it is tracking hits
    in subpages rather than top level pages. See also
    Settings.SearchPageMatchCount.
  </summary>
</histogram>

<histogram name="Settings.ShowHomeButton" enum="BooleanEnabled">
  <owner>mpearson@chromium.org</owner>
  <summary>
    Whether or not the home button is enabled in user preferences when a profile
    is loaded.
  </summary>
</histogram>

<histogram name="Settings.ShowHomeButton.PulledFromSync" enum="BooleanEnabled">
  <owner>mpearson@chromium.org</owner>
  <summary>
    The enabled state of the Home button pref when pulled down from sync to
    update an out-of-sync local pref store.
  </summary>
</histogram>

<histogram name="Settings.ShowHomeButton.PushedToSync" enum="BooleanEnabled">
  <owner>mpearson@chromium.org</owner>
  <summary>
    The enabled state of the Home button pref when pushed up to sync from a
    change made locally.
  </summary>
</histogram>

<histogram name="Settings.StartSetAsDefault" enum="BooleanHit">
  <owner>pmonette@chromium.org</owner>
  <summary>
    The user clicked &quot;Make Google Chrome the default browser&quot; on the
    settings page.
  </summary>
</histogram>

<histogram name="Settings.StartupPageDomains" enum="OmniboxSearchEngine">
  <obsolete>
    Deprecated in Chrome 30.  Replaced by Settings.StartupPageEngineTypes.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The ids of startup page domains that are specified in user preferences when
    a profile is loaded.
  </summary>
</histogram>

<histogram name="Settings.StartupPageEngineTypes"
    enum="OmniboxSearchEngineType">
  <owner>mpearson@chromium.org</owner>
  <summary>
    Tries to pretend the startup page URLs are search URLs, and records the
    search engine types of those URLs by comparing the TLD+1s of the URLs with
    those of the different known search engines.  Recorded when a profile is
    opened, if startup page URLs have been set.  Note that at least one profile
    is opened on startup.
  </summary>
</histogram>

<histogram name="Settings.StartupPageLoadSettings" enum="SessionStartupPref">
  <owner>mpearson@chromium.org</owner>
  <summary>The startup page settings when a profile is loaded.</summary>
</histogram>

<histogram name="Settings.StartupPageLoadSettings.PulledFromSync"
    enum="SessionStartupPref">
  <owner>mpearson@chromium.org</owner>
  <summary>
    The startup page setting when pulled down from sync to update an out-of-sync
    local pref store.
  </summary>
</histogram>

<histogram name="Settings.StartupPageLoadSettings.PushedToSync"
    enum="SessionStartupPref">
  <owner>mpearson@chromium.org</owner>
  <summary>
    The startup page setting when pushed up to sync from a change made locally.
  </summary>
</histogram>

<histogram name="Settings.StartupPageLoadURLs">
  <owner>mpearson@chromium.org</owner>
  <summary>
    The number of URLs to be loaded on startup when a profile is loaded, if the
    startup page setting is set to load URLs.
  </summary>
</histogram>

<histogram name="Settings.StartupURLsMigration" enum="StartupURLsMigration">
  <obsolete>
    Deprecated 12/2015.
  </obsolete>
  <owner>mad@chromium.org</owner>
  <summary>The startup URLs pref migration steps.</summary>
</histogram>

<histogram name="Settings.StartupURLsResetTime" units="ms">
  <obsolete>
    Deprecated 12/2015.
  </obsolete>
  <owner>mad@chromium.org</owner>
  <summary>
    The time elapsed in milliseconds in between startup URLs pref migration. A
    value of 0 indicates that the last migration time was in the future due to
    e.g. an incorrect system time.
  </summary>
</histogram>

<histogram name="Settings.TimeToFirstSearch" units="ms">
  <owner>dschuyler@chromium.org</owner>
  <summary>
    The time between when the chrome://settings page is opened to the first time
    a search is done within that page.  This is intended to evaluate how long a
    user looks for a setting before giving up and searching for it.
  </summary>
</histogram>

<histogram name="Settings.TrackedPreferenceChanged" enum="TrackedPreference">
  <owner>gab@chromium.org</owner>
  <summary>
    The id of a tracked preference whose value has been changed since the last
    time Chrome set it.
  </summary>
</histogram>

<histogram name="Settings.TrackedPreferenceCleared" enum="TrackedPreference">
  <owner>gab@chromium.org</owner>
  <summary>
    The id of a tracked preference whose value has been cleared since the last
    time Chrome set it.
  </summary>
</histogram>

<histogram name="Settings.TrackedPreferenceInitialized"
    enum="TrackedPreference">
  <owner>gab@chromium.org</owner>
  <summary>
    The id of a tracked preference whose last value isn't known. We may be just
    starting to track the preference, or local state may have been changed
    outside of Chrome. This should only happen once per pref per profile.
  </summary>
</histogram>

<histogram name="Settings.TrackedPreferenceMigrated" enum="TrackedPreference">
  <obsolete>
    Deprecated 2014-07.
  </obsolete>
  <owner>gab@chromium.org</owner>
  <summary>
    Logs the tracked preference id when it is migrated to the new MAC algorithm.
    This should only happen once per pref per profile.
  </summary>
</histogram>

<histogram name="Settings.TrackedPreferenceMigratedLegacyDeviceId"
    enum="TrackedPreference">
  <owner>gab@chromium.org</owner>
  <summary>
    The id of a tracked preference whose value has not changed since the last
    time Chrome set it, but which was last set using a legacy device ID. Each
    user should report this at most once per preference id and immediately be
    migrated to the latest hashing model.
  </summary>
</histogram>

<histogram name="Settings.TrackedPreferenceNullInitialized"
    enum="TrackedPreference">
  <owner>gab@chromium.org</owner>
  <summary>
    The id of a tracked preference which was initialized despite the absence of
    a MAC as its value was NULL.
  </summary>
</histogram>

<histogram name="Settings.TrackedPreferenceReset" enum="TrackedPreference">
  <owner>gab@chromium.org</owner>
  <summary>The id of a tracked preference which was reset by Chrome.</summary>
</histogram>

<histogram name="Settings.TrackedPreferencesAlternateStoreVersion"
    enum="PrefHashStoreVersion">
  <obsolete>
    Deprecated 2014-06.
  </obsolete>
  <owner>gab@chromium.org</owner>
  <summary>
    The version of a PrefHashStore, reported once for each alternate
    PrefHashStore (not associated to the default profile) from a delayed task on
    startup.
  </summary>
</histogram>

<histogram name="Settings.TrackedPreferencesAlternateStoreVersionUpdatedFrom"
    enum="PrefHashStoreVersion">
  <obsolete>
    Deprecated 2014-06.
  </obsolete>
  <owner>gab@chromium.org</owner>
  <summary>
    The previous version of an alternate PrefHashStore (not associated to the
    default profile) that was updated from a delayed task on startup. This
    should match Settings.TrackedPreferencesAlternateStoreVersion fairly closely
    for all versions but VERSION_LATEST which should never be reported here.
  </summary>
</histogram>

<histogram name="Settings.TrackedPreferencesInitializedForUnloadedProfile"
    enum="BooleanHit">
  <obsolete>
    Deprecated 2014-02 in favor of
    Settings.TrackedPreferencesAlternateStoreVersionUpdatedFrom.
  </obsolete>
  <owner>gab@chromium.org</owner>
  <summary>
    Preference tracking was initialized for an unloaded profile. This should
    happen at most once per profile.
  </summary>
</histogram>

<histogram name="Settings.TrackedPreferencesNoEnforcementOnDomain"
    enum="BooleanEnabled">
  <owner>gab@chromium.org</owner>
  <summary>
    Whether settings enforcement was cancelled for a machine joined to a domain.
    Reported once per session on browser startup (note: this histogram was
    disabled for part of M40).
  </summary>
</histogram>

<histogram name="Settings.TrackedPreferenceTrustedInitialized"
    enum="TrackedPreference">
  <owner>gab@chromium.org</owner>
  <summary>
    The id of a tracked preference which was initialized despite the absence of
    a MAC as the current MACs are trusted, infering that this is a newly tracked
    pref.
  </summary>
</histogram>

<histogram name="Settings.TrackedPreferenceUnchanged" enum="TrackedPreference">
  <owner>gab@chromium.org</owner>
  <summary>
    The id of a tracked preference whose value has not changed since the last
    time Chrome set it.
  </summary>
</histogram>

<histogram name="Settings.TrackedPreferenceWantedReset"
    enum="TrackedPreference">
  <owner>gab@chromium.org</owner>
  <summary>
    The id of a tracked preference which Chrome would have reset had the config
    allowed it.
  </summary>
</histogram>

<histogram name="Settings.TrackedSplitPreferenceChanged">
  <owner>gab@chromium.org</owner>
  <summary>
    The number of items that had changed in a dictionary pref when
    Settings.TrackedPreferenceChanged is reported for that pref.
  </summary>
</histogram>

<histogram name="Settings.ZoomLevelPreferencesMigrated" enum="BooleanMigrated">
  <obsolete>
    Deprecated 2015-08-18.
  </obsolete>
  <owner>wjmaclean@chromium.org</owner>
  <summary>
    Tracks migration to per-partition zoom-level preferences during profile
    initialization.
  </summary>
</histogram>

<histogram name="SettingsResetBubble.NumNoThanksPerReset">
  <owner>mad@chromium.org</owner>
  <summary>
    Counts the number of times the user clicked on the No Thanks button of the
    settings reset bubble before clicking on the Reset button in the same Chrome
    session.
  </summary>
</histogram>

<histogram name="Setup.Install.ApplyArchivePatchTime" units="ms">
  <owner>grt@chromium.org</owner>
  <summary>
    The elapesed time to apply a patch to a previous version's chrome.7z archive
    to generate a new chrome.7z archive. This histogram only applies to diff
    updates.
  </summary>
</histogram>

<histogram name="Setup.Install.HasArchivePatch" enum="Boolean">
  <owner>grt@chromium.org</owner>
  <summary>
    True if the chrome.packed.7z archive contains a patch (in which case a diff
    update is taking place) or false if it contains a full archive (in which
    case a new install or a full update is taking place).
  </summary>
</histogram>

<histogram name="Setup.Install.PeakPagefileUsage" units="KB">
  <owner>huangs@chromium.org</owner>
  <summary>
    The peak page file usage by setup.exe in KB during install or uninstall
    attempt.
  </summary>
</histogram>

<histogram name="Setup.Install.PeakWorkingSetSize" units="KB">
  <owner>huangs@chromium.org</owner>
  <summary>
    The peak working set size of setup.exe in KB during install or uninstall
    attempt.
  </summary>
</histogram>

<histogram name="Setup.Install.Result" enum="SetupInstallResult">
  <owner>grt@chromium.org</owner>
  <owner>bcwhite@chromium.org</owner>
  <summary>
    The final exit-result of the entire run of setup.exe on Windows.
  </summary>
</histogram>

<histogram name="Setup.Install.UncompressArchivePatchTime" units="ms">
  <owner>grt@chromium.org</owner>
  <summary>
    The elapsed time to uncompress a chrome.7z patch. This histogram only
    applies to diff updates.
  </summary>
</histogram>

<histogram name="Setup.Install.UncompressFullArchiveTime" units="ms">
  <owner>grt@chromium.org</owner>
  <summary>
    The elapsed time to uncompress a full chrome.7z archive. This histogram only
    applies to new installs and to full updates.
  </summary>
</histogram>

<histogram name="Setup.Install.UnpackFullArchiveTime" units="ms">
  <owner>grt@chromium.org</owner>
  <summary>
    The elapsed time to unpack the uncompressed chrome.7z archive. This
    histogram applies to all installs and updates.
  </summary>
</histogram>

<histogram name="SharedMemory.TimeSpentMakingAnonymousMemory" units="ms">
  <obsolete>
    Deprecated 2015-06 because the Finch experiment SharedMemoryCreateStrategy
    has finished running.
  </obsolete>
  <owner>erikchen@chromium.org</owner>
  <summary>
    The time spent making a new region of shared, anonymous memory. This metric
    is not emitted if the shared memory region is read only.
  </summary>
</histogram>

<histogram name="SharedWorker.RendererSurviveForWorkerTime" units="ms">
  <owner>horo@chromium.org</owner>
  <summary>
    A survival time of RenderProcessHostImpl for the In-renderer Shared Worker
    from when FastShutdownIfPossible() is called.
  </summary>
</histogram>

<histogram name="SharedWorker.TimeToDeleted" units="ms">
  <owner>horo@chromium.org</owner>
  <summary>
    The lifetime of a SharedWorkerHost. This roughly corresponds to the lifetime
    of SharedWorker.
  </summary>
</histogram>

<histogram name="SharedWorker.TimeToScriptLoaded" units="ms">
  <owner>horo@chromium.org</owner>
  <summary>
    The time from the creation of SharedWorkerHost until when WorkerScriptLoaded
    is called.
  </summary>
</histogram>

<histogram name="SharedWorker.TimeToScriptLoadFailed" units="ms">
  <owner>horo@chromium.org</owner>
  <summary>
    The time from the creation of SharedWorkerHost until when
    WorkerScriptLoadFailed is called.
  </summary>
</histogram>

<histogram name="ShortcutsProvider.DatabaseSize">
  <owner>mpearson@chromium.org</owner>
  <summary>
    The number of entries in shortcuts backend's database when initialized,
    which happens during profile load.
  </summary>
</histogram>

<histogram name="ShortcutsProvider.QueryIndexTime" units="ms">
  <owner>davidben@chromium.org</owner>
  <summary>
    The time it takes for the ShortcutsProvider to perform a query after the
    user has typed N characters.
  </summary>
</histogram>

<histogram name="Signin" enum="SigninHelperFlow">
  <owner>mlerman@chromium.org</owner>
  <summary>
    Tracks user interactions as they sign in through a flow. The suffix of the
    histogram indicates what UI widget or application flow triggered the signin
    flow.
  </summary>
</histogram>

<histogram name="Signin.AccountEquality" enum="SigninAccountEquality">
  <owner>skym@chromium.org</owner>
  <summary>
    There are two separate ways to test for account equality, using the account
    id or the email. Historically the email was always used, but going forward
    email will be modifiable. Now when we check account equality we use both
    approaches and emit this metric to capture if they agreed or not.
  </summary>
</histogram>

<histogram name="Signin.AccountReconcilorState.OnGaiaResponse"
    enum="SigninAccountReconcilorState">
  <owner>bzanotti@chromium.org</owner>
  <summary>
    Records the state of the account reconcilor when GAIA returns a specific
    response.
  </summary>
</histogram>

<histogram name="Signin.AddAccount" enum="BooleanSuccess">
  <owner>mlerman@chromium.org</owner>
  <summary>
    Track when chrome successfully adds an account. Failures are not tracked.
  </summary>
</histogram>

<histogram name="Signin.AndroidGetAccountsTime" units="ms">
  <owner>nyquist@chromium.org</owner>
  <summary>
    The time it takes to retrieve the list of accounts from the system.
  </summary>
</histogram>

<histogram name="Signin.AndroidSigninPromoAction"
    enum="AndroidSigninPromoAction">
  <obsolete>
    Removed this histogram since we have had newly designed histograms
    Signin.SigninStartedAccessPoint, Signin.SigninCompletedAccessPoint, and
    Signin.SigninReason.
  </obsolete>
  <owner>guohui@chromium.org</owner>
  <summary>Track how a user interfacts with the android signin promo.</summary>
</histogram>

<histogram name="Signin.AuthError" enum="GoogleServiceAuthError">
  <owner>mlerman@chromium.org</owner>
  <summary>
    Log the type of GAIA authentication error that occur whenever the error
    state changes.
  </summary>
</histogram>

<histogram name="Signin.DuringFirstRun">
  <owner>mlerman@chromium.org</owner>
  <summary>
    Track if the profile sign in took place during First Run or not. Logged at
    signin time. True means signin took place during First Run, False means
    anytime after.
  </summary>
</histogram>

<histogram name="Signin.ElapsedTimeFromInstallToSignin" units="minutes">
  <owner>mlerman@chromium.org</owner>
  <summary>
    Track how many minutes of local system time elapsed from when Chrome was
    installed to when Signin occured for this profile.
  </summary>
</histogram>

<histogram name="Signin.InvestigatedScenario" enum="SigninInvestigatedScenario">
  <owner>skym@chromium.org</owner>
  <summary>
    Records the general type of signin that is occuring in relation to previous
    signin and local data.
  </summary>
</histogram>

<histogram name="Signin.ListAccountsFailure" enum="GoogleServiceAuthError">
  <owner>mlerman@chromium.org</owner>
  <summary>
    Failure reason of ListAccounts call failure during account reconciliation,
    ChromeOS login, or signin internals queries.
  </summary>
</histogram>

<histogram name="Signin.ListAccountsRetry" enum="GoogleServiceAuthError">
  <owner>mlerman@chromium.org</owner>
  <summary>
    Retry reason of failed ListAccounts call during Chrome OS login during
    account reconciliation, ChromeOS login, or signin internals queries.
  </summary>
</histogram>

<histogram name="Signin.OAuth2TokenGetFailure" enum="GoogleServiceAuthError">
  <owner>mlerman@chromium.org</owner>
  <summary>
    Reason fetching an OAuth2 Token failed. Available on all OSes.
  </summary>
</histogram>

<histogram name="Signin.OAuth2TokenGetRetry" enum="GoogleServiceAuthError">
  <owner>mlerman@chromium.org</owner>
  <summary>
    Reason fetching an OAuth2 Token is being retried. Available on all OSes.
  </summary>
</histogram>

<histogram name="Signin.OneClickConfirmation" enum="SigninFlowConfirmations">
  <owner>noms@chromium.org</owner>
  <summary>
    Count of the ways users interact with the confirmation dialogs of the new
    web based sign in to Chrome flow (accessed via the one click signin).
  </summary>
</histogram>

<histogram name="Signin.Reauth" enum="SigninReauthStates">
  <owner>noms@chromium.org</owner>
  <summary>Tracks events related to the reauthentication Gaia page.</summary>
</histogram>

<histogram name="Signin.Reconciler.AddedToChrome">
  <obsolete>
    Deprecated 2014-09 because chrome no longer tries to reconcile from the
    cookie jar to the browser.
  </obsolete>
  <owner>mlerman@chromium.org</owner>
  <summary>
    How many accounts were added to the browser's token service because they
    were in the cookie jar.
  </summary>
</histogram>

<histogram name="Signin.Reconciler.AddedToCookieJar">
  <owner>mlerman@chromium.org</owner>
  <summary>
    How many accounts were added to the cookie jar because they were in the
    browser's token service.
  </summary>
</histogram>

<histogram name="Signin.Reconciler.AllExternalCcResultCompleted"
    enum="BooleanSuccess">
  <owner>mlerman@chromium.org</owner>
  <summary>
    Records whether all external connections have been successfully checked (a
    value of &quot;true&quot;) or not (&quot;false&quot;) when the reconciler
    attempts to perform MergeSession.
  </summary>
</histogram>

<histogram name="Signin.Reconciler.DifferentPrimaryAccounts"
    enum="DifferentPrimaryAccounts">
  <owner>mlerman@chromium.org</owner>
  <summary>
    After execution of the account reconcilor, compares the primary account in
    the token service to the primary GAIA account of the cookie jar.
  </summary>
</histogram>

<histogram name="Signin.Reconciler.Duration">
  <owner>rogerta@chromium.org</owner>
  <summary>Records the execution time of the account reconciler.</summary>
</histogram>

<histogram name="Signin.Reconciler.ExternalCcResultTime.Completed">
  <owner>mlerman@chromium.org</owner>
  <summary>
    Records the time it took to successfully check all external connections
    whenever the reconciler performs a reconciliation.
  </summary>
</histogram>

<histogram name="Signin.Reconciler.ExternalCcResultTime.NotCompleted">
  <owner>mlerman@chromium.org</owner>
  <summary>
    Records the time it took to check only a portion of external connections
    whenever the reconciler performs a reconciliation.  This means that either a
    network error occured while checking some sites or the site did not respond
    before the check timeout.
  </summary>
</histogram>

<histogram name="Signin.Reconciler.RemovedFromCookieJar">
  <owner>mlerman@chromium.org</owner>
  <summary>
    How many accounts were removed from the cookie jar because they were not in
    the browser's token service.
  </summary>
</histogram>

<histogram name="Signin.RefreshTokenAnnotationRequest" enum="BooleanSuccess">
  <owner>pavely@chromium.org</owner>
  <summary>
    Track when chrome successfully sends RefreshTokenAnnotationRequest.
  </summary>
</histogram>

<histogram name="Signin.SignedInDurationBeforeSignout" units="minutes">
  <owner>mlerman@chromium.org</owner>
  <summary>
    Track how many minutes of real time (not browser active time) elapsed
    between profile signin and signout.
  </summary>
</histogram>

<histogram name="Signin.SigninCompletedAccessPoint" enum="SigninAccessPoint">
  <owner>gogerald@chromium.org</owner>
  <summary>Logs the original access point of each completed sign in.</summary>
</histogram>

<histogram name="Signin.SigninReason" enum="SigninReason">
  <owner>gogerald@chromium.org</owner>
  <summary>Logs the reason of each completed sign in.</summary>
</histogram>

<histogram name="Signin.SigninSource" enum="SigninSource">
  <obsolete>
    Removed this histogram since we have had newly designed histograms
    Signin.SigninStartedAccessPoint, Signin.SigninCompletedAccessPoint, and
    Signin.SigninReason.
  </obsolete>
  <owner>noms@chromium.org</owner>
  <summary>
    Logs the original source that displayed the signin or reauth Gaia page,
    before the page is displayed.
  </summary>
</histogram>

<histogram name="Signin.SigninStartedAccessPoint" enum="SigninAccessPoint">
  <owner>gogerald@chromium.org</owner>
  <summary>
    Logs the original access point that displayed the signin or reauth Gaia
    page, before the page is displayed.
  </summary>
</histogram>

<histogram name="Signin.SignoutDeleteProfile" enum="BooleanDeletedOrNot">
  <owner>skym@chromium.org</owner>
  <summary>
    If the user chose to delete their profile or not when signing out of an
    unmanaged account. When the user is not given a choice this metric is not
    recorded.
  </summary>
</histogram>

<histogram name="Signin.SignoutProfile" enum="SigninSignoutProfile">
  <owner>mlerman@chromium.org</owner>
  <summary>Track how a profile gets signed out.</summary>
</histogram>

<histogram name="Signin.UberTokenFailure" enum="GoogleServiceAuthError">
  <owner>mlerman@chromium.org</owner>
  <summary>
    Reason of failure to acquiring an ubertoken based on an already-minted
    access token. Available on all OSes.
  </summary>
</histogram>

<histogram name="Signin.UberTokenRetry" enum="GoogleServiceAuthError">
  <owner>mlerman@chromium.org</owner>
  <summary>
    Retry reason of failure to acquire an ubertoken based on an already-minted
    access token. Available on all OSes.
  </summary>
</histogram>

<histogram name="Signin.XDevicePromo.BrowsingSessionDuration" units="minutes">
  <owner>anthonyvd@chromium.org</owner>
  <owner>mlerman@chromium.org</owner>
  <summary>
    How long a browsing session was measured to be. Logged when a Browser window
    becomes active if the previous activation was longer than the minimum
    configured in the &quot;CrossDevicePromo&quot; experiment. Desktop only.
  </summary>
</histogram>

<histogram name="Signin.XDevicePromo.BrowsingSessionDurationComputed"
    units="minutes">
  <owner>anthonyvd@chromium.org</owner>
  <owner>mlerman@chromium.org</owner>
  <summary>
    How often browsers are considered activated, which in turn triggers the
    CrossDevicePromo. Logged every time a Browser window becomes active. We need
    this to estimate QPS for RPC calls. Desktop only.
  </summary>
</histogram>

<histogram name="Signin.XDevicePromo.Eligibility"
    enum="SigninXDevicePromoEligibility">
  <owner>anthonyvd@chromium.org</owner>
  <owner>mlerman@chromium.org</owner>
  <summary>
    The reasons for which a profile is or is not eligible for the Desktop Cross
    Device Sign In Promo. Logged every time a new Browsing session is detected
    as part of a Browser window becoming active. Desktop only.
  </summary>
</histogram>

<histogram name="Signin.XDevicePromo.Initialized"
    enum="SigninXDevicePromoInitialized">
  <owner>anthonyvd@chromium.org</owner>
  <owner>mlerman@chromium.org</owner>
  <summary>
    Tracks if profiles initialized the XDevicePromo, and if not, why. Logged at
    Profile startup and (if not initialized then) when a new browsing session is
    detected during Browser window activation. Desktop only.
  </summary>
</histogram>

<histogram name="SimpleCache.CheckCRCResult" enum="CheckCRCResult">
  <owner>gavinp@chromium.org</owner>
  <summary>
    Whether or not the CRC was checked at the moment when the last reference to
    a read-only entry stream is closed.
  </summary>
</histogram>

<histogram name="SimpleCache.CreationToIndex" units="ms">
  <owner>gavinp@chromium.org</owner>
  <summary>
    The time from the creation of the simple cache backend until the index has
    been loaded from disk.
  </summary>
</histogram>

<histogram name="SimpleCache.CreationToIndexFail" units="ms">
  <owner>gavinp@chromium.org</owner>
  <summary>
    The time from the creation of the simple cache backend until the index fails
    to load.
  </summary>
</histogram>

<histogram name="SimpleCache.DiskOpenLatency" units="ms">
  <owner>rdsmith@chromium.org</owner>
  <summary>
    The time to access (open and read headers from all files) the cache entry on
    disk.
  </summary>
</histogram>

<histogram name="SimpleCache.EntryCreatedAndStream2Omitted"
    enum="SimpleCache.EntryCreatedAndStream2Omitted">
  <owner>gavinp@chromium.org</owner>
  <summary>
    Whether, upon creation of a new cache entry, the file for stream 2 was
    omitted since that stream was empty.
  </summary>
</histogram>

<histogram name="SimpleCache.EntryCreationResult" enum="BooleanSuccess">
  <owner>gavinp@chromium.org</owner>
  <summary>
    For entry creation operations that were sent to the disk, the result of
    creation.
  </summary>
</histogram>

<histogram name="SimpleCache.EntryCreationTime" units="ms">
  <owner>gavinp@chromium.org</owner>
  <summary>The time, in ms, spent creating a new entry on disk.</summary>
</histogram>

<histogram name="SimpleCache.EntryOpenedAndStream2Removed"
    enum="SimpleCache.EntryOpenedAndStream2Removed">
  <owner>gavinp@chromium.org</owner>
  <summary>
    Whether, upon opening of an existing cache entry, stream 2 was empty and the
    file for that stream was therefore removed.
  </summary>
</histogram>

<histogram name="SimpleCache.EntryOperationsPending">
  <owner>gavinp@chromium.org</owner>
  <summary>
    At the time that operations are run, the number of pending operations on a
    particular entry.
  </summary>
</histogram>

<histogram name="SimpleCache.Eviction.CacheSizeOnStart" units="bytes">
  <obsolete>
    Deprecated 2013 in favour of SimpleCache.Eviction.CacheSizeOnStart2
  </obsolete>
  <owner>gavinp@chromium.org</owner>
  <summary>The size of the cache at the beginning of an eviction.</summary>
</histogram>

<histogram name="SimpleCache.Eviction.CacheSizeOnStart2" units="KB">
  <owner>gavinp@chromium.org</owner>
  <summary>The size of the cache at the beginning of an eviction.</summary>
</histogram>

<histogram name="SimpleCache.Eviction.EntryCount">
  <owner>gavinp@chromium.org</owner>
  <summary>The number of entries to be erased in an eviction.</summary>
</histogram>

<histogram name="SimpleCache.Eviction.MaxCacheSizeOnStart" units="bytes">
  <obsolete>
    Deprecated 2013 in favour of SimpleCache.Eviction.MaxCacheSizeOnStart2
  </obsolete>
  <owner>gavinp@chromium.org</owner>
  <summary>
    The maximum allowed size of the cache at the beginning of an eviction.
  </summary>
</histogram>

<histogram name="SimpleCache.Eviction.MaxCacheSizeOnStart2" units="KB">
  <owner>gavinp@chromium.org</owner>
  <summary>
    The maximum allowed size of the cache at the beginning of an eviction.
  </summary>
</histogram>

<histogram name="SimpleCache.Eviction.Result" enum="BooleanSuccess">
  <owner>gavinp@chromium.org</owner>
  <summary>The result of an eviction.</summary>
</histogram>

<histogram name="SimpleCache.Eviction.SizeOfEvicted" units="bytes">
  <obsolete>
    Deprecated 2013 in favour of SimpleCache.Eviction.SizeOfEvicted2
  </obsolete>
  <owner>gavinp@chromium.org</owner>
  <summary>The number of bytes to be erased in an eviction.</summary>
</histogram>

<histogram name="SimpleCache.Eviction.SizeOfEvicted2" units="KB">
  <owner>gavinp@chromium.org</owner>
  <summary>The amount of memory freed in an eviction.</summary>
</histogram>

<histogram name="SimpleCache.Eviction.SizeWhenDone" units="bytes">
  <obsolete>
    Deprecated 2013 in favour of SimpleCache.Eviction.SizeWhenDone2
  </obsolete>
  <owner>gavinp@chromium.org</owner>
  <summary>The size of the cache after running an eviction.</summary>
</histogram>

<histogram name="SimpleCache.Eviction.SizeWhenDone2" units="KB">
  <owner>gavinp@chromium.org</owner>
  <summary>The size of the cache after running an eviction.</summary>
</histogram>

<histogram name="SimpleCache.Eviction.TimeToDone" units="ms">
  <owner>gavinp@chromium.org</owner>
  <summary>Time spent completing an eviction.</summary>
</histogram>

<histogram name="SimpleCache.Eviction.TimeToSelectEntries" units="ms">
  <owner>gavinp@chromium.org</owner>
  <summary>Time spent selecting entries for eviction.</summary>
</histogram>

<histogram name="SimpleCache.FileDescriptorLimitHard">
  <owner>gavinp@chromium.org</owner>
  <summary>
    The maximum limit of how many file descriptors a process can open.  Emitted
    each time the browser is launched, if the limit could be retrieved.  (This
    is the highest value we could raise the current limit to if we liked.)
  </summary>
</histogram>

<histogram name="SimpleCache.FileDescriptorLimitSoft">
  <owner>gavinp@chromium.org</owner>
  <summary>
    The current limit of how many file descriptors a process can open.  Emitted
    each time the browser is launched, if the limit could be retrieved.  (We can
    raise this to the maximum limit if we like, without root access.)
  </summary>
</histogram>

<histogram name="SimpleCache.FileDescriptorLimitStatus"
    enum="SimpleCache.FileDescriptorLimitStatus">
  <owner>gavinp@chromium.org</owner>
  <summary>
    The result of trying to get the file descriptor limit.  Emitted each time
    the browser is launched.
  </summary>
</histogram>

<histogram name="SimpleCache.GlobalOpenEntryCount">
  <owner>gavinp@chromium.org</owner>
  <summary>
    The number of open entries across all caches backed by the Simple Cache. An
    entry is opened whenever a caller asks to open it to read or write cache
    data, and remains open until the last caller asks to close it. Logged
    whenever an entry is opened or closed.
  </summary>
</histogram>

<histogram name="SimpleCache.HeaderSize" units="bytes">
  <owner>gavinp@chromium.org</owner>
  <summary>
    The size of the header stream of a Simple Cache entry, emitted every time
    the headers are written or rewritten.
  </summary>
</histogram>

<histogram name="SimpleCache.HeaderSizeChange"
    enum="SimpleCacheHeaderSizeChange">
  <owner>gavinp@chromium.org</owner>
  <summary>
    How the header size has changed in a Simple Cache entry, emitted every time
    a write operation occurs on the header stream.  (This includes the initial
    write, rewrites, and other writes that we couldn't classify.)
  </summary>
</histogram>

<histogram name="SimpleCache.HeaderSizeDecreaseAbsolute" units="bytes">
  <owner>gavinp@chromium.org</owner>
  <summary>
    The absolute size decrease of the header stream of a Simple Cache entry,
    emitted every time the headers are rewritten with a smaller size.
  </summary>
</histogram>

<histogram name="SimpleCache.HeaderSizeDecreasePercentage" units="%">
  <owner>gavinp@chromium.org</owner>
  <summary>
    The relative size decrease of the header stream of a Simple Cache entry,
    emitted every time the headers are rewritten with a smaller size.
  </summary>
</histogram>

<histogram name="SimpleCache.HeaderSizeIncreaseAbsolute" units="bytes">
  <owner>gavinp@chromium.org</owner>
  <summary>
    The absolute size increase of the header stream of a Simple Cache entry,
    emitted every time the headers are rewritten with a larger size.
  </summary>
</histogram>

<histogram name="SimpleCache.HeaderSizeIncreasePercentage" units="%">
  <owner>gavinp@chromium.org</owner>
  <summary>
    The relative size increase of the header stream of a Simple Cache entry,
    emitted every time the headers are rewritten with a larger size.
  </summary>
</histogram>

<histogram name="SimpleCache.IndexCorrupt" enum="BooleanCorrupt">
  <owner>gavinp@chromium.org</owner>
  <summary>For each index load, whether the index file was corrupt.</summary>
</histogram>

<histogram name="SimpleCache.IndexCreatedEntryCount">
  <owner>gavinp@chromium.org</owner>
  <summary>The number of entries in a newly created index file.</summary>
</histogram>

<histogram name="SimpleCache.IndexEntriesLoaded">
  <owner>gavinp@chromium.org</owner>
  <summary>Number of entries loaded from the index file on start.</summary>
</histogram>

<histogram name="SimpleCache.IndexEntriesRestored">
  <owner>gavinp@chromium.org</owner>
  <summary>
    Number of entries restored from disk when there was no index or the index
    was corrupted.
  </summary>
</histogram>

<histogram name="SimpleCache.IndexFileStateOnLoad" enum="SimpleIndexState">
  <owner>gavinp@chromium.org</owner>
  <summary>
    The state the index file is at when an attempt is made to load from it.
  </summary>
</histogram>

<histogram name="SimpleCache.IndexInitializationWaiters">
  <owner>gavinp@chromium.org</owner>
  <summary>
    At the time of index initialization, the number of enqueued jobs awaiting
    index initialization.
  </summary>
</histogram>

<histogram name="SimpleCache.IndexInitializeMethod"
    enum="SimpleCacheIndexInitializeMethod">
  <owner>gavinp@chromium.org</owner>
  <summary>The method used to initialize the simple cache index.</summary>
</histogram>

<histogram name="SimpleCache.IndexLoadTime" units="ms">
  <owner>gavinp@chromium.org</owner>
  <summary>
    Time (as measured on the worker pool) spent loading the index file.
  </summary>
</histogram>

<histogram name="SimpleCache.IndexNumEntriesOnWrite">
  <owner>gavinp@chromium.org</owner>
  <summary>The number of entries written to the index on a flush.</summary>
</histogram>

<histogram name="SimpleCache.IndexRestoreTime" units="ms">
  <owner>gavinp@chromium.org</owner>
  <summary>
    Time (as measured on the worker pool) spent restoring the index file by
    iterating directory entries.
  </summary>
</histogram>

<histogram name="SimpleCache.IndexStale" enum="BooleanStale">
  <obsolete>
    Deprecated 07/2013, and replaced by IndexFileStateOnLoad.
  </obsolete>
  <owner>gavinp@chromium.org</owner>
  <summary>For each index load, whether the index file was stale.</summary>
</histogram>

<histogram name="SimpleCache.IndexWriteInterval.Background" units="ms">
  <owner>gavinp@chromium.org</owner>
  <summary>
    The interval between index saves, for apps in the background.
  </summary>
</histogram>

<histogram name="SimpleCache.IndexWriteInterval.Foreground" units="ms">
  <owner>gavinp@chromium.org</owner>
  <summary>
    The interval between index saves, for apps in the foreground.
  </summary>
</histogram>

<histogram name="SimpleCache.IndexWriteReason"
    enum="SimpleCacheIndexWriteReason">
  <owner>gavinp@chromium.org</owner>
  <summary>
    The reason an index was written to disk. Recorded every time an index is
    saved.
  </summary>
</histogram>

<histogram name="SimpleCache.IndexWriteReasonAtLoad"
    enum="SimpleCacheIndexWriteReason">
  <owner>gavinp@chromium.org</owner>
  <summary>
    Recorded immediately after loading a fresh index (INDEX_STATE_FRESH or
    INDEX_STATE_FRESH_CONCURRENT_UPDATES), the reason the loaded index was
    written to disk.
  </summary>
</histogram>

<histogram name="SimpleCache.IndexWriteToDiskTime" units="ms">
  <obsolete>
    Deprecated 2013-05 in favour of
    SimpleCache.SimpleIndexWriteToDiskTime.Background and
    SimpleCache.SimpleIndexWriteToDiskTime.Foreground.
  </obsolete>
  <owner>gavinp@chromium.org</owner>
  <summary>
    The amount of time spend writing the index file to disk, measured starting
    at the beginning of the write on the callback thread, and calculated using
    the completion time on the worker pool.
  </summary>
</histogram>

<histogram name="SimpleCache.IndexWriteToDiskTime.Background" units="ms">
  <owner>gavinp@chromium.org</owner>
  <summary>
    The amount of time spend writing the index file to disk, for apps in the
    background, measured starting at the beginning of the write on the callback
    thread, and calculated using the completion time on the worker pool.
  </summary>
</histogram>

<histogram name="SimpleCache.IndexWriteToDiskTime.Foreground" units="ms">
  <owner>gavinp@chromium.org</owner>
  <summary>
    The amount of time spend writing the index file to disk, for apps in the
    foreground, measured starting at the beginning of the write on the callback
    thread, and calculated using the completion time on the worker pool.
  </summary>
</histogram>

<histogram name="SimpleCache.KeyMatchedOnOpen" enum="BooleanMatched">
  <owner>gavinp@chromium.org</owner>
  <summary>
    For each call to OpenEntry, whether the key on disk matched the request key.
  </summary>
</histogram>

<histogram name="SimpleCache.LastClusterLossPercent" units="%">
  <owner>gavinp@chromium.org</owner>
  <summary>
    For each file in the Simple Cache, the percentage of disk space used by the
    cluster loss, the unused disk space in the last 4096 byte cluster of the
    file.
  </summary>
</histogram>

<histogram name="SimpleCache.LastClusterSize" units="bytes">
  <owner>gavinp@chromium.org</owner>
  <summary>
    For each file in the Simple Cache, the number of bytes in the last 4096 byte
    cluster when the entry is saved to disk.
  </summary>
</histogram>

<histogram name="SimpleCache.OpenEntryIndexState"
    enum="SimpleCacheOpenEntryIndexState">
  <owner>gavinp@chromium.org</owner>
  <summary>
    At the time that an entry is opened, the state of that entry in the index.
  </summary>
</histogram>

<histogram name="SimpleCache.ReadIsParallelizable"
    enum="SimpleCacheReadParallelizable">
  <owner>gavinp@chromium.org</owner>
  <summary>
    For each Read operation, whether it could have been issued in parallel of a
    previous Read operation.
  </summary>
</histogram>

<histogram name="SimpleCache.ReadResult" enum="SimpleCacheReadResult">
  <owner>gavinp@chromium.org</owner>
  <summary>The outcome of Entry::ReadData in the simple cache.</summary>
</histogram>

<histogram name="SimpleCache.StaleIndexExtraEntryCount" units="entries">
  <owner>gavinp@chromium.org</owner>
  <summary>
    Count of the number of entries recorded in the index, but not actually
    present in the cache. Recorded each time a stale index is found and a
    directory rescan is required.
  </summary>
</histogram>

<histogram name="SimpleCache.StaleIndexMissedEntryCount" units="entries">
  <owner>gavinp@chromium.org</owner>
  <summary>
    Count of the number of entries present in a cache, but not recorded in the
    index. Recorded each time a stale index is found and a directory rescan is
    required.
  </summary>
</histogram>

<histogram name="SimpleCache.StaleIndexQuality"
    enum="SimpleCacheStaleIndexQuality">
  <owner>gavinp@chromium.org</owner>
  <summary>
    The quality of a &quot;stale&quot; index compared to a full directory
    rescan. Recorded immediately after every directory scan for stale indexes.
  </summary>
</histogram>

<histogram name="SimpleCache.SyncCheckEOFHasCrc" enum="BooleanHasCrc">
  <owner>gavinp@chromium.org</owner>
  <summary>
    For each EOFRecord found with a valid magic number, indicates if the record
    also contains a CRC.
  </summary>
</histogram>

<histogram name="SimpleCache.SyncCheckEOFResult"
    enum="SimpleCacheSyncCheckEOFResult">
  <owner>gavinp@chromium.org</owner>
  <summary>
    The result, at the synchronous layer, of checking the EOF record of a cache
    entry.
  </summary>
</histogram>

<histogram name="SimpleCache.SyncCloseResult" enum="SimpleCacheSyncCloseResult">
  <owner>gavinp@chromium.org</owner>
  <summary>
    The result, at the synchronous layer, of closing a cache entry.
  </summary>
</histogram>

<histogram name="SimpleCache.SyncCreatePlatformFileError"
    enum="PlatformFileError">
  <owner>gavinp@chromium.org</owner>
  <summary>
    The platform error reported when attempting to create a new cache entry at
    the synchronous layer.
  </summary>
</histogram>

<histogram name="SimpleCache.SyncCreateResult"
    enum="SimpleCacheSyncCreateResult">
  <owner>gavinp@chromium.org</owner>
  <summary>
    The result, at the synchronous layer, reported when attempting to create a
    new cache entry.
  </summary>
</histogram>

<histogram name="SimpleCache.SyncOpenEntryAge" units="hours">
  <owner>gavinp@chromium.org</owner>
  <summary>
    The age of the entry (time since last modified), when opened at the
    synchronous layer.
  </summary>
</histogram>

<histogram name="SimpleCache.SyncOpenPlatformFileError"
    enum="PlatformFileError">
  <owner>gavinp@chromium.org</owner>
  <summary>
    The platform error reported when attempting to create a new cache entry at
    the synchronous layer.
  </summary>
</histogram>

<histogram name="SimpleCache.SyncOpenResult" enum="SimpleCacheSyncOpenResult">
  <owner>gavinp@chromium.org</owner>
  <summary>
    The result, at the synchronous layer, reported when attempting to open a new
    cache entry.
  </summary>
</histogram>

<histogram name="SimpleCache.SyncWriteResult" enum="SimpleCacheSyncWriteResult">
  <owner>gavinp@chromium.org</owner>
  <summary>
    The result, at the synchronous layer, of writing to a cache entry.
  </summary>
</histogram>

<histogram name="SimpleCache.WriteDependencyType"
    enum="SimpleCacheWriteDependencyType">
  <owner>gavinp@chromium.org</owner>
  <summary>
    Shows whether a write operation depends on the previous operation in queue
    particularly in the aspect of its possibility to run in parallel.
  </summary>
</histogram>

<histogram name="SimpleCache.WriteResult" enum="SimpleCacheWriteResult">
  <obsolete>
    Replaced 2013/09/03 by WriteResult2, which adds &quot;fast empty
    return&quot;, which previously showed up as &quot;success&quot;.
  </obsolete>
  <owner>gavinp@chromium.org</owner>
  <summary>The outcome of Entry::WriteData in the simple cache.</summary>
</histogram>

<histogram name="SimpleCache.WriteResult2" enum="SimpleCacheWriteResult">
  <owner>gavinp@chromium.org</owner>
  <summary>The outcome of Entry::WriteData in the simple cache.</summary>
</histogram>

<histogram name="SimpleGeolocation.Request.Event"
    enum="SimpleGeolocationRequestEvent">
  <owner>alemate@chromium.org</owner>
  <summary>Events in reqests processing of IP-based SimpleGeolocation.</summary>
</histogram>

<histogram name="SimpleGeolocation.Request.HasWiFiAccessPoints"
    enum="SimpleGeolocationRequestHasWiFiAccessPoints">
  <owner>alemate@chromium.org</owner>
  <summary>
    This boolean histogram counts SimpleGeolocationRequests carrying nonzero
    number of WiFi access points.
  </summary>
</histogram>

<histogram name="SimpleGeolocation.Request.ResponseCode"
    enum="HttpResponseCode">
  <owner>alemate@chromium.org</owner>
  <summary>Http response codes in IP-based SimpleGeolocation.</summary>
</histogram>

<histogram name="SimpleGeolocation.Request.ResponseFailureTime" units="ms">
  <owner>alemate@chromium.org</owner>
  <summary>
    The time elapsed between the sending of the first API request and the time
    the final (failed) response was recorded. Includes all retries.
  </summary>
</histogram>

<histogram name="SimpleGeolocation.Request.ResponseSuccessTime" units="ms">
  <owner>alemate@chromium.org</owner>
  <summary>
    The time elapsed between the sending of the first API request and the time
    the final (successfull) response was recorded. Includes all retries.
  </summary>
</histogram>

<histogram name="SimpleGeolocation.Request.Result"
    enum="SimpleGeolocationRequestResult">
  <owner>alemate@chromium.org</owner>
  <summary>Result of SimpleGeolocationRequest.</summary>
</histogram>

<histogram name="SimpleGeolocation.Request.Retries">
  <owner>alemate@chromium.org</owner>
  <summary>Number of retries until the final response was recorded.</summary>
</histogram>

<histogram name="SiteEngagementService.DaysSinceLastShortcutLaunch"
    units="days">
  <owner>calamity@chromium.org</owner>
  <owner>dominickn@chromium.org</owner>
  <summary>
    The number of days between launches of an origin saved to homescreen or as a
    bookmark app shortcut. Recorded at the second and each following launch of a
    specific origin from a shortcut, independently per origin.
  </summary>
</histogram>

<histogram name="SiteEngagementService.EngagementPercentageForHTTPS">
  <owner>calamity@chromium.org</owner>
  <owner>dominickn@chromium.org</owner>
  <owner>felt@chromium.org</owner>
  <summary>
    The percentage of total site engagement accumulated by this profile for
    HTTPS URLs as a proportion of all engagement for HTTPS and HTTP URLs.
    Recorded at startup per non-incognito profile, and then upon the first
    engagement-increasing event every hour thereafter.
  </summary>
</histogram>

<histogram name="SiteEngagementService.EngagementScore">
  <owner>calamity@chromium.org</owner>
  <owner>dominickn@chromium.org</owner>
  <summary>
    Distribution of the engagement scores accumulated by a user, recorded at
    startup per non-incognito profile, and then upon the first
    engagement-increasing event every hour thereafter.
  </summary>
</histogram>

<histogram name="SiteEngagementService.EngagementScore.HTTP">
  <owner>calamity@chromium.org</owner>
  <owner>dominickn@chromium.org</owner>
  <owner>felt@chromium.org</owner>
  <summary>
    Distribution of the engagement scores accumulated by a user, recorded at
    startup per non-incognito profile, and then upon the first
    engagement-increasing event every hour thereafter. Limited specifically to
    HTTP URLs.
  </summary>
</histogram>

<histogram name="SiteEngagementService.EngagementScore.HTTPS">
  <owner>calamity@chromium.org</owner>
  <owner>dominickn@chromium.org</owner>
  <owner>felt@chromium.org</owner>
  <summary>
    Distribution of the engagement scores accumulated by a user, recorded at
    startup per non-incognito profile, and then upon the first
    engagement-increasing event every hour thereafter. Limited specifically to
    HTTPS URLs.
  </summary>
</histogram>

<histogram name="SiteEngagementService.EngagementScoreBucket" units="%">
  <owner>calamity@chromium.org</owner>
  <summary>
    The percentage of sites on a user's profile that have engagement scores that
    fall in these buckets, recorded at startup per non-incognito profile, and
    then upon the first engagement-increasing event every hour thereafter.
  </summary>
</histogram>

<histogram name="SiteEngagementService.EngagementType"
    enum="SiteEngagementServiceEngagementType">
  <owner>calamity@chromium.org</owner>
  <owner>dominickn@chromium.org</owner>
  <summary>
    The type of engagement (navigation, user input, etc.) which led to an
    accumulation in site engagement.
  </summary>
</histogram>

<histogram name="SiteEngagementService.MeanEngagement">
  <owner>calamity@chromium.org</owner>
  <owner>dominickn@chromium.org</owner>
  <summary>
    The mean site engagement per origin accumulated by this profile, recorded at
    startup per non-incognito profile, and then upon the first
    engagement-increasing event every hour thereafter.
  </summary>
</histogram>

<histogram name="SiteEngagementService.MedianEngagement">
  <owner>calamity@chromium.org</owner>
  <owner>dominickn@chromium.org</owner>
  <summary>
    The median site engagement per origin accumulated by this profile, recorded
    at startup per non-incognito profile, and then upon the first
    engagement-increasing event every hour thereafter.
  </summary>
</histogram>

<histogram name="SiteEngagementService.OriginsEngaged">
  <owner>calamity@chromium.org</owner>
  <owner>dominickn@chromium.org</owner>
  <summary>
    The total number of origins with a non-zero site engagement score for this
    profile, recorded at startup per non-incognito profile, and then upon the
    first engagement-increasing event every hour thereafter.
  </summary>
</histogram>

<histogram name="SiteEngagementService.OriginsWithMaxDailyEngagement">
  <owner>calamity@chromium.org</owner>
  <owner>dominickn@chromium.org</owner>
  <summary>
    The number of origins which have reached the daily site engagement point
    cap, recorded at startup per non-incognito profile, and then upon the first
    engagement-increasing event every hour thereafter. Thus, each bin N contains
    the number of clients where at least N origins have reached the maximum
    daily site engagement point cap.
  </summary>
</histogram>

<histogram name="SiteEngagementService.OriginsWithMaxEngagement">
  <owner>calamity@chromium.org</owner>
  <owner>dominickn@chromium.org</owner>
  <summary>
    The number of origins which have reached the absolute site engagement point
    cap, recorded at startup per non-incognito profile, and then upon the first
    engagement-increasing event every hour thereafter. Thus, each bin N contains
    the number of clients where at least N origins have reached the maximum
    absolute site engagement point cap.
  </summary>
</histogram>

<histogram name="SiteEngagementService.PercentOriginsWithMaxEngagement">
  <owner>calamity@chromium.org</owner>
  <owner>dominickn@chromium.org</owner>
  <summary>
    The percentage of all origins recorded by the site engagement service which
    have reached the absolute site engagement point cap, recorded at startup per
    non-incognito profile, and then upon the first engagement-increasing event
    every hour thereafter.
  </summary>
</histogram>

<histogram name="SiteEngagementService.TotalEngagement">
  <owner>calamity@chromium.org</owner>
  <owner>dominickn@chromium.org</owner>
  <summary>
    The total site engagement accumulated by this profile, recorded at startup
    per non-incognito profile, and then upon the first engagement-increasing
    event every hour thereafter.
  </summary>
</histogram>

<histogram name="SiteIsolation.AllResponses">
  <owner>creis@chromium.org</owner>
  <summary>
    The count of all network responses received by a renderer. Each response is
    corresponding to one URL requested by a renderer. Incremented when the first
    network packet of a response of this type is received.
  </summary>
</histogram>

<histogram name="SiteIsolation.BrowsingInstanceCount">
  <owner>creis@chromium.org</owner>
  <summary>
    The count of all current BrowsingInstances.  Recorded once per UMA ping.
  </summary>
</histogram>

<histogram name="SiteIsolation.CurrentRendererProcessCount">
  <owner>creis@chromium.org</owner>
  <summary>
    The count of all renderer processes, including WebUI and extensions.
    Recorded once per UMA ping.
  </summary>
</histogram>

<histogram name="SiteIsolation.IsolateAllSitesProcessCountEstimate">
  <owner>creis@chromium.org</owner>
  <summary>
    The upper bound of the predicted renderer process count if we isolated all
    sites, subject to the process limit.  Recorded once per UMA ping.
  </summary>
</histogram>

<histogram name="SiteIsolation.IsolateAllSitesProcessCountLowerBound">
  <owner>creis@chromium.org</owner>
  <summary>
    The lower bound of the predicted renderer process count if we isolated all
    sites, subject to the process limit.  Happens to be the number of unique
    sites.  Recorded once per UMA ping.
  </summary>
</histogram>

<histogram name="SiteIsolation.IsolateAllSitesProcessCountNoLimit">
  <owner>creis@chromium.org</owner>
  <summary>
    The predicted renderer process count if we isolated all sites and if there
    were no process limit.  Recorded once per UMA ping.
  </summary>
</histogram>

<histogram name="SiteIsolation.IsolateAllSitesTotalProcessCountEstimate">
  <owner>creis@chromium.org</owner>
  <summary>
    The predicted total process count if we isolated all sites, subject to the
    process limit.  Recorded once per UMA ping.
  </summary>
</histogram>

<histogram name="SiteIsolation.IsolateExtensionsProcessCountEstimate">
  <owner>nick@chromium.org</owner>
  <summary>
    The upper bound of the predicted renderer process count if we isolated only
    Chrome extensions, subject to the process limit.  Recorded once per UMA
    ping.
  </summary>
</histogram>

<histogram name="SiteIsolation.IsolateExtensionsProcessCountLowerBound">
  <owner>nick@chromium.org</owner>
  <summary>
    The lower bound of the predicted renderer process count if we isolated only
    Chrome extensions, subject to the process limit. Recorded once per UMA ping.
  </summary>
</histogram>

<histogram name="SiteIsolation.IsolateExtensionsProcessCountNoLimit">
  <owner>nick@chromium.org</owner>
  <summary>
    The predicted renderer process count if we isolated only Chrome extensions
    and if there were no process limit.  Recorded once per UMA ping.
  </summary>
</histogram>

<histogram name="SiteIsolation.IsolateExtensionsTotalProcessCountEstimate">
  <owner>nick@chromium.org</owner>
  <summary>
    The predicted total process count if we isolated only Chrome extensions,
    subject to the process limit.  Recorded once per UMA ping.
  </summary>
</histogram>

<histogram name="SiteIsolation.IsolateHttpsSitesProcessCountEstimate">
  <owner>creis@chromium.org</owner>
  <summary>
    The upper bound of the predicted renderer process count if we isolated only
    HTTPS (not HTTP) sites, subject to the process limit.  Recorded once per UMA
    ping.
  </summary>
</histogram>

<histogram name="SiteIsolation.IsolateHttpsSitesProcessCountLowerBound">
  <owner>creis@chromium.org</owner>
  <summary>
    The lower bound of the predicted renderer process count if we isolated only
    HTTPS (not HTTP) sites, subject to the process limit.  Happens to be the
    number of isolated sites.  Recorded once per UMA ping.
  </summary>
</histogram>

<histogram name="SiteIsolation.IsolateHttpsSitesProcessCountNoLimit">
  <owner>creis@chromium.org</owner>
  <summary>
    The predicted renderer process count if we isolated only HTTPS (not HTTP)
    sites and if there were no process limit.  Recorded once per UMA ping.
  </summary>
</histogram>

<histogram name="SiteIsolation.IsolateHttpsSitesTotalProcessCountEstimate">
  <owner>creis@chromium.org</owner>
  <summary>
    The predicted total process count if we isolated only HTTPS (not HTTP)
    sites, subject to the process limit.  Recorded once per UMA ping.
  </summary>
</histogram>

<histogram name="SiteIsolation.IsolateNothingProcessCountEstimate">
  <owner>creis@chromium.org</owner>
  <summary>
    The upper bound of the estimated renderer process count if we isolated no
    sites, subject to the process limit.  Recorded once per UMA ping.
  </summary>
</histogram>

<histogram name="SiteIsolation.IsolateNothingProcessCountLowerBound">
  <owner>creis@chromium.org</owner>
  <summary>
    The lower bound of the predicted renderer process count if we isolated no
    sites, subject to the process limit.  Happens to be the number of isolated
    sites.  Recorded once per UMA ping.
  </summary>
</histogram>

<histogram name="SiteIsolation.IsolateNothingProcessCountNoLimit">
  <owner>creis@chromium.org</owner>
  <summary>
    The predicted renderer process count if we isolated no sites and if there
    were no process limit.  Recorded once per UMA ping.
  </summary>
</histogram>

<histogram name="SiteIsolation.IsolateNothingTotalProcessCountEstimate">
  <owner>creis@chromium.org</owner>
  <summary>
    The predicted total process count if we isolated no sites, subject to the
    process limit.  Recorded once per UMA ping.
  </summary>
</histogram>

<histogram name="SiteIsolation.OutOfProcessIframes">
  <owner>nasko@chromium.org</owner>
  <summary>
    The count of all out-of-process iframes.  Recorded once per UMA ping.
  </summary>
</histogram>

<histogram name="SiteIsolation.ProxyCount">
  <owner>nick@chromium.org</owner>
  <summary>
    The count of all RenderFrameProxyHosts.  Recorded once per UMA ping.
  </summary>
</histogram>

<histogram name="SiteIsolation.ProxyCountPerBrowsingInstance">
  <owner>nick@chromium.org</owner>
  <summary>
    The count of RenderFrameProxyHosts in each BrowsingInstance.  Recorded each
    UMA ping, once per BrowsingInstance.
  </summary>
</histogram>

<histogram name="SiteIsolation.SiteInstancesPerBrowsingInstance">
  <owner>nasko@chromium.org</owner>
  <summary>
    The count of SiteInstances in a single BrowsingInstance. Recorded each UMA
    ping, once per BrowsingInstance.
  </summary>
</histogram>

<histogram name="SiteIsolation.XSD.DataLength" units="byte">
  <owner>creis@chromium.org</owner>
  <summary>
    The number of bytes in the first network packet for a response with headers
    that imply potential illegal cross-site access. Recorded when the first
    network packet of a response of this type is received.
  </summary>
</histogram>

<histogram name="SiteIsolation.XSD.HTML.Blocked">
  <owner>creis@chromium.org</owner>
  <summary>
    The count of blocked cross-site document responses due to having HTML
    content type header and contents sniffed as HTML. Sampled with value of 1
    when the first network packet of a response of this type is received.
  </summary>
</histogram>

<histogram name="SiteIsolation.XSD.HTML.Blocked.NonRenderableStatusCode">
  <owner>creis@chromium.org</owner>
  <summary>
    The count of responses with a nonrenderable HTTP status code among blocked
    cross-site document responses due to their HTML contents. Sampled with value
    1 when the first network packet of a response of this type is received.
  </summary>
</histogram>

<histogram name="SiteIsolation.XSD.HTML.Blocked.RenderableStatusCode"
    enum="ContentResourceType">
  <obsolete>
    Superseded by SiteIsolation.XSD.HTML.Blocked.RenderableStatusCode2 in
    December 2015.
  </obsolete>
  <owner>creis@chromium.org</owner>
  <summary>
    The count of responses with a renderable HTTP status code sub-categorized by
    their requesting context type (e.g., image, script, etc.) among blocked
    cross-site document responses due to their HTML contents. Sampled with a
    resource type (0-14) when the first network packet of a response of this
    type is received.
  </summary>
</histogram>

<histogram name="SiteIsolation.XSD.HTML.Blocked.RenderableStatusCode2"
    enum="ContentResourceType2">
  <owner>creis@chromium.org</owner>
  <summary>
    The count of responses with a renderable HTTP status code sub-categorized by
    their requesting context type (e.g., image, script, etc.) among blocked
    cross-site document responses due to their HTML contents. Sampled with a
    resource type (0-17) when the first network packet of a response of this
    type is received.
  </summary>
</histogram>

<histogram name="SiteIsolation.XSD.HTML.NoSniffBlocked.NonRenderableStatusCode">
  <owner>creis@chromium.org</owner>
  <summary>
    The count of responses with a nonrenderable HTTP status code among blocked
    cross-site document responses due to having HTML content type and nosniff
    headers. Sampled with value 1 when the first network packet of a response of
    this type is received.
  </summary>
</histogram>

<histogram name="SiteIsolation.XSD.HTML.NoSniffBlocked.RenderableStatusCode"
    enum="ContentResourceType">
  <obsolete>
    Superseded by SiteIsolation.XSD.HTML.NoSniffBlocked.RenderableStatusCode2 in
    December 2015.
  </obsolete>
  <owner>creis@chromium.org</owner>
  <summary>
    The count of responses with a renderable HTTP status code sub-categorized by
    their requesting context type (e.g., image, script, etc.), among blocked
    cross-site document responses due to having HTML content type and nosniff
    headers. Sampled with a resource type (0-14) when the first network packet
    of a response of this type is received.
  </summary>
</histogram>

<histogram name="SiteIsolation.XSD.HTML.NoSniffBlocked.RenderableStatusCode2"
    enum="ContentResourceType2">
  <owner>creis@chromium.org</owner>
  <summary>
    The count of responses with a renderable HTTP status code sub-categorized by
    their requesting context type (e.g., image, script, etc.), among blocked
    cross-site document responses due to having HTML content type and nosniff
    headers. Sampled with a resource type (0-17) when the first network packet
    of a response of this type is received.
  </summary>
</histogram>

<histogram name="SiteIsolation.XSD.HTML.NotBlocked">
  <owner>creis@chromium.org</owner>
  <summary>
    The count of not blocked responses despite having an HTML content type
    header due to the failure of content sniffing. Sampled with value 1 when the
    first network packet of a response of this type is received.
  </summary>
</histogram>

<histogram name="SiteIsolation.XSD.HTML.NotBlocked.MaybeJS">
  <owner>creis@chromium.org</owner>
  <summary>
    The count of responses that may be parsed as JavaScript among not blocked
    responses. Sampled with value 1 when the first network packet of a response
    of this type is received.
  </summary>
</histogram>

<histogram name="SiteIsolation.XSD.JSON.Blocked">
  <owner>creis@chromium.org</owner>
  <summary>
    The count of blocked cross-site document responses due to having JSON
    content type header and contents sniffed as JSON. Sampled with value 1 when
    the first network packet of a response of this type is received.
  </summary>
</histogram>

<histogram name="SiteIsolation.XSD.JSON.Blocked.NonRenderableStatusCode">
  <owner>creis@chromium.org</owner>
  <summary>
    The count of responses with a nonrenderable HTTP status code among blocked
    cross-site document responses due to their JSON contents. Sampled with value
    1 when the first network packet of a response of this type is received.
  </summary>
</histogram>

<histogram name="SiteIsolation.XSD.JSON.Blocked.RenderableStatusCode"
    enum="ContentResourceType">
  <obsolete>
    Superseded by SiteIsolation.XSD.JSON.Blocked.RenderableStatusCode2 in
    December 2015.
  </obsolete>
  <owner>creis@chromium.org</owner>
  <summary>
    The count of responses with a renderable HTTP status code sub-categorized by
    their requesting context type (e.g., image, script, etc.), among blocked
    cross-site document responses due to their JSON contents. Sampled with a
    resource type (0-14) when the first network packet of a response of this
    type is received.
  </summary>
</histogram>

<histogram name="SiteIsolation.XSD.JSON.Blocked.RenderableStatusCode2"
    enum="ContentResourceType2">
  <owner>creis@chromium.org</owner>
  <summary>
    The count of responses with a renderable HTTP status code sub-categorized by
    their requesting context type (e.g., image, script, etc.), among blocked
    cross-site document responses due to their JSON contents. Sampled with a
    resource type (0-17) when the first network packet of a response of this
    type is received.
  </summary>
</histogram>

<histogram name="SiteIsolation.XSD.JSON.NoSniffBlocked.NonRenderableStatusCode">
  <owner>creis@chromium.org</owner>
  <summary>
    The count of responses with a nonrenderable HTTP status code among blocked
    cross-site document responses due to having JSON content type and nosniff
    headers. Sampled with value 1 when the first network packet of a response of
    this type is received.
  </summary>
</histogram>

<histogram name="SiteIsolation.XSD.JSON.NoSniffBlocked.RenderableStatusCode"
    enum="ContentResourceType">
  <obsolete>
    Superseded by SiteIsolation.XSD.JSON.NoSniffBlocked.RenderableStatusCode2 in
    December 2015.
  </obsolete>
  <owner>creis@chromium.org</owner>
  <summary>
    The count of responses with a renderable HTTP status code sub-categorized by
    their requesting context type (e.g., image, script, etc.), among blocked
    cross-site document responses due to having JSON content type and nosniff
    headers. Sampled with a resource type (0-14) when the first network packet
    of a response of this type is received.
  </summary>
</histogram>

<histogram name="SiteIsolation.XSD.JSON.NoSniffBlocked.RenderableStatusCode2"
    enum="ContentResourceType2">
  <owner>creis@chromium.org</owner>
  <summary>
    The count of responses with a renderable HTTP status code sub-categorized by
    their requesting context type (e.g., image, script, etc.), among blocked
    cross-site document responses due to having JSON content type and nosniff
    headers. Sampled with a resource type (0-17) when the first network packet
    of a response of this type is received.
  </summary>
</histogram>

<histogram name="SiteIsolation.XSD.JSON.NotBlocked">
  <owner>creis@chromium.org</owner>
  <summary>
    The count of not blocked responses despite having an JSON content type
    header due to the failure of content sniffing. Sampled with value 1 when the
    first network packet of a response of this type is received.
  </summary>
</histogram>

<histogram name="SiteIsolation.XSD.JSON.NotBlocked.MaybeJS">
  <owner>creis@chromium.org</owner>
  <summary>
    The count of responses that may be parsed as JavaScript among not blocked
    responses with a JSON content type header. Sampled with value 1 when the
    first network packet of a response of this type is received.
  </summary>
</histogram>

<histogram name="SiteIsolation.XSD.MimeType" enum="SiteIsolationMimeType">
  <owner>creis@chromium.org</owner>
  <summary>
    MIME type codes for content type header values of potentially cross-site
    document responses, excluding same-site or not http(s) urls. Sampled with a
    MIME type code (0-4) when the first network packet of a response of this
    type is received.
  </summary>
</histogram>

<histogram name="SiteIsolation.XSD.Plain.HTML.Blocked">
  <owner>creis@chromium.org</owner>
  <summary>
    The count of blocked cross-site document responses due to having Plain
    content type header and contents sniffed as HTML. Sampled with value 1 when
    the first network packet of a response of this type is received.
  </summary>
</histogram>

<histogram name="SiteIsolation.XSD.Plain.HTML.Blocked.NonRenderableStatusCode">
  <owner>creis@chromium.org</owner>
  <summary>
    The count of responses with a nonrenderable HTTP status code among blocked
    responses due to their Plain.HTML contents. Sampled with value 1 when the
    first network packet of a response of this type is received.
  </summary>
</histogram>

<histogram name="SiteIsolation.XSD.Plain.HTML.Blocked.RenderableStatusCode"
    enum="ContentResourceType">
  <obsolete>
    Superseded by SiteIsolation.XSD.Plain.HTML.Blocked.RenderableStatusCode2 in
    December 2015.
  </obsolete>
  <owner>creis@chromium.org</owner>
  <summary>
    The count of responses with a renderable HTTP status code sub-categorized by
    their requesting context type (e.g., image, script, etc.), among blocked
    cross-site document responses due to their Plain.HTML contents. Sampled with
    a resource type (0-14) when the first network packet of a response of this
    type is received.
  </summary>
</histogram>

<histogram name="SiteIsolation.XSD.Plain.HTML.Blocked.RenderableStatusCode2"
    enum="ContentResourceType2">
  <owner>creis@chromium.org</owner>
  <summary>
    The count of responses with a renderable HTTP status code sub-categorized by
    their requesting context type (e.g., image, script, etc.), among blocked
    cross-site document responses due to their Plain.HTML contents. Sampled with
    a resource type (0-17) when the first network packet of a response of this
    type is received.
  </summary>
</histogram>

<histogram name="SiteIsolation.XSD.Plain.JSON.Blocked">
  <owner>creis@chromium.org</owner>
  <summary>
    The count of blocked cross-site document responses due to having Plain
    content type header and contents sniffed as JSON. Sampled with value 1 when
    the first network packet of a response of this type is received.
  </summary>
</histogram>

<histogram name="SiteIsolation.XSD.Plain.JSON.Blocked.NonRenderableStatusCode">
  <owner>creis@chromium.org</owner>
  <summary>
    The count of responses with a nonrenderable HTTP status code among blocked
    cross-site document responses due to their Plain.JSON contents. Sampled with
    value 1 when the first network packet of a response of this type is
    received.
  </summary>
</histogram>

<histogram name="SiteIsolation.XSD.Plain.JSON.Blocked.RenderableStatusCode"
    enum="ContentResourceType">
  <obsolete>
    Superseded by SiteIsolation.XSD.Plain.JSON.Blocked.RenderableStatusCode2 in
    December 2015.
  </obsolete>
  <owner>creis@chromium.org</owner>
  <summary>
    The count of responses with a renderable HTTP status code sub-categorized by
    their requesting context type (e.g., image, script, etc.), among blocked
    cross-site document responses due to their Plain.JSON contents. Sampled with
    a resource type (0-14) when the first network packet of a response of this
    type is received.
  </summary>
</histogram>

<histogram name="SiteIsolation.XSD.Plain.JSON.Blocked.RenderableStatusCode2"
    enum="ContentResourceType2">
  <owner>creis@chromium.org</owner>
  <summary>
    The count of responses with a renderable HTTP status code sub-categorized by
    their requesting context type (e.g., image, script, etc.), among blocked
    cross-site document responses due to their Plain.JSON contents. Sampled with
    a resource type (0-17) when the first network packet of a response of this
    type is received.
  </summary>
</histogram>

<histogram
    name="SiteIsolation.XSD.Plain.NoSniffBlocked.NonRenderableStatusCode">
  <owner>creis@chromium.org</owner>
  <summary>
    The count of responses with a nonrenderable HTTP status code among blocked
    cross-site document responses due to having Plain content type and nosniff
    headers. Sampled with value 1 when the first network packet of a response of
    this type is received.
  </summary>
</histogram>

<histogram name="SiteIsolation.XSD.Plain.NoSniffBlocked.RenderableStatusCode"
    enum="ContentResourceType">
  <obsolete>
    Superseded by SiteIsolation.XSD.Plain.NoSniffBlocked.RenderableStatusCode2
    in December 2015.
  </obsolete>
  <owner>creis@chromium.org</owner>
  <summary>
    The count of responses with a renderable HTTP status code sub-categorized by
    their requesting context type (e.g., image, script, etc.), among blocked
    cross-site document responses due to having Plain content type and nosniff
    header. Sampled with a resource type (0-14) when the first network packet of
    a response of this type is received.
  </summary>
</histogram>

<histogram name="SiteIsolation.XSD.Plain.NoSniffBlocked.RenderableStatusCode2"
    enum="ContentResourceType2">
  <owner>creis@chromium.org</owner>
  <summary>
    The count of responses with a renderable HTTP status code sub-categorized by
    their requesting context type (e.g., image, script, etc.), among blocked
    cross-site document responses due to having Plain content type and nosniff
    header. Sampled with a resource type (0-17) when the first network packet of
    a response of this type is received.
  </summary>
</histogram>

<histogram name="SiteIsolation.XSD.Plain.NotBlocked">
  <owner>creis@chromium.org</owner>
  <summary>
    The count of not blocked responses despite having an Plain content type
    header due to the failure of content sniffing. Sampled with value 1 when the
    first network packet of a response of this type is received.
  </summary>
</histogram>

<histogram name="SiteIsolation.XSD.Plain.NotBlocked.MaybeJS">
  <owner>creis@chromium.org</owner>
  <summary>
    The count of responses that may be parsed as JavaScript among not blocked
    responses with a Plain content type header. Sampled with value 1 when the
    first network packet of a response of this type is received.
  </summary>
</histogram>

<histogram name="SiteIsolation.XSD.Plain.XML.Blocked">
  <owner>creis@chromium.org</owner>
  <summary>
    The count of blocked cross-site document responses due to having Plain
    content type header and contents sniffed as XML. Sampled with value 1 when
    the first network packet of a response of this type is received.
  </summary>
</histogram>

<histogram name="SiteIsolation.XSD.Plain.XML.Blocked.NonRenderableStatusCode">
  <owner>creis@chromium.org</owner>
  <summary>
    The count of responses with a nonrenderable HTTP status code among blocked
    cross-site document responses due to their Plain.XML contents. Sampled with
    value 1 when the first network packet of a response of this type is
    received.
  </summary>
</histogram>

<histogram name="SiteIsolation.XSD.Plain.XML.Blocked.RenderableStatusCode"
    enum="ContentResourceType">
  <obsolete>
    Superseded by SiteIsolation.XSD.Plain.XML.Blocked.RenderableStatusCode2 in
    December 2015.
  </obsolete>
  <owner>creis@chromium.org</owner>
  <summary>
    The count of responses with renderable HTTP status codes sub-categorized by
    their requesting context type (e.g., image, script, etc.), among blocked
    cross-site document responses due to their Plain.XML contents. Sampled with
    a resource type (0-14) when the first network packet of a response of this
    type is received.
  </summary>
</histogram>

<histogram name="SiteIsolation.XSD.Plain.XML.Blocked.RenderableStatusCode2"
    enum="ContentResourceType2">
  <owner>creis@chromium.org</owner>
  <summary>
    The count of responses with renderable HTTP status codes sub-categorized by
    their requesting context type (e.g., image, script, etc.), among blocked
    cross-site document responses due to their Plain.XML contents. Sampled with
    a resource type (0-17) when the first network packet of a response of this
    type is received.
  </summary>
</histogram>

<histogram name="SiteIsolation.XSD.XML.Blocked">
  <owner>creis@chromium.org</owner>
  <summary>
    The count of blocked cross-site document responses due to having XML content
    type header and contents sniffed as XML. Sampled with value 1 when the first
    network packet of a response of this type is received.
  </summary>
</histogram>

<histogram name="SiteIsolation.XSD.XML.Blocked.NonRenderableStatusCode">
  <owner>creis@chromium.org</owner>
  <summary>
    The count of responses with nonrenderable HTTP status codes among blocked
    cross-site document responses due to their XML contents. Sampled with value
    1 when the first network packet of a response of this type is received.
  </summary>
</histogram>

<histogram name="SiteIsolation.XSD.XML.Blocked.RenderableStatusCode"
    enum="ContentResourceType">
  <obsolete>
    Superseded by SiteIsolation.XSD.XML.Blocked.RenderableStatusCode2 in
    December 2015.
  </obsolete>
  <owner>creis@chromium.org</owner>
  <summary>
    The count of responses with renderable HTTP status codes sub-categorized by
    their requesting context type (e.g., image, script, etc.), among blocked
    cross-site document responses due to their XML contents. Sampled with a
    resource type (0-14) when the first network packet of a response of this
    type is received.
  </summary>
</histogram>

<histogram name="SiteIsolation.XSD.XML.Blocked.RenderableStatusCode2"
    enum="ContentResourceType2">
  <owner>creis@chromium.org</owner>
  <summary>
    The count of responses with renderable HTTP status codes sub-categorized by
    their requesting context type (e.g., image, script, etc.), among blocked
    cross-site document responses due to their XML contents. Sampled with a
    resource type (0-17) when the first network packet of a response of this
    type is received.
  </summary>
</histogram>

<histogram name="SiteIsolation.XSD.XML.NoSniffBlocked.NonRenderableStatusCode">
  <owner>creis@chromium.org</owner>
  <summary>
    The count of responses with a nonrenderable HTTP status code among blocked
    cross-site document responses due to having XML content type and nosniff
    headers. Sampled with value 1 when the first network packet of a response of
    this type is received.
  </summary>
</histogram>

<histogram name="SiteIsolation.XSD.XML.NoSniffBlocked.RenderableStatusCode"
    enum="ContentResourceType">
  <obsolete>
    Superseded by SiteIsolation.XSD.XML.NoSniffBlocked.RenderableStatusCode2 in
    December 2015.
  </obsolete>
  <owner>creis@chromium.org</owner>
  <summary>
    The count of responses with a renderable HTTP status code sub-categorized by
    their requesting context type (e.g., image, script, etc.), among blocked
    cross-site document responses due to having XML content type and nosniff
    headers. Sampled with a resource type (0-14) when the first network packet
    of a response of this type is received.
  </summary>
</histogram>

<histogram name="SiteIsolation.XSD.XML.NoSniffBlocked.RenderableStatusCode2"
    enum="ContentResourceType2">
  <owner>creis@chromium.org</owner>
  <summary>
    The count of responses with a renderable HTTP status code sub-categorized by
    their requesting context type (e.g., image, script, etc.), among blocked
    cross-site document responses due to having XML content type and nosniff
    headers. Sampled with a resource type (0-17) when the first network packet
    of a response of this type is received.
  </summary>
</histogram>

<histogram name="SiteIsolation.XSD.XML.NotBlocked">
  <owner>creis@chromium.org</owner>
  <summary>
    The count of not blocked responses despite having an XML content type header
    due to the failure of content sniffing. Sampled with value 1 when the first
    network packet of a response of this type is received.
  </summary>
</histogram>

<histogram name="SiteIsolation.XSD.XML.NotBlocked.MaybeJS">
  <owner>creis@chromium.org</owner>
  <summary>
    The count of responses that may be parsed as JavaScript among not blocked
    responses with an XML content type. Sampled with value 1 when the first
    network packet of a response of this type is received.
  </summary>
</histogram>

<histogram name="Skia.DrawTiled" enum="BooleanTiled">
  <owner>ericrk@chromium.org</owner>
  <summary>
    Whether a call to drawBitmap(Rect) or drawImage(Rect) used the tiled or
    non-tiled rasterization path.
  </summary>
</histogram>

<histogram name="Skia.LockTexturePath" enum="SkiaLockTexturePath">
  <owner>ericrk@chromium.org</owner>
  <summary>
    The path taken by Skia when it attempts to lock a texture for use.
  </summary>
</histogram>

<histogram name="Snackbar.Shown" enum="SnackbarIdentifier">
  <owner>ianwen@chromium.org</owner>
  <summary>
    Records how many times a particular snackbar was shown to the user.
  </summary>
</histogram>

<histogram name="SoftwareReporter.Cleaner.HasCompleted" enum="SRTCompleted">
  <owner>mad@chromium.org</owner>
  <summary>
    The state of software reporter cleaner tool runs. A value of &quot;Not
    Completed&quot; can mean either the tool crashed, or the tool was still
    running when Chrome checked.
  </summary>
</histogram>

<histogram name="SoftwareReporter.Cleaner.HasRebooted" enum="BooleanRebooted">
  <owner>mad@chromium.org</owner>
  <summary>
    Whether a reboot happened since the software reporter cleaner tool has
    finished execution with a pre-reboot exit code.
  </summary>
</histogram>

<histogram name="SoftwareReporter.Cleaner.RunningTime" units="ms">
  <owner>mad@chromium.org</owner>
  <summary>How long it took to run the software reporter cleaner tool.</summary>
</histogram>

<histogram name="SoftwareReporter.Cleaner.Version">
  <owner>mad@chromium.org</owner>
  <summary>The build version of the software reporter cleaner tool.</summary>
</histogram>

<histogram name="SoftwareReporter.FoundUwSReadError" enum="BooleanError">
  <owner>mad@chromium.org</owner>
  <summary>
    Whether there was an error reading the registry key containing UwS found by
    the Software Removal Tool.
  </summary>
</histogram>

<histogram name="SoftwareReporter.LastUploadResult" enum="BooleanSuccess">
  <owner>mad@chromium.org</owner>
  <summary>The result of the most recent SRT log upload.</summary>
</histogram>

<histogram name="SoftwareReporter.MajorVersion">
  <owner>mad@chromium.org</owner>
  <summary>
    As SoftwareReporter.MinorVersion, but a double word combination of the other
    components of the version of the software reporter. The high word is the
    first component when there are more than one, and the low word is either the
    second or third one, depending if there are at least 3, or 4 components.
  </summary>
</histogram>

<histogram name="SoftwareReporter.MemoryUsed" units="KB">
  <owner>alito@chromium.org</owner>
  <summary>
    The memory used by the software reporter tool as reported by the tool itself
    via the registry. Logged just after the software reporter tool has finished.
  </summary>
</histogram>

<histogram name="SoftwareReporter.MinorVersion">
  <owner>mad@chromium.org</owner>
  <summary>
    The last component of the version of the software reporter that was executed
    so we can identify when users are not getting their component updated as
    quickly as we expect it.
  </summary>
</histogram>

<histogram name="SoftwareReporter.PromptUsage" enum="SRTPromptUsage">
  <owner>mad@chromium.org</owner>
  <summary>Usage of the Software Removal Tool (SRT) Prompt.</summary>
</histogram>

<histogram name="SoftwareReporter.RunningTime" units="ms">
  <owner>alito@chromium.org</owner>
  <summary>
    The amount of time it took to run the software reporter tool as reported by
    the tool itself via the registry. Logged just after the software reporter
    tool has finished.
  </summary>
</histogram>

<histogram name="SoftwareReporter.RunningTimeAccordingToChrome" units="ms">
  <owner>alito@chromium.org</owner>
  <summary>
    The amount of time it took for the software reporter to run as measured by
    chrome. Logged just after the software reporter tool has finished.
  </summary>
</histogram>

<histogram name="SoftwareReporter.RunningTimeRegistryError"
    enum="SwReporterRunningTimeRegistryError">
  <owner>alito@chromium.org</owner>
  <summary>
    Error encountered when reading the software reporter tool's start and end
    times from the registry.
  </summary>
</histogram>

<histogram name="SoftwareReporter.Step" enum="SwReporterStep">
  <owner>mad@chromium.org</owner>
  <summary>
    The registration and execution steps for the software reporter.
  </summary>
</histogram>

<histogram name="SoftwareReporter.UploadFailureCount">
  <owner>mad@chromium.org</owner>
  <summary>
    The total count of SRT log upload failures experienced by this machine for
    all time. This value is reported at startup by Chrome and is capped at 64.
  </summary>
</histogram>

<histogram name="SoftwareReporter.UploadLongestFailureRun">
  <owner>mad@chromium.org</owner>
  <summary>
    The longest run of upload failures logged by SRT runs. This value is
    reported at startup by Chrome and is capped at 64.
  </summary>
</histogram>

<histogram name="SoftwareReporter.UploadSuccessCount">
  <owner>mad@chromium.org</owner>
  <summary>
    The total count of successful SRT log uploads experienced by this machine
    for all time. This value is reported at startup by Chrome and is capped at
    64.
  </summary>
</histogram>

<histogram name="SpellCheck.SpellingService.Enabled" enum="BooleanEnabled">
  <owner>groby@chromium.org</owner>
  <owner>rlp@chromium.org</owner>
  <summary>
    Whether the user has opted in to asking Google for spelling suggestions.
    Recorded both when spelling is initialized and when the preference is
    changed.
  </summary>
</histogram>

<histogram name="Sqlite.AppCache.Error" enum="SqliteErrorCode">
  <obsolete>
    Moved to Sqlite.Error.AppCache in M-27.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>Error codes returned by sqlite for the appcache db.</summary>
</histogram>

<histogram name="Sqlite.AutoCommitTime" units="ms">
  <owner>shess@chromium.org</owner>
  <summary>
    Record times for INSERT/UPDATE/DELETE statements run outside of an explicit
    transaction.
  </summary>
</histogram>

<histogram name="Sqlite.CloseFailure" enum="SqliteErrorCode">
  <owner>shess@chromium.org</owner>
  <summary>Error which prevented database close.</summary>
</histogram>

<histogram name="Sqlite.CommitTime" units="ms">
  <owner>shess@chromium.org</owner>
  <summary>Record time spent in explicit COMMIT statements.</summary>
</histogram>

<histogram name="Sqlite.Cookie.Error" enum="SqliteErrorCode">
  <obsolete>
    Moved to Sqlite.Error.Cookie in M-27.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>Error codes returned by sqlite the cookie db.</summary>
</histogram>

<histogram name="Sqlite.DatabaseTracker.Error" enum="SqliteErrorCode">
  <obsolete>
    Moved to Sqlite.Error.DatabaseTracker in M-27.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>Error codes returned by sqlite the websqldb tracker db.</summary>
</histogram>

<histogram name="Sqlite.DeprecationVersionResult"
    enum="SqliteVersionDeprecation">
  <owner>shess@chromium.org</owner>
  <summary>
    Annotations for which bits of sql::MetaTable::CheckDeprecated() fire.
  </summary>
</histogram>

<histogram name="Sqlite.DomainBoundCerts.Error" enum="SqliteErrorCode">
  <obsolete>
    Moved to Sqlite.Error.DomainBoundCerts in M-27.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Error codes returned by sqlite for the domain-bound certs db.
  </summary>
</histogram>

<histogram name="Sqlite.DomStorageDatabase.Error" enum="SqliteErrorCode">
  <obsolete>
    Moved to Sqlite.Error.DomStorageDatabase in M-27.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>Error codes returned by sqlite for the domstorage db.</summary>
</histogram>

<histogram name="Sqlite.Error" enum="SqliteErrorCode">
  <owner>shess@chromium.org</owner>
  <summary>SQLite extended error codes.</summary>
</histogram>

<histogram name="Sqlite.Error.IOERR" enum="SqliteIOERRCode">
  <obsolete>
    Replaced 5/14/2013 by expanded Sqlite.Error histogram.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>SQLite extended SQLITE_IOERR codes for all databases.</summary>
</histogram>

<histogram name="Sqlite.History.Error" enum="SqliteErrorCode">
  <obsolete>
    Moved to Sqlite.Error.History in M-27.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>Error codes returned by sqlite for the history db.</summary>
</histogram>

<histogram name="Sqlite.MemoryKB.OneDay" units="KB">
  <owner>shess@chromium.org</owner>
  <summary>
    SQLite memory footprint from sqlite3_memory_used() recorded 1 day after
    first database is opened by sql::Connection.
  </summary>
</histogram>

<histogram name="Sqlite.MemoryKB.OneHour" units="KB">
  <owner>shess@chromium.org</owner>
  <summary>
    SQLite memory footprint from sqlite3_memory_used() recorded 1 hour after
    first database is opened by sql::Connection.
  </summary>
</histogram>

<histogram name="Sqlite.MemoryKB.OneWeek" units="KB">
  <owner>shess@chromium.org</owner>
  <summary>
    SQLite memory footprint from sqlite3_memory_used() recorded 1 week after
    first database is opened by sql::Connection.
  </summary>
</histogram>

<histogram name="Sqlite.MemoryKB.TenMinutes" units="KB">
  <owner>shess@chromium.org</owner>
  <summary>
    SQLite memory footprint from sqlite3_memory_used() recorded 10 minutes after
    first database is opened by sql::Connection.
  </summary>
</histogram>

<histogram name="Sqlite.Migration.History" units="ms">
  <owner>shess@chromium.org</owner>
  <summary>
    Time used to migrate History database schema to a new version.
  </summary>
</histogram>

<histogram name="Sqlite.OpenFailure" enum="SqliteErrorCode">
  <owner>shess@chromium.org</owner>
  <summary>Error which prevented database open.</summary>
</histogram>

<histogram name="Sqlite.OpenProbeFailure" enum="SqliteErrorCode">
  <owner>shess@chromium.org</owner>
  <summary>Error from first read of the database.</summary>
</histogram>

<histogram name="Sqlite.QueryTime" units="ms">
  <owner>shess@chromium.org</owner>
  <summary>Record times for all statements run against the database.</summary>
</histogram>

<histogram name="Sqlite.Quota.Error" enum="SqliteErrorCode">
  <obsolete>
    Moved to Sqlite.Error.Quota in M-27.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>Error codes returned by sqlite for the quota db.</summary>
</histogram>

<histogram name="Sqlite.RazeDatabase" enum="SqliteErrorCode">
  <owner>shess@chromium.org</owner>
  <summary>Errors attempting to Raze() database.</summary>
</histogram>

<histogram name="Sqlite.RazeDatabase2" enum="SqliteErrorCode">
  <owner>shess@chromium.org</owner>
  <summary>Errors on second attempt to Raze() database.</summary>
</histogram>

<histogram name="Sqlite.RazeDatabaseTruncate" enum="SqliteErrorCode">
  <owner>shess@chromium.org</owner>
  <summary>Errors truncating database for Raze().</summary>
</histogram>

<histogram name="Sqlite.RecoveryEvents" enum="SqliteRecoveryEventEnum">
  <owner>shess@chromium.org</owner>
  <summary>
    Records specific failure and success cases in sql::Recovery implementation,
    to determine which cases (if any) might be worth writing additional
    automated recovery code for, versus which should lead to clearing databases.
  </summary>
</histogram>

<histogram name="Sqlite.RecoveryHandle" enum="SqliteErrorCode">
  <owner>shess@chromium.org</owner>
  <summary>Error from sqlite3_backup_init() in sql::Recovery.</summary>
</histogram>

<histogram name="Sqlite.RecoveryStep" enum="SqliteErrorCode">
  <owner>shess@chromium.org</owner>
  <summary>Error from sqlite3_backup_step() in sql::Recovery.</summary>
</histogram>

<histogram name="Sqlite.SizeKB" units="Kb">
  <owner>peria@chromium.org</owner>
  <owner>shess@chromium.org</owner>
  <summary>Size in kilobytes of pre-existing database at startup.</summary>
</histogram>

<histogram name="Sqlite.Stats" enum="SqliteStatsEnum">
  <owner>shess@chromium.org</owner>
  <summary>Stats for different API calls in sql/.</summary>
</histogram>

<histogram name="Sqlite.Text.Error" enum="SqliteErrorCode">
  <obsolete>
    Moved to Sqlite.Error.Text in M-27.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>Error codes returned by sqlite the full text db.</summary>
</histogram>

<histogram name="Sqlite.Thumbnail.Error" enum="SqliteErrorCode">
  <obsolete>
    Moved to Sqlite.Error.Thumbnail in M-27.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>Error codes returned by sqlite for the thumbnail db.</summary>
</histogram>

<histogram name="Sqlite.UpdateTime" units="ms">
  <owner>shess@chromium.org</owner>
  <summary>
    Record times for statements which could update the database file.  Includes
    commit and autocommit time.
  </summary>
</histogram>

<histogram name="Sqlite.Version">
  <owner>shess@chromium.org</owner>
  <summary>Version of pre-existing database at startup.</summary>
</histogram>

<histogram name="Sqlite.Web.Error" enum="SqliteErrorCode">
  <obsolete>
    Moved to Sqlite.Error.Web in M-27.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>Error codes returned by sqlite the web db.</summary>
</histogram>

<histogram name="sri.resource_integrity_mismatch_event"
    enum="SRIResourceIntegrityMismatchEvent">
  <owner>jww@chromium.org</owner>
  <summary>
    When resources are checked for mismatching integrity and whether the
    mismatch forces a refetch.
  </summary>
</histogram>

<histogram name="SSL.ExpectCTReportFailure" enum="NetErrorCodes">
  <owner>estark@chromium.org</owner>
  <summary>
    Sites can opt in to Expect CT, a reporting feature that sends a report
    whenever a TLS connection does not have valid Certificate Transparency
    information associated with it. This records the error code when Chrome
    fails to send an Expect CT report.
  </summary>
</histogram>

<histogram name="SSL.ExpectCTReportSendingAttempt">
  <owner>estark@chromium.org</owner>
  <summary>
    Sites can opt in to Expect CT, a reporting feature that sends a report
    whenever a TLS connection does not have valid Certificate Transparency
    information associated with it. This metric fires whenever Chrome attempts
    to send an Expect CT report.
  </summary>
</histogram>

<histogram name="SSL.InsecureContent" enum="InsecureContentType">
  <owner>lgarron@chromium.org</owner>
  <summary>
    Keeps track of various insecure content events, such as loading an HTTP
    script from an HTTPS page.
  </summary>
</histogram>

<histogram name="SSL.MarkNonSecureAsStatus" enum="MarkNonSecureAsStatus">
  <owner>palmer@chromium.org</owner>
  <summary>
    Reports whether the user has selected to mark non-secure origins as Neutral
    (the status quo), Dubious, or Non-Secure.
  </summary>
</histogram>

<histogram name="Stability.BadMessageTerminated.Chrome"
    enum="BadMessageReasonChrome">
  <owner>nick@chromium.org</owner>
  <owner>jamescook@chromium.org</owner>
  <summary>
    Count of processes killed by chrome/browser because they sent an IPC that
    couldn't be properly handled. Categories are the reasons (code locations)
    for the kills.
  </summary>
</histogram>

<histogram name="Stability.BadMessageTerminated.Content"
    enum="BadMessageReasonContent">
  <owner>jam@chromium.org</owner>
  <owner>jamescook@chromium.org</owner>
  <summary>
    Count of child processes killed because they sent an IPC that couldn't be
    properly handled. Categories are the reasons (code locations) for the kills.
  </summary>
</histogram>

<histogram name="Stability.BadMessageTerminated.Extensions"
    enum="BadMessageReasonExtensions">
  <owner>jamescook@chromium.org</owner>
  <summary>
    Count of extension processes killed because they sent an IPC that couldn't
    be properly handled. Categories are the reasons (code locations) for the
    kills.
  </summary>
</histogram>

<histogram name="Stability.BadMessageTerminated.NaCl"
    enum="BadMessageReasonNaCl">
  <owner>nick@chromium.org</owner>
  <owner>jamescook@chromium.org</owner>
  <summary>
    Count of processes killed because they sent a NaCl IPC that couldn't be
    properly handled. Categories are the reasons (code locations) for the kills.
  </summary>
</histogram>

<histogram name="Stability.BadMessageTerminated.PasswordManager"
    enum="BadMessageReasonPasswordManager">
  <owner>nick@chromium.org</owner>
  <owner>jamescook@chromium.org</owner>
  <summary>
    Count of processes killed because they sent a bad IPC that couldn't be
    properly handled. Categories are the reasons (code locations) for the kills.
  </summary>
</histogram>

<histogram name="Stability.BrowserExitCodes" enum="WindowsExitCode">
  <owner>siggi@chromium.org</owner>
  <summary>
    Records the exit code of the browser process (on Windows) from the previous
    launch. On crash, the exit code will indicate the exception code of the
    crash. This is emitted in stability data with the first report on a
    subsequent launch.
  </summary>
</histogram>

<histogram name="Stability.ExitFunnel" units="ms">
  <owner>siggi@chromium.org</owner>
  <summary>
    Temporary instrumentation to record the Windows browser's exit path. See
    http://crbug.com/412384.
  </summary>
</histogram>

<histogram name="Stability.MobileSessionShutdownType"
    enum="MobileSessionShutdownType">
  <owner>lpromero@chromium.org</owner>
  <owner>olivierrobin@chromium.org</owner>
  <summary>
    Type of the shutdown. This histogram is recorded at startup and logs a
    sample for the previous session. A clean shutdown is one where the app
    enters the background before being killed. Other shutdowns are all some sort
    of crash. The absence of a crash log indicates that the app was killed by
    the OS, normally due to memory pressure. If memory pressure is extremely
    high, the app may not have had a chance to response to a memory warning
    before being killed. For first launch after upgrade, the crash reports may
    be discarded before this histogram is written to so it's not possible to
    determine if there's a valid crash log present or not.
  </summary>
</histogram>

<histogram name="Stars.Goog_Related" units="%">
  <owner>yefim@chromium.org</owner>
  <summary>
    Percentage of clips with Google related urls (points to internal Google
    resources). Logs every time user goes to chrome://bookmarks.
  </summary>
</histogram>

<histogram name="Stars.Goog_Related_20_Percent" units="%">
  <owner>yefim@chromium.org</owner>
  <summary>
    Percentage of clips with Google related urls within first 20 (points to
    internal Google resources). Logs every time user goes to chrome://bookmarks.
  </summary>
</histogram>

<histogram name="Stars.Images_Percent" units="%">
  <owner>yefim@chromium.org</owner>
  <summary>
    Percentage of clips with images. Logs every time user goes to
    chrome://bookmarks.
  </summary>
</histogram>

<histogram name="Stars.Images_Percent_First20" units="%">
  <owner>yefim@chromium.org</owner>
  <summary>
    Percentage of clips with images within first 20. Logs every time user goes
    to chrome://bookmarks.
  </summary>
</histogram>

<histogram name="Stars.LaunchLocation" enum="StarsLaunchLocation">
  <owner>ianwen@chromium.org</owner>
  <summary>Logs a UI location from which a bookmark is launched.</summary>
</histogram>

<histogram name="Stars.No_Images_Snippets" units="%">
  <owner>yefim@chromium.org</owner>
  <summary>
    Percentage of clips without images or snippets. Logs every time user goes to
    chrome://bookmarks.
  </summary>
</histogram>

<histogram name="Stars.No_Img_No_Snippet_20_Percent" units="%">
  <owner>yefim@chromium.org</owner>
  <summary>
    Percentage of clips without images or snippets within first 20. Logs every
    time user goes to chrome://bookmarks.
  </summary>
</histogram>

<histogram name="Startup.AfterStartupTaskCount">
  <owner>michaeln@chromium.org</owner>
  <summary>
    The number of after-startup tasks that were queued prior to startup
    completion and deferred until that time.
  </summary>
</histogram>

<histogram name="Startup.AfterStartupTaskDelayedUntilTime" units="ms">
  <owner>michaeln@chromium.org</owner>
  <summary>
    Time from the process creation until deferred after-startup tasks began
    running.
  </summary>
</histogram>

<histogram name="Startup.AppListFirstPaintColdStart" units="ms">
  <owner>tapted@chromium.org</owner>
  <summary>
    Time for a newly created browser process to perform the first paint of the
    app launcher, when started with the --show-app-list flag and with no
    currently running Chrome processes.
  </summary>
</histogram>

<histogram name="Startup.AppListFirstPaintWarmStart" units="ms">
  <owner>tapted@chromium.org</owner>
  <summary>
    Time for a running browser process to perform the first paint of the app
    launcher. Measured from the time a second Chrome process started, which sent
    its --show-app-list command line argument to the already-running process and
    will soon exit.
  </summary>
</histogram>

<histogram name="Startup.BringToForegroundReason"
    enum="BooleanBringToForegroundReason">
  <owner>johnme@chromium.org</owner>
  <summary>
    Records the cause, each time Chrome is brought to the foreground. Currently
    only checks if a NotificationUIManager notification was shown in the last 5
    seconds (includes Web Notifications, but not media or Cast).
  </summary>
</histogram>

<histogram name="Startup.BrowserLaunchURLCount" units="urls">
  <owner>rkaplow@chromium.org</owner>
  <summary>
    Measured when Chrome is invoked, this counts the number of URLs passed via
    command line. Note that this handles the case of a URL passed to Chrome
    starting up, or when a running Chrome is given the message to open a new
    URL.
  </summary>
</histogram>

<histogram name="Startup.BrowserMainRunnerImplInitializeLongTime" units="ms">
  <owner>robliao@chromium.org</owner>
  <summary>
    The amount of time that elapsed during BrowserMainRunnerImpl::Initialize.
  </summary>
</histogram>

<histogram name="Startup.BrowserMainRunnerImplInitializeStep1Time" units="ms">
  <owner>robliao@chromium.org</owner>
  <summary>
    The amount of time that elapsed during the first section of
    BrowserMainRunnerImpl::Initialize.
  </summary>
</histogram>

<histogram name="Startup.BrowserMainRunnerImplInitializeStep2Time" units="ms">
  <owner>robliao@chromium.org</owner>
  <summary>
    The amount of time that elapsed during the second section of
    BrowserMainRunnerImpl::Initialize.
  </summary>
</histogram>

<histogram name="Startup.BrowserMainToRendererMain" units="ms">
  <owner>fdoray@chromium.org</owner>
  <summary>
    Time from the ChromeMain() entry in the browser process to the first
    RendererMain() entry.
  </summary>
</histogram>

<histogram name="Startup.BrowserMessageLoopStartHardFaultCount" units="faults">
  <owner>chrisha@chromium.org</owner>
  <summary>
    The number of hard faults incurred in the browser process from startup to
    start of the main thread's message loop, not including first runs of the
    browser. This is only reported on Windows 7 and greater.
  </summary>
</histogram>

<histogram name="Startup.BrowserMessageLoopStartHardFaultCount.FirstRun"
    units="faults">
  <obsolete>
    Removed 1/2016.
  </obsolete>
  <owner>chrisha@chromium.org</owner>
  <summary>
    The number of hard faults incurred in the browser process from startup to
    start of the main thread's message loop on first run. This is only reported
    on Windows 7 and greater.
  </summary>
</histogram>

<histogram name="Startup.BrowserMessageLoopStartHardFaultCount.Success"
    enum="BooleanSuccess">
  <owner>chrisha@chromium.org</owner>
  <obsolete>
    Deprecated 12/2015. No longer tracked because values collected on stable
    show that the function pretty much never fails (succeeds 99.9996% of the
    time).
  </obsolete>
  <summary>
    If OS support was detected (Windows 7 and greater) indicates whether it was
    possible to determine the number of hard faults that have occurred in the
    process from startup to start of the main thread's message loop. This can
    fail because the underlying call is inherently racy.
  </summary>
</histogram>

<histogram name="Startup.BrowserMessageLoopStartTime">
  <owner>jeremy@chromium.org</owner>
  <summary>
    Time from browser startup to the start of the main thread's message loop.
  </summary>
</histogram>

<histogram name="Startup.BrowserMessageLoopStartTimeFromMainEntry" units="ms">
  <owner>jeremy@chromium.org</owner>
  <summary>
    Time from main entry to the start of the main thread's message loop. This
    stat is only recorded after 7 minutes of OS uptime to try to mitigate the
    variance resulting from Chrome being autostarted.
  </summary>
</histogram>

<histogram name="Startup.BrowserMessageLoopStartTimeFromMainEntry.FirstRun"
    units="ms">
  <owner>csharp@chromium.org</owner>
  <owner>gab@chromium.org</owner>
  <owner>jeremy@chromium.org</owner>
  <summary>
    Time from main entry to the start of the main thread's message loop on first
    run. This stat is only recorded after 7 minutes of OS uptime to try to
    mitigate the variance resulting from Chrome being autostarted.
  </summary>
</histogram>

<histogram name="Startup.BrowserOpenTabs">
  <owner>jeremy@chromium.org</owner>
  <summary>
    Time taken to open the initial tab or to restore tabs from previous session.
  </summary>
</histogram>

<histogram name="Startup.BrowserProcessImpl_PreMainMessageLoopRunTime"
    units="ms">
  <owner>rkaplow@chromium.org</owner>
  <summary>
    The amount of time that elapsed during
    BrowserProcessImpl::PreMainMessageLoopRun.
  </summary>
</histogram>

<histogram name="Startup.BrowserWindowDisplay" units="ms">
  <owner>jeremy@chromium.org</owner>
  <summary>
    Time from browser startup to the time the browser window initially becomes
    visible.
  </summary>
</histogram>

<histogram name="Startup.ChromeCast.TimeToDisplayVideo" units="ms">
  <obsolete>
    Deprecated 7/2015. To be replaced with Cast events.
  </obsolete>
  <owner>jeremy@chromium.org</owner>
  <summary>
    The elapsed time from the ChromeCast application launch to the first video
    frame displayed.
  </summary>
</histogram>

<histogram name="Startup.CreateFirstProfile" units="ms">
  <owner>jeremy@chromium.org</owner>
  <summary>
    How long it takes to load the original profile synchronously on the UI
    thread.
  </summary>
</histogram>

<histogram
    name="Startup.Experimental.FirstWebContents.MainFrameLoad.ManyBuckets"
    units="ms">
  <obsolete>
    Removed in M-41.
  </obsolete>
  <owner>erikchen@chromium.org</owner>
  <summary>
    An experimental metric only collected on the dev and canary channels.
    Measure the elapsed time from process launch to the first main frame load of
    the first web contents. Uses significantly more buckets, with reduced
    ranges.
  </summary>
</histogram>

<histogram
    name="Startup.Experimental.FirstWebContents.MainFrameLoad.StandardBuckets"
    units="ms">
  <obsolete>
    Moved to Startup.FirstWebContents.MainFrameLoad in M-41.
  </obsolete>
  <owner>erikchen@chromium.org</owner>
  <summary>
    An experimental metric only collected on the dev and canary channels.
    Measure the elapsed time from process launch to the first main frame load of
    the first web contents. Uses standard bucket ranges.
  </summary>
</histogram>

<histogram
    name="Startup.Experimental.FirstWebContents.NonEmptyPaint.ManyBuckets"
    units="ms">
  <obsolete>
    Removed in M-41.
  </obsolete>
  <owner>erikchen@chromium.org</owner>
  <summary>
    An experimental metric only collected on the dev and canary channels.
    Measure the elapsed time from process launch to the first non-empty paint of
    the first web contents. Uses significantly more buckets, with reduced
    ranges.
  </summary>
</histogram>

<histogram
    name="Startup.Experimental.FirstWebContents.NonEmptyPaint.StandardBuckets"
    units="ms">
  <obsolete>
    Moved to Startup.FirstWebContents.NonEmptyPaint in M-41.
  </obsolete>
  <owner>erikchen@chromium.org</owner>
  <summary>
    An experimental metric only collected on the dev and canary channels.
    Measure the elapsed time from process launch to the first non-empty paint of
    the first web contents. Uses standard bucket ranges.
  </summary>
</histogram>

<histogram name="Startup.FirstCommitNavigationTime" units="ms">
  <owner>pasko@chromium.org</owner>
  <summary>
    [Android only] The time from the earliest entry point in the browser process
    to the moment the first navigation is committed, i.e. when renderer gets the
    first byte of the document.
  </summary>
</histogram>

<histogram name="Startup.FirstWebContents.FinishReason"
    enum="StartupProfilingFinishReason">
  <owner>gab@chromium.org</owner>
  <summary>
    [Desktop] The reason for which startup profiling was deemed complete. Logged
    once per session on startup.
  </summary>
</histogram>

<histogram name="Startup.FirstWebContents.MainFrameLoad" units="ms">
  <obsolete>
    Deprecated with 3/2016 with M48.
  </obsolete>
  <owner>erikchen@chromium.org</owner>
  <owner>gab@chromium.org</owner>
  <summary>
    [Desktop] DEPRECATED (but kept as a known basis until M48 is phased out).
    Measure the elapsed time from process launch to the first main frame load of
    the first web contents. Deprecated in favor of
    Startup.FirstWebContents.MainFrameLoad2 which now avoids counting ill-cases
    (ref. FirstWebContentsProfiler::FinishReason).
  </summary>
</histogram>

<histogram name="Startup.FirstWebContents.MainFrameLoad2" units="ms">
  <owner>erikchen@chromium.org</owner>
  <owner>gab@chromium.org</owner>
  <summary>
    [Desktop] Measure the elapsed time from process launch to the first main
    frame load of the first web contents. Only comprised of cases where the
    initial foreground tab gets to complete its rendering task unimpeded (an
    improvement over Startup.FirstWebContents.MainFrameLoad).
  </summary>
</histogram>

<histogram name="Startup.FirstWebContents.MainNavigationFinished" units="ms">
  <owner>gab@chromium.org</owner>
  <summary>
    [Desktop] Measure the elapsed time from process launch to the moment when
    the navigation is committed (first bytes received) in the first web
    contents' main frame.
  </summary>
</histogram>

<histogram name="Startup.FirstWebContents.MainNavigationStart" units="ms">
  <owner>gab@chromium.org</owner>
  <summary>
    [Desktop] Measure the elapsed time from process launch to the beginning of
    navigation in the first web contents' main frame.
  </summary>
</histogram>

<histogram name="Startup.FirstWebContents.NonEmptyPaint" units="ms">
  <obsolete>
    Deprecated with 3/2016 with M48.
  </obsolete>
  <owner>erikchen@chromium.org</owner>
  <owner>gab@chromium.org</owner>
  <summary>
    [Desktop] DEPRECATED (but kept as a known basis until M48 is phased out).
    Measure the elapsed time from process launch to the first non- empty paint
    of the first web contents. Deprecated in favor of
    Startup.FirstWebContents.NonEmptyPaint2 which now avoids counting ill-cases
    (ref. FirstWebContentsProfiler::FinishReason).
  </summary>
</histogram>

<histogram name="Startup.FirstWebContents.NonEmptyPaint2" units="ms">
  <owner>erikchen@chromium.org</owner>
  <owner>gab@chromium.org</owner>
  <summary>
    [Desktop] Measure the elapsed time from process launch to the first non-
    empty paint of the first web contents. Only comprised of cases where the
    initial foreground tab gets to complete its rendering task unimpeded (an
    improvement over Startup.FirstWebContents.NonEmptyPaint).
  </summary>
</histogram>

<histogram name="Startup.FirstWebContents.UINotResponsive" units="ms">
  <obsolete>
    Deprecated 10/2015.
  </obsolete>
  <owner>gayane@chromium.org</owner>
  <summary>
    [Desktop] Measures the execution time for a single task to execute on UI if
    it was not possible to execute UI tasks under 1/60s within certain limits,
    after WebContents was painted at least once. This is recorded at most once
    per Chrome launch. Used as a measure of responsiveness on startup.
  </summary>
</histogram>

<histogram name="Startup.FirstWebContents.UINotResponsive_10sec" units="ms">
  <obsolete>
    Deprecated 10/2015.
  </obsolete>
  <owner>gayane@chromium.org</owner>
  <summary>
    [Desktop] Measures the elapsed time for a single task to execute on UI if it
    was not possible to execute it under 1/60s within certain limits, 10 second
    after first WebContents was painted at least once.  This is recorded at most
    once per Chrome launch. Used as a measure of responsiveness on startup.
  </summary>
</histogram>

<histogram name="Startup.FirstWebContents.UINotResponsive_1sec" units="ms">
  <obsolete>
    Deprecated 10/2015.
  </obsolete>
  <owner>gayane@chromium.org</owner>
  <summary>
    [Desktop] Measures the elapsed time for a single task to execute on UI if it
    was not possible to execute it under 1/60s within certain limits, 1 second
    after first WebContents was painted at least once.  This is recorded at most
    once per Chrome launch. Used as a measure of responsiveness on startup.
  </summary>
</histogram>

<histogram name="Startup.FirstWebContents.UIResponsive" units="ms">
  <obsolete>
    Deprecated 10/2015.
  </obsolete>
  <owner>gayane@chromium.org</owner>
  <summary>
    [Desktop] Measures the elapsed time it takes for a task to execute on UI
    under 1/60s after first WebContents was painted at least once. This is
    recorded at most once per Chrome launch. Used as a measure of responsiveness
    on startup.
  </summary>
</histogram>

<histogram name="Startup.FirstWebContents.UIResponsive_10sec" units="ms">
  <obsolete>
    Deprecated 10/2015.
  </obsolete>
  <owner>gayane@chromium.org</owner>
  <summary>
    [Desktop] Measures the elapsed time it takes for a task to execute on UI
    under 1/60s, 10 second after the first WebContents was painted.  This is
    recorded at most once per Chrome launch. Used as a measure of responsiveness
    on startup.
  </summary>
</histogram>

<histogram name="Startup.FirstWebContents.UIResponsive_1sec" units="ms">
  <obsolete>
    Deprecated 10/2015.
  </obsolete>
  <owner>gayane@chromium.org</owner>
  <summary>
    [Desktop] Measures the elapsed time it takes for a task to execute on UI
    under 1/60s, 1 second after the first WebContents was painted. This is
    recorded at most once per Chrome launch. Used as a measure of responsiveness
    on startup.
  </summary>
</histogram>

<histogram name="Startup.Fling.TimeToDisplayVideo" units="ms">
  <obsolete>
    Deprecated 7/2015. To be replaced with Cast events.
  </obsolete>
  <owner>jeremy@chromium.org</owner>
  <summary>
    The elapsed time from the Fling application launch to the first video frame
    displayed.
  </summary>
</histogram>

<histogram name="Startup.IsResume">
  <obsolete>
    Deprecated 12/2011. Merged into MobileSessionStartType.
  </obsolete>
  <owner>jeremy@chromium.org</owner>
  <summary>Whether a startup is a resume (vs a cold start).</summary>
</histogram>

<histogram name="Startup.LoadTime.ExeMainToDllMain">
  <owner>jeremy@chromium.org</owner>
  <summary>
    Time from the main() function in chrome.exe to chrome.dll's main(). This
    stat is only recorded after 7 minutes of OS uptime to try to mitigate the
    variance resulting from Chrome being autostarted.
  </summary>
</histogram>

<histogram name="Startup.LoadTime.ProcessCreateToDllMain">
  <owner>jeremy@chromium.org</owner>
  <summary>
    Time from the process creation to chrome.dll's main(). This stat is only
    recorded after 7 minutes of OS uptime to try to mitigate the variance
    resulting from Chrome being autostarted.
  </summary>
</histogram>

<histogram name="Startup.LoadTime.ProcessCreateToExeMain">
  <owner>jeremy@chromium.org</owner>
  <summary>
    Time from the process creation to executing the main() function in
    chrome.exe. This stat is only recorded after 7 minutes of OS uptime to try
    to mitigate the variance resulting from Chrome being autostarted.
  </summary>
</histogram>

<histogram name="Startup.OSX.AwakeFromNib" units="ms">
  <owner>erikchen@chromium.org</owner>
  <summary>
    The amount of time that elapsed between main entry and the invocation of
    -[AppControllerMac awakeFromNib].
  </summary>
</histogram>

<histogram name="Startup.OSX.DockIconWillFinishBouncing" units="ms">
  <owner>erikchen@chromium.org</owner>
  <summary>
    The amount of time that elapsed between main entry and the invocation of
    -[AppControllerMac didFinishLaunching:]. At that point, the dock icon will
    finish its current animation and stop bouncing.
  </summary>
</histogram>

<histogram name="Startup.OSX.PostMainMessageLoopStart" units="ms">
  <owner>erikchen@chromium.org</owner>
  <summary>
    The amount of time that elapsed between main entry and the invocation of
    ChromeBrowserMainPartsMac::PostMainMessageLoopStart.
  </summary>
</histogram>

<histogram name="Startup.OSX.PostProfileInit" units="ms">
  <owner>erikchen@chromium.org</owner>
  <summary>
    The amount of time that elapsed between main entry and the invocation of
    ChromeBrowserMainPartsMac::PostProfileInit.
  </summary>
</histogram>

<histogram name="Startup.OSX.PreMainMessageLoopStart" units="ms">
  <owner>erikchen@chromium.org</owner>
  <summary>
    The amount of time that elapsed between main entry and the invocation of
    ChromeBrowserMainPartsMac::PreMainMessageLoopStart.
  </summary>
</histogram>

<histogram name="Startup.OSX.PreProfileInit" units="ms">
  <owner>erikchen@chromium.org</owner>
  <summary>
    The amount of time that elapsed between main entry and the invocation of
    ChromeBrowserMainPartsMac::PreProfileInit.
  </summary>
</histogram>

<histogram name="Startup.OSX.WillFinishLaunching" units="ms">
  <owner>erikchen@chromium.org</owner>
  <summary>
    The amount of time that elapsed between main entry and the invocation of
    -[AppControllerMac willFinishLaunching:].
  </summary>
</histogram>

<histogram name="Startup.PreMainMessageLoopRunImplLongTime" units="ms">
  <owner>rkaplow@chromium.org</owner>
  <summary>
    The amount of time that elapsed during
    ChromeBrowserMainParts::PreMainMessageLoopRunImpl.
  </summary>
</histogram>

<histogram name="Startup.PreMainMessageLoopRunImplStep1Time" units="ms">
  <owner>rkaplow@chromium.org</owner>
  <summary>
    The amount of time that elapsed during the first untracked section of
    ChromeBrowserMainParts::PreMainMessageLoopRunImpl.
  </summary>
</histogram>

<histogram name="Startup.PreMainMessageLoopRunImplStep2Time" units="ms">
  <owner>rkaplow@chromium.org</owner>
  <summary>
    The amount of time that elapsed during the second untracked section of
    ChromeBrowserMainParts::PreMainMessageLoopRunImpl. Not written for Android.
  </summary>
</histogram>

<histogram name="Startup.PreMainMessageLoopRunImplStep3Time" units="ms">
  <owner>rkaplow@chromium.org</owner>
  <summary>
    The amount of time that elapsed during the third untracked section of
    ChromeBrowserMainParts::PreMainMessageLoopRunImpl. Not written for Android.
  </summary>
</histogram>

<histogram name="Startup.PreMainMessageLoopRunImplTime" units="ms">
  <obsolete>
    Deprecated as of 2/2015.
  </obsolete>
  <owner>rkaplow@chromium.org</owner>
  <summary>
    The amount of time that elapsed during
    ChromeBrowserMainParts::PreMainMessageLoopRunImpl.
  </summary>
</histogram>

<histogram name="Startup.SameVersionStartupCount">
  <owner>gab@chromium.org</owner>
  <summary>
    The number of startups the current version has been through. Reported once
    per Chrome session, on startup. Any user that reports X for this version
    will also have previously reported [1,X-1] for this version through the
    previous X-1 Chrome sessions.
  </summary>
</histogram>

<histogram name="Startup.ShowAppListColdStart" units="ms">
  <owner>jeremy@chromium.org</owner>
  <owner>tapted@chromium.org</owner>
  <summary>
    Time for a newly created browser process to reach the code that starts
    showing the app launcher, when started with the --show-app-list flag and
    with no currently running Chrome processes.
  </summary>
</histogram>

<histogram name="Startup.ShowAppListWarmStart" units="ms">
  <owner>jeremy@chromium.org</owner>
  <owner>tapted@chromium.org</owner>
  <summary>
    Time for a running browser process to reach the code that starts showing the
    app launcher. Measured from the time a second Chrome process started, which
    sent its --show-app-list command line argument to the already-running
    process and will soon exit.
  </summary>
</histogram>

<histogram name="Startup.SlowStartupBookmarksLoad" units="ms">
  <obsolete>
    Deprecated 06/2015.
  </obsolete>
  <owner>jeremy@chromium.org</owner>
  <summary>
    Time it takes to load bookmarks from disk. This measurement is only sent for
    startups that take &gt;10 seconds after an uptime of 7 minutes.
  </summary>
</histogram>

<histogram name="Startup.SlowStartupExtensionServiceInitAfterImport" units="ms">
  <obsolete>
    Deprecated 06/2015.
  </obsolete>
  <owner>jeremy@chromium.org</owner>
  <summary>
    Time it takes to finish initialization of the extension service including
    loading built-in extensions. This measurement is only sent for startups that
    take &gt;10 seconds after an uptime of 7 minutes.
  </summary>
</histogram>

<histogram name="Startup.SlowStartupFinalProfileInit" units="ms">
  <obsolete>
    Deprecated 06/2015.
  </obsolete>
  <owner>jeremy@chromium.org</owner>
  <summary>
    Time the final stages of profile initialization taking including
    initialization of profile keyed services. This measurement is only sent for
    startups that take &gt;10 seconds after an uptime of 7 minutes.
  </summary>
</histogram>

<histogram name="Startup.SlowStartupNSSInit" units="ms">
  <obsolete>
    Deprecated 06/2015.
  </obsolete>
  <owner>jeremy@chromium.org</owner>
  <summary>
    Time it takes to load the NSS libraries and initialize it. This measurement
    is only sent for startups that take &gt;10 seconds after an uptime of 7
    minutes.
  </summary>
</histogram>

<histogram name="Startup.SlowStartupPreferenceLoading" units="ms">
  <obsolete>
    Deprecated 06/2015.
  </obsolete>
  <owner>jeremy@chromium.org</owner>
  <summary>
    Time it takes to load preferences from disk. This measurement is only sent
    for startups that take &gt;10 seconds after an uptime of 7 minutes.
  </summary>
</histogram>

<histogram name="Startup.SlowStartupProfileIODataInit" units="ms">
  <obsolete>
    Deprecated 06/2015.
  </obsolete>
  <owner>jeremy@chromium.org</owner>
  <summary>
    Time it takes to initialize the ProfileIOData object - this includes
    initialization of the cookie store. This measurement is only sent for
    startups that take &gt;10 seconds after an uptime of 7 minutes.
  </summary>
</histogram>

<histogram name="Startup.SlowStartupSafeBrowsingGetDatabase" units="ms">
  <obsolete>
    Deprecated 06/2015.
  </obsolete>
  <owner>jeremy@chromium.org</owner>
  <summary>
    Time it takes to load the safe browsing database from disk. This measurement
    is only sent for startups that take &gt;10 seconds after an uptime of 7
    minutes.
  </summary>
</histogram>

<histogram name="Startup.SlowStartupSafeBrowsingServiceInitialize" units="ms">
  <obsolete>
    Deprecated 06/2015.
  </obsolete>
  <owner>jeremy@chromium.org</owner>
  <summary>
    Time it takes to initialize the safe browsing service. This measurement is
    only sent for startups that take &gt;10 seconds after an uptime of 7
    minutes.
  </summary>
</histogram>

<histogram name="Startup.SlowStartupSessionServiceCreateTabsAndWindows"
    units="ms">
  <obsolete>
    Deprecated 06/2015.
  </obsolete>
  <owner>jeremy@chromium.org</owner>
  <summary>
    Time it takes for session restore to finish initiating creation of restored
    tabs and windows. This measurement is only sent for startups that take
    &gt;10 seconds after an uptime of 7 minutes.
  </summary>
</histogram>

<histogram name="Startup.StartupBrowserCreator_ProcessCmdLineImplTime"
    units="ms">
  <obsolete>
    Deprecated 02/2015. Startup.StartupBrowserCreator_Start is more useful.
  </obsolete>
  <owner>rkaplow@chromium.org</owner>
  <summary>
    The amount of time that elapsed during
    StartupBrowserCreator::ProcessCmdLineImpl.
  </summary>
</histogram>

<histogram name="Startup.StartupBrowserCreator_Start" units="ms">
  <owner>rkaplow@chromium.org</owner>
  <summary>
    The amount of time that elapsed during StartupBrowserCreator::Start().
  </summary>
</histogram>

<histogram name="Startup.SystemUptime" units="ms">
  <owner>fdoray@chromium.org</owner>
  <summary>
    The time elapsed between system boot and Chrome browser process launch. This
    is recorded just before the main message loop starts.
  </summary>
</histogram>

<histogram name="Startup.Temperature" enum="StartupTemperature">
  <owner>chrisha@chromium.org</owner>
  <summary>
    Indicates whether or not the given startup was warm, cold or unable to be
    determined. This is based off observing the number of hard faults that occur
    during startup prior to Startup.BrowserMessageLoopStartTime.
  </summary>
</histogram>

<histogram name="Startup.TimeSinceLastStartup" units="minutes">
  <owner>fdoray@chromium.org</owner>
  <summary>
    Time elapsed since the last startup that went up to the main message loop
    start. This is recorded just before the main message loop starts.
  </summary>
</histogram>

<histogram name="Startup.WarmStartTimeFromRemoteProcessStart" units="ms">
  <owner>jeremy@chromium.org</owner>
  <summary>
    Time for a running browser process to start processing the command line
    passed in by a second Chrome process, which just sent its command line
    arguments to the already-running process and will soon exit. Measured from
    the time the second Chrome process started.
  </summary>
</histogram>

<histogram name="StartupTimeBomb.Alarm" units="ms">
  <owner>rtenneti@chromium.org</owner>
  <obsolete>
    Deprecated as of 10/2014.
  </obsolete>
  <summary>
    Time duration measured from the time the startup timebomb was started and
    when it went off.
  </summary>
</histogram>

<histogram name="Storage.Blob.Broken" enum="BooleanBroken">
  <owner>dmurph@chromium.org</owner>
  <summary>
    If a newly constructed blob is broken. See Storage.Blob.BrokenReason for a
    the broken reasons.
  </summary>
</histogram>

<histogram name="Storage.Blob.BrokenReason" enum="BlobBrokenReason">
  <owner>dmurph@chromium.org</owner>
  <summary>
    The reason a blob is broken, reported only for broken blobs upon
    construction. See Storage.Blob.Broken for the breakdown of blobs broken vs
    unbroken.
  </summary>
</histogram>

<histogram name="Storage.Blob.ExceededMemory" enum="Boolean">
  <owner>dmurph@chromium.org</owner>
  <obsolete>
    Deprecated as of 3/2016. Use Storage.Blob.Broken to see the fraction of
    blobs that are broken, and Storage.Blob.BrokenReason for the number of
    broken blobs that are broken because of memory constraints.
  </obsolete>
  <summary>
    True if a created blob exceeded the internal in-memory storage memory limit
    for blobs.
  </summary>
</histogram>

<histogram name="Storage.Blob.InvalidReference" enum="RefcountOperation">
  <owner>dmurph@chromium.org</owner>
  <summary>
    Counts the number of times we have an invalid refcount operation. An invalid
    increment means the blob didn't exist, and an invalid decrement means we
    don't have any record of the blob in our host.
  </summary>
</histogram>

<histogram name="Storage.Blob.InvalidURLRegister" enum="RefcountOperation">
  <owner>dmurph@chromium.org</owner>
  <summary>
    Counts the number of times we have an invalid url registration operation. An
    invalid increment means the blob isn't in use by the host yet or the url is
    already mapped. An invalid decrement means the url isn't registered.
  </summary>
</histogram>

<histogram name="Storage.Blob.ItemCount" units="Blob Items">
  <owner>dmurph@chromium.org</owner>
  <summary>
    The number of blob items in a blob, recorded at blob construction. (Blobs
    are immutable, so this won't change afterwards).
  </summary>
</histogram>

<histogram name="Storage.Blob.ReusedItem" enum="BooleanReused">
  <owner>dmurph@chromium.org</owner>
  <summary>
    True if we reuse an item for a blob created from using Blob.slice, recorded
    in BlobStorageContext on blob creation.
  </summary>
</histogram>

<histogram name="Storage.Blob.StorageSizeAfterAppend" units="KB">
  <owner>dmurph@chromium.org</owner>
  <summary>
    Records the total in-memory storage size of blobs before a blob item is
    appended.  Can be subtracted by Storage.Blob.StorageSizeBeforeAppend to find
    the true distribution of blob storage sizes.
  </summary>
</histogram>

<histogram name="Storage.Blob.StorageSizeBeforeAppend" units="KB">
  <owner>dmurph@chromium.org</owner>
  <summary>
    Records the total in-memory storage size of blobs before a blob item is
    appended.  Can be subtracted from Storage.Blob.StorageSizeAfterAppend to
    find the true distribution of blob storage sizes.
  </summary>
</histogram>

<histogram name="Storage.Blob.TotalSize" units="KB">
  <owner>dmurph@chromium.org</owner>
  <summary>
    The total in-memory size in KB of finished blobs. Recorded in
    BlobStorageContext when the blob is finished being created. This can include
    memory that is shared with other blobs or memory from repeated internal
    items.
  </summary>
</histogram>

<histogram name="Storage.Blob.TotalUnsharedSize" units="KB">
  <owner>dmurph@chromium.org</owner>
  <summary>
    The total amount of unique memory used to create a blob. Recorded in
    BlobStorageContext when the blob is finished being created. This does not
    include memory that is shared with other blobs. If multiple of the same blob
    item is present, then this number will reflect the size of the single item.
  </summary>
</histogram>

<histogram name="Storage.BlobItemSize" units="KB">
  <owner>dmurph@chromium.org</owner>
  <summary>
    The size in KB of items (or parts of items) appended to blobs.
  </summary>
</histogram>

<histogram name="Storage.BlobItemSize.BlobSlice" units="KB">
  <owner>dmurph@chromium.org</owner>
  <summary>
    The size in KB of items (or parts of items) appended to blobs that come from
    the slicing of other blobs.  This happens when using Blob.slice, where we
    are using a part of an item in the original blob (not the whole item).
  </summary>
</histogram>

<histogram name="Storage.BlobItemSize.File.Unknown" enum="BooleanUnknown">
  <owner>dmurph@chromium.org</owner>
  <summary>
    True if the file size on blob append is unknown (which means the full file),
    or false if a specific file length was populated. Recorded in
    BlobStorageContext when we are adding a file item to a blob.
  </summary>
</histogram>

<histogram name="Storage.BlobItemSize.FileSystem.Unknown" enum="BooleanUnknown">
  <owner>dmurph@chromium.org</owner>
  <summary>
    True if the file size of a filesystem object on blob append is unknown
    (which means the full file), or false if a specific file length was
    populated. Recorded in BlobStorageContext when we are adding a filesystem
    item to a blob.
  </summary>
</histogram>

<histogram name="Suggestions.FailedRequestErrorCode" enum="NetErrorCodes">
  <owner>mathp@chromium.org</owner>
  <summary>
    The counts of network error codes encountered by SuggestionsService when an
    attempt to fetch suggestions from the server fails.
  </summary>
</histogram>

<histogram name="Suggestions.FetchResponseCode">
  <owner>mathp@chromium.org</owner>
  <summary>
    The counts of HTTP response codes encountered by SuggestionsService when
    attempting to fetch suggestions from the server.
  </summary>
</histogram>

<histogram name="Suggestions.FetchSuccessLatency" units="ms">
  <owner>mathp@chromium.org</owner>
  <summary>
    The latency of a SuggestionsService fetch that results in a success
    response.
  </summary>
</histogram>

<histogram name="Suggestions.LocalBlacklistSize" units="URLcount">
  <owner>manzagop@chromium.org</owner>
  <summary>
    Number of URLs present in the Suggestions local blacklist when the
    Suggestions service is created.
  </summary>
</histogram>

<histogram name="Suggestions.ResponseState" enum="SuggestionsResponseState">
  <owner>mathp@chromium.org</owner>
  <summary>
    The counts of response states (such as empty or invalid) encountered by
    SuggestionsService when attempting to fetch suggestions from the server.
  </summary>
</histogram>

<histogram name="Sync.AppAssociationTime" units="ms">
  <owner>zea@chromium.org</owner>
  <summary>
    Time taken during app association (M18 and earlier were mispelled with this
    histogram).
  </summary>
</histogram>

<histogram name="Sync.AppRunFailures">
  <obsolete>
    Deprecated as of m19.
  </obsolete>
  <owner>zea@chromium.org</owner>
  <summary>
    Count of apps run failures, used to compare failure rates between data types
    for a particular profile (see other Sync*RunFailures histograms).
  </summary>
</histogram>

<histogram name="Sync.AppsAssociationTime" units="ms">
  <owner>zea@chromium.org</owner>
  <summary>Time taken during app association.</summary>
</histogram>

<histogram name="Sync.AppsConfigureFailure" enum="SyncConfigureResult">
  <owner>zea@chromium.org</owner>
  <summary>Enumeration of types of app configuration failures.</summary>
</histogram>

<histogram name="Sync.AppSettingsAssociationTime" units="ms">
  <owner>zea@chromium.org</owner>
  <summary>Time taken during app settings association.</summary>
</histogram>

<histogram name="Sync.AppSettingsConfigureFailure" enum="SyncConfigureResult">
  <owner>zea@chromium.org</owner>
  <summary>
    Enumeration of types of app settings configuration failures.
  </summary>
</histogram>

<histogram name="Sync.AppSettingsStartFailure" enum="SyncStartResult">
  <obsolete>
    Replaced by AppSettingsConfigureFailure. See crbug.com/478226.
  </obsolete>
  <owner>zea@chromium.org</owner>
  <summary>Enumeration of types of app settings association failures.</summary>
</histogram>

<histogram name="Sync.AppsStartFailure" enum="SyncStartResult">
  <obsolete>
    Replaced by AppsConfigureFailure. See crbug.com/478226.
  </obsolete>
  <owner>zea@chromium.org</owner>
  <summary>Enumeration of types of app association failures.</summary>
</histogram>

<histogram name="Sync.AppStartFailures" enum="SyncStartResult">
  <obsolete>
    Deprecated as of m19.
  </obsolete>
  <owner>zea@chromium.org</owner>
  <summary>
    Enumeration of types of app association failures (M18 and earlier were
    mispelled with this histogram).
  </summary>
</histogram>

<histogram name="Sync.Attachments.DownloadChecksumResult" enum="BooleanMatched">
  <owner>maxbogue@chromium.org</owner>
  <summary>Whether attachment checksums match on download or not.</summary>
</histogram>

<histogram name="Sync.Attachments.DownloadResponseCode"
    enum="CombinedHttpResponseAndNetErrorCode">
  <owner>maxbogue@chromium.org</owner>
  <summary>Response or error codes from downloading sync attachments.</summary>
</histogram>

<histogram name="Sync.Attachments.DownloadTotalTime" units="ms">
  <owner>maxbogue@chromium.org</owner>
  <summary>
    The total time a download takes including request and server overhead.
  </summary>
</histogram>

<histogram name="Sync.Attachments.StoreInitResult"
    enum="SyncAttachmentStoreResult">
  <owner>maxbogue@chromium.org</owner>
  <summary>The result of initializing the sync attachment store.</summary>
</histogram>

<histogram name="Sync.Attachments.UploadResponseCode"
    enum="CombinedHttpResponseAndNetErrorCode">
  <owner>maxbogue@chromium.org</owner>
  <summary>Response or error codes from uploading sync attachments.</summary>
</histogram>

<histogram name="Sync.AttemptNigoriMigration" enum="SyncNigoriMigrationResult">
  <owner>zea@chromium.org</owner>
  <summary>
    Enumeration of results from attempting to migrate Sync's nigori node and its
    encryption keys to support keystore.
  </summary>
</histogram>

<histogram name="Sync.AuthInvalidationRejectedTokenAgeLong" units="days">
  <owner>zea@chromium.org</owner>
  <summary>
    Age of all auth tokens rejected by the invalidation server. Measured from
    the time they were created.
  </summary>
</histogram>

<histogram name="Sync.AuthInvalidationRejectedTokenAgeShort" units="ms">
  <owner>zea@chromium.org</owner>
  <summary>
    Age of auth tokens younger than one hour that were rejected by the
    invalidation server. Measured from the time they were created.
  </summary>
</histogram>

<histogram name="Sync.AuthorizationTimeInNetwork" units="ms">
  <owner>zea@chromium.org</owner>
  <summary>Time taken during initial authorization.</summary>
</histogram>

<histogram name="Sync.AuthServerRejectedTokenAgeLong" units="days">
  <owner>zea@chromium.org</owner>
  <summary>
    Age of all auth tokens rejected by the sync server. Measured from the time
    they were created.
  </summary>
</histogram>

<histogram name="Sync.AuthServerRejectedTokenAgeShort" units="ms">
  <owner>zea@chromium.org</owner>
  <summary>
    Age of auth tokens younger than one hour that were rejected by the sync
    server. Measured from the time they were created.
  </summary>
</histogram>

<histogram name="Sync.AutofillAssociationTime" units="ms">
  <owner>zea@chromium.org</owner>
  <summary>Time taken during autofill association.</summary>
</histogram>

<histogram name="Sync.AutofillConfigureFailure" enum="SyncConfigureResult">
  <owner>zea@chromium.org</owner>
  <summary>Enumeration of types of autofill configuration failures.</summary>
</histogram>

<histogram name="Sync.AutofillProfileAssociationTime" units="ms">
  <owner>zea@chromium.org</owner>
  <summary>
    Time taken during autofill profile association (M18 and earlier were
    mispelled with this histogram).
  </summary>
</histogram>

<histogram name="Sync.AutofillProfileRunFailures">
  <obsolete>
    Deprecated as of m19.
  </obsolete>
  <owner>zea@chromium.org</owner>
  <summary>
    Count of autofill profiles run failures, used to compare failure rates
    between data types for a particular profile (see other Sync*RunFailures
    histograms).
  </summary>
</histogram>

<histogram name="Sync.AutofillProfilesAssociationTime" units="ms">
  <owner>zea@chromium.org</owner>
  <summary>Time taken during autofill profile association.</summary>
</histogram>

<histogram name="Sync.AutofillProfilesConfigureFailure"
    enum="SyncConfigureResult">
  <owner>zea@chromium.org</owner>
  <summary>
    Enumeration of types of autofill profile configuration failures.
  </summary>
</histogram>

<histogram name="Sync.AutofillProfilesStartFailure" enum="SyncStartResult">
  <obsolete>
    Replaced by AutofillProfilesConfigureFailure. See crbug.com/478226.
  </obsolete>
  <owner>zea@chromium.org</owner>
  <summary>
    Enumeration of types of autofill profile association failures.
  </summary>
</histogram>

<histogram name="Sync.AutofillProfileStartFailures" enum="SyncStartResult">
  <obsolete>
    Deprecated as of m19.
  </obsolete>
  <owner>zea@chromium.org</owner>
  <summary>
    Enumeration of types of autofill profile association failures (M18 and
    earlier were mispelled with this histogram).
  </summary>
</histogram>

<histogram name="Sync.AutofillRunFailures">
  <obsolete>
    Deprecated as of m19.
  </obsolete>
  <owner>zea@chromium.org</owner>
  <summary>
    Count of autofill (autocomplete) run failures, used to compare failure rates
    between data types for a particular profile (see other Sync*RunFailures
    histograms).
  </summary>
</histogram>

<histogram name="Sync.AutofillStartFailure" enum="SyncStartResult">
  <obsolete>
    Replaced by AutofillConfigureFailure. See crbug.com/478226.
  </obsolete>
  <owner>zea@chromium.org</owner>
  <summary>Enumeration of types of autofill association failures.</summary>
</histogram>

<histogram name="Sync.AutoNigoriOverwrites">
  <owner>zea@chromium.org</owner>
  <summary>
    Number of times this client has overwritten the nigori node to update the
    encryption keys without a user action (during this instantiation of Chrome).
  </summary>
</histogram>

<histogram name="Sync.BackendInitializeFirstTime" units="ms">
  <owner>zea@chromium.org</owner>
  <summary>
    Tracks sync backend initialization time during initial sync setup.
  </summary>
</histogram>

<histogram name="Sync.BackendInitializeFirstTimeSuccess" enum="BooleanSuccess">
  <owner>zea@chromium.org</owner>
  <summary>
    Tracks sync backend initialization success rate during initial sync setup.
  </summary>
</histogram>

<histogram name="Sync.BackendInitializeRestoreState"
    enum="SyncBackendInitializeRestoreState">
  <owner>zea@chromium.org</owner>
  <summary>
    Compares sync's has_setup_completed pref against the set of types actually
    restored from the sync DB.  Mismatches should be rare.
  </summary>
</histogram>

<histogram name="Sync.BackendInitializeRestoreSuccess" enum="BooleanSuccess">
  <owner>zea@chromium.org</owner>
  <summary>
    Tracks sync backend initialization success rate in cases where sync was
    previously initialized.
  </summary>
</histogram>

<histogram name="Sync.BackendInitializeRestoreTime" units="ms">
  <owner>zea@chromium.org</owner>
  <summary>
    Tracks sync backend initialization time in cases where sync was previously
    initialized.
  </summary>
</histogram>

<histogram name="Sync.BadRequestCountOnSignInNeedsUpdateInfoBar">
  <owner>zea@chromium.org</owner>
  <summary>
    Number of bad requests since application startup, when the Sync error
    infobar asking the user to update his account details is displayed.
  </summary>
</histogram>

<histogram name="Sync.BookmarkAssociationTime" units="ms">
  <obsolete>
    Deprecated as of m18
  </obsolete>
  <owner>zea@chromium.org</owner>
  <summary>Time taken during bookmark association.</summary>
</histogram>

<histogram name="Sync.BookmarkRunFailures">
  <obsolete>
    Deprecated as of m19.
  </obsolete>
  <owner>zea@chromium.org</owner>
  <summary>
    Count of bookmark run failures, used to compare failure rates between data
    types for a particular profile (see other Sync*RunFailures histograms).
  </summary>
</histogram>

<histogram name="Sync.BookmarksAssociationTime" units="ms">
  <owner>zea@chromium.org</owner>
  <summary>Time taken during bookmark association.</summary>
</histogram>

<histogram name="Sync.BookmarksConfigureFailure" enum="SyncConfigureResult">
  <owner>zea@chromium.org</owner>
  <summary>Enumeration of types of bookmark configuration failures.</summary>
</histogram>

<histogram name="Sync.BookmarksDuplicationsAtAssociation">
  <owner>stanisc@chromium.org</owner>
  <summary>
    Estimated number of bookmark duplications after bookmark association.
  </summary>
</histogram>

<histogram name="Sync.BookmarksModelSyncStateAtNewDuplication"
    enum="SyncBookmarkModelSyncState">
  <owner>stanisc@chromium.org</owner>
  <summary>
    Tracks state of local bookmark model version relative to the sync version
    when a new bookmark duplication occurs during bookmark association.
  </summary>
</histogram>

<histogram name="Sync.BookmarksNewDuplicationsAtAssociation">
  <owner>stanisc@chromium.org</owner>
  <summary>
    Estimated number of new bookmark duplications after bookmark association.
  </summary>
</histogram>

<histogram name="Sync.BookmarksStartFailure" enum="SyncStartResult">
  <obsolete>
    Replaced by BookmarksConfigureFailure. See crbug.com/478226.
  </obsolete>
  <owner>zea@chromium.org</owner>
  <summary>Enumeration of types of bookmark association failures.</summary>
</histogram>

<histogram name="Sync.BookmarkStartFailures" enum="SyncStartResult">
  <obsolete>
    Deprecated as of m19.
  </obsolete>
  <owner>zea@chromium.org</owner>
  <summary>
    Enumeration of types of bookmark association failures (M18 and earlier were
    mispelled with this histogram).
  </summary>
</histogram>

<histogram name="Sync.ConfigureDataTypes" enum="SyncModelTypes">
  <owner>zea@chromium.org</owner>
  <summary>
    Breakdown of sync data types being configured at first time signin, restart,
    or user-initiated reconfiguration. This is different from Sync.CustomTypes
    in that this captures all active devices, not just those that are choosing a
    custom sync configuration.

    Note that not all platforms support all data types. As such, comparing
    across platforms should only look at the common data types.
  </summary>
</histogram>

<histogram name="Sync.ConfigureFailed" enum="SyncModelTypes">
  <owner>zea@chromium.org</owner>
  <summary>Count of model association failures for each type.</summary>
</histogram>

<histogram name="Sync.ConfigureTime.ABORTED" units="ms">
  <obsolete>
    Replaced by Sync.ConfigureTime_Long.ABORTED in m21.
  </obsolete>
  <owner>zea@chromium.org</owner>
  <summary>
    Time spent configuring data types in the case where configuration is
    aborted.
  </summary>
</histogram>

<histogram name="Sync.ConfigureTime.OK" units="ms">
  <obsolete>
    Replaced by Sync.ConfigureTime_Long.OK in m21.
  </obsolete>
  <owner>zea@chromium.org</owner>
  <summary>
    Time spent configuring data types in the case where configuration succeeds.
  </summary>
</histogram>

<histogram name="Sync.ConfigureTime.PARTIAL_SUCCESS" units="ms">
  <obsolete>
    Replaced by Sync.ConfigureTime_Long.PARTIAL_SUCCESS in m21.
  </obsolete>
  <owner>zea@chromium.org</owner>
  <summary>
    Time spent configuring data types in the case where only some data types
    succeed.
  </summary>
</histogram>

<histogram name="Sync.ConfigureTime.UNRECOVERABLE_ERROR" units="ms">
  <obsolete>
    Replaced by Sync.ConfigureTime_Long.UNRECOVERABLE_ERROR in m21.
  </obsolete>
  <owner>zea@chromium.org</owner>
  <summary>
    Time spent configuring data types in the case where configuration encounters
    an unrecoverable error.
  </summary>
</histogram>

<histogram name="Sync.ConfigureTime_Long.ABORTED" units="ms">
  <owner>zea@chromium.org</owner>
  <summary>
    Time spent configuring data types in the case where configuration is
    aborted.
  </summary>
</histogram>

<histogram name="Sync.ConfigureTime_Long.OK" units="ms">
  <owner>zea@chromium.org</owner>
  <summary>
    Time spent configuring data types in the case where configuration succeeds.
  </summary>
</histogram>

<histogram name="Sync.ConfigureTime_Long.PARTIAL_SUCCESS" units="ms">
  <owner>zea@chromium.org</owner>
  <summary>
    Time spent configuring data types in the case where only some data types
    succeed.
  </summary>
</histogram>

<histogram name="Sync.ConfigureTime_Long.UNRECOVERABLE_ERROR" units="ms">
  <owner>zea@chromium.org</owner>
  <summary>
    Time spent configuring data types in the case where configuration encounters
    an unrecoverable error.
  </summary>
</histogram>

<histogram name="Sync.ConflictFixCircularity">
  <obsolete>
    Deprecated 12/2011. No longer tracked. See crbug.com/107816.
  </obsolete>
  <owner>zea@chromium.org</owner>
  <summary>
    Number of times we fix a circularity sync conflict. This is not expected to
    be hit anymore.
  </summary>
</histogram>

<histogram name="Sync.ConflictFixRemovedDirectoriesWithContent">
  <obsolete>
    Deprecated 12/2011. No longer tracked. See crbug.com/107816.
  </obsolete>
  <owner>zea@chromium.org</owner>
  <summary>
    Number of times we fix a removed directory with content sync conflict. This
    is not expected to be hit anymore
  </summary>
</histogram>

<histogram name="Sync.CookieJarEmptyOnMismatch" enum="BooleanEmpty">
  <owner>zea@chromium.org</owner>
  <summary>
    Whether the gaia cookie jar was empty. Recorded on every SESSIONS commit
    where the gaia cookie jar does not include the signed in user (
    CookieJarMatchOnNavigation == false).
  </summary>
</histogram>

<histogram name="Sync.CookieJarMatchOnNavigation" enum="BooleanMatched">
  <owner>zea@chromium.org</owner>
  <summary>
    Whether the gaia cookie jar included the signed in user (matched) or not.
    Recorded on every SESSIONS commit.
  </summary>
</histogram>

<histogram name="Sync.CredentialsLost" enum="BooleanCredentialsLost">
  <owner>zea@chromium.org</owner>
  <summary>
    Whether or not we detected missing credentials during startup.  This may be
    related to crbug.com/121755.
  </summary>
</histogram>

<histogram name="Sync.CryptographerPendingKeys"
    enum="SyncCryptographerPendingKeysState">
  <owner>zea@chromium.org</owner>
  <summary>
    Breakdown of sync users whose cryptographer has pending keys.
  </summary>
</histogram>

<histogram name="Sync.CryptographerReady" enum="SyncCryptographerReadyState">
  <owner>zea@chromium.org</owner>
  <summary>
    Breakdown of sync users whose cryptographer is fully ready for encryption
    and decryption (initialized and no pending keys).
  </summary>
</histogram>

<histogram name="Sync.CustomEncryption" enum="SyncCustomEncryptionEvent">
  <owner>zea@chromium.org</owner>
  <summary>
    Histogram that keeps track of how users encrypt their sync data. All users
    start off with default encryption during initial setup, while a subset of
    users go on to encrypt their sync data with a custom passphrase.
  </summary>
</histogram>

<histogram name="Sync.CustomPassphrase">
  <obsolete>
    Deprecated as of m26.
  </obsolete>
  <owner>zea@chromium.org</owner>
  <summary>
    Boolean histogram for whether a custom passphrase was entered during sync
    setup. Samples are taken every time sync is (re)configured, and the unique
    userid count shows how many users entered a custom passphrase.
  </summary>
</histogram>

<histogram name="Sync.CustomSync" enum="UserSelectableSyncType">
  <owner>zea@chromium.org</owner>
  <summary>
    Samples are taken every time sync is (re)configured, and the unique userid
    count shows how many users explicitly chose to sync this data type via the
    &quot;Advanced Sync Preferences&quot; dialog.
  </summary>
</histogram>

<histogram name="Sync.DatatypePrefRecovery">
  <owner>zea@chromium.org</owner>
  <summary>
    Number of clients that have fixed themselves up from a datatype preference
    loss. Clients are not expected to have this happen more than once. This
    value can be compared to Sync.BackendInitializeRestoreSuccess to determine
    what percentage of users are still recovering.
  </summary>
</histogram>

<histogram name="Sync.DataTypeRunFailures" enum="SyncModelTypes">
  <owner>zea@chromium.org</owner>
  <summary>
    Histogram of the run failures for the different sync datatypes. These are
    failures that occur after startup while the datatype is syncing. Note: Due
    to an enumeration reordering, pre-M23 labels are inaccurate (see
    sync/internal_api/public/base/model_type.h).
  </summary>
</histogram>

<histogram name="Sync.DataTypeStartFailures" enum="SyncModelTypes">
  <owner>zea@chromium.org</owner>
  <summary>
    Histogram of the startup failures for the different sync datatypes. These
    are failures due to missing top level sync nodes or model association Note:
    Due to an enumeration reordering, pre-M23 labels are inaccurate (see
    sync/internal_api/public/base/model_type.h).
  </summary>
</histogram>

<histogram name="Sync.DeviceCount">
  <owner>skym@chromium.org</owner>
  <summary>
    The largest number of active syncing devices known to any profile. May be 0
    when there are no signed in/syncing profiles open.
  </summary>
</histogram>

<histogram name="Sync.DeviceIdMismatchDetails" enum="DeviceIdMismatch">
  <owner>pavely@chromium.org</owner>
  <summary>
    When signin_scoped_device_id from pref doesn't match the one in
    DeviceInfoSpecfics this histogram tells if sync or pref copy was empty. This
    will indicate how often such mismatch happens and what was the state before.
  </summary>
</histogram>

<histogram name="Sync.DictionaryAssociationTime" units="ms">
  <owner>zea@chromium.org</owner>
  <summary>Time taken during dictionary association.</summary>
</histogram>

<histogram name="Sync.DictionaryConfigureFailure" enum="SyncConfigureResult">
  <owner>zea@chromium.org</owner>
  <summary>Enumeration of types of dictionary configuration failures.</summary>
</histogram>

<histogram name="Sync.DictionaryStartFailure" enum="SyncStartResult">
  <obsolete>
    Replaced by DictionaryConfigureFailure. See crbug.com/478226.
  </obsolete>
  <owner>zea@chromium.org</owner>
  <summary>Enumeration of types of dictionary association failures.</summary>
</histogram>

<histogram name="Sync.DirectoryCatastrophicError" enum="BooleanError">
  <owner>maniscalco@chromium.org</owner>
  <summary>
    Whether the Sync Directory encountered a catastrophic error.
  </summary>
</histogram>

<histogram name="Sync.DirectoryOpenFailedMac">
  <obsolete>
    Deprecated 11/2011. No longer tracked.
  </obsolete>
  <owner>zea@chromium.org</owner>
  <summary>Number of failures trying to open the sync database on mac.</summary>
</histogram>

<histogram name="Sync.DirectoryOpenFailedNotWinMac">
  <obsolete>
    Deprecated 11/2011. No longer tracked.
  </obsolete>
  <owner>zea@chromium.org</owner>
  <summary>
    Number of failures trying to open the sync database on a non-windows non-mac
    platform.
  </summary>
</histogram>

<histogram name="Sync.DirectoryOpenFailedWin">
  <obsolete>
    Deprecated 11/2011. No longer tracked.
  </obsolete>
  <owner>zea@chromium.org</owner>
  <summary>
    Number of failures trying to open the sync database on windows.
  </summary>
</histogram>

<histogram name="Sync.DirectoryOpenResult" enum="SyncDirectoryOpenResult">
  <owner>zea@chromium.org</owner>
  <summary>Tracks success of failure of sync directory initialization.</summary>
</histogram>

<histogram name="Sync.EncryptAllData">
  <obsolete>
    Deprecated as of m26.
  </obsolete>
  <owner>zea@chromium.org</owner>
  <summary>
    Boolean histogram for whether the &quot;Encrypt all synced data&quot; radio
    button was selected during sync setup. Samples are taken every time sync is
    (re)configured, and the unique userid count shows how many users chose to
    encrypt their sync data.
  </summary>
</histogram>

<histogram name="Sync.EventCodes" enum="SyncEventCode">
  <owner>zea@chromium.org</owner>
  <summary>A UI event occured.</summary>
</histogram>

<histogram name="Sync.ExtensionAssociationTime" units="ms">
  <owner>zea@chromium.org</owner>
  <summary>
    Time taken during extension association (M18 and earlier were mispelled with
    this histogram).
  </summary>
</histogram>

<histogram name="Sync.ExtensionRunFailures">
  <obsolete>
    Deprecated as of m19.
  </obsolete>
  <owner>zea@chromium.org</owner>
  <summary>
    Count of extension run failures, used to compare failure rates between data
    types for a particular profile (see other Sync*RunFailures histograms).
  </summary>
</histogram>

<histogram name="Sync.ExtensionsAssociationTime" units="ms">
  <owner>zea@chromium.org</owner>
  <summary>Time taken during extension association.</summary>
</histogram>

<histogram name="Sync.ExtensionsConfigureFailure" enum="SyncConfigureResult">
  <owner>zea@chromium.org</owner>
  <summary>Enumeration of types of extension configuration failures.</summary>
</histogram>

<histogram name="Sync.ExtensionSettingsAssociationTime" units="ms">
  <owner>zea@chromium.org</owner>
  <summary>Time taken during extension settings association.</summary>
</histogram>

<histogram name="Sync.ExtensionSettingsConfigureFailure"
    enum="SyncConfigureResult">
  <owner>zea@chromium.org</owner>
  <summary>
    Enumeration of types of extension settings configuration failures.
  </summary>
</histogram>

<histogram name="Sync.ExtensionSettingsStartFailure" enum="SyncStartResult">
  <obsolete>
    Replaced by ExtensionSettingsConfigureFailure. See crbug.com/478226.
  </obsolete>
  <owner>zea@chromium.org</owner>
  <summary>
    Enumeration of types of extension settings association failures.
  </summary>
</histogram>

<histogram name="Sync.ExtensionsStartFailure" enum="SyncStartResult">
  <obsolete>
    Replaced by ExtensionsConfigureFailure. See crbug.com/478226.
  </obsolete>
  <owner>zea@chromium.org</owner>
  <summary>Enumeration of types of extension association failures.</summary>
</histogram>

<histogram name="Sync.ExtensionStartFailures" enum="SyncStartResult">
  <obsolete>
    Deprecated as of m19.
  </obsolete>
  <owner>zea@chromium.org</owner>
  <summary>
    Enumeration of types of extension association failures (M18 and earlier were
    mispelled with this histogram).
  </summary>
</histogram>

<histogram name="Sync.ExtraSyncDataCount" units="entries">
  <owner>gangwu@chromium.org</owner>
  <summary>
    Counts the total number of extra copies of sync data in memory. This count
    is emitted once, after loading Sync Directory. The count will indicate how
    many Directory entities fail to share client and server specifics.
  </summary>
</histogram>

<histogram name="Sync.FaviconCacheLookupSucceeded" enum="BooleanSuccess">
  <owner>zea@chromium.org</owner>
  <summary>Whether a sync favicon cache lookup succeeded or not.</summary>
</histogram>

<histogram name="Sync.FaviconCount">
  <owner>zea@chromium.org</owner>
  <summary>Number of synced favicons at initialization time.</summary>
</histogram>

<histogram name="Sync.FaviconImagesAssociationTime" units="ms">
  <owner>zea@chromium.org</owner>
  <summary>Time taken during favicon images association.</summary>
</histogram>

<histogram name="Sync.FaviconImagesConfigureFailure" enum="SyncConfigureResult">
  <owner>zea@chromium.org</owner>
  <summary>
    Enumeration of types of favicon images configuration failures.
  </summary>
</histogram>

<histogram name="Sync.FaviconImagesStartFailure" enum="SyncStartResult">
  <obsolete>
    Replaced by FaviconImagesConfigureFailure. See crbug.com/478226.
  </obsolete>
  <owner>zea@chromium.org</owner>
  <summary>
    Enumeration of types of favicon images association failures.
  </summary>
</histogram>

<histogram name="Sync.FaviconsAvailableAtMerge" enum="SyncFaviconsAvailable">
  <owner>zea@chromium.org</owner>
  <summary>
    Number of client that have filled their sync favicon cache and must evict
    old favicons vs those whose cache is not full.
  </summary>
</histogram>

<histogram name="Sync.FaviconTrackingAssociationTime" units="ms">
  <owner>zea@chromium.org</owner>
  <summary>Time taken during favicon tracking association.</summary>
</histogram>

<histogram name="Sync.FaviconTrackingConfigureFailure"
    enum="SyncConfigureResult">
  <owner>zea@chromium.org</owner>
  <summary>
    Enumeration of types of favicon tracking configuration failures.
  </summary>
</histogram>

<histogram name="Sync.FaviconTrackingStartFailure" enum="SyncStartResult">
  <obsolete>
    Replaced by FaviconTrackingConfigureFailure. See crbug.com/478226.
  </obsolete>
  <owner>zea@chromium.org</owner>
  <summary>
    Enumeration of types of favicon tracking association failures.
  </summary>
</histogram>

<histogram name="Sync.FaviconVisitPeriod" units="hours">
  <owner>zea@chromium.org</owner>
  <summary>Time between updates to a synced favicon's visit time.</summary>
</histogram>

<histogram name="Sync.FirstBackendInitializeSuccess" enum="BooleanSuccess">
  <obsolete>
    Deprecated 11/2011.  Was counted incorrectly.  Replaced by
    Sync.BackendInitializeFirstTimeSuccess.
  </obsolete>
  <owner>zea@chromium.org</owner>
  <summary>
    Tracks sync backend initialization success rate during initial sync setup.
  </summary>
</histogram>

<histogram name="Sync.FirstSyncDelayByBackup" units="ms">
  <obsolete>
    Backup logic has been removed since 02/2016.
  </obsolete>
  <owner>haitaol@chromium.org</owner>
  <summary>First sync delay casued by backing up user data.</summary>
</histogram>

<histogram name="Sync.FreqApps" units="ms">
  <owner>zea@chromium.org</owner>
  <summary>
    Time between nudges for apps. Used as estimate of datatype commit frequency.
    Logged when a sync cycle is performed for apps.
  </summary>
</histogram>

<histogram name="Sync.FreqAutofill" units="ms">
  <owner>zea@chromium.org</owner>
  <summary>
    Time between nudges for autofill entries. Used as estimate of datatype
    commit frequency. Logged when a sync cycle is performed for autofill
    entries.
  </summary>
</histogram>

<histogram name="Sync.FreqAutofillProfiles" units="ms">
  <owner>zea@chromium.org</owner>
  <summary>
    Time between nudges for autofill profiles. Used as estimate of datatype
    commit frequency. Logged when a sync cycle is performed for autofill
    profiles.
  </summary>
</histogram>

<histogram name="Sync.FreqBookmarks" units="ms">
  <owner>zea@chromium.org</owner>
  <summary>
    Time between nudges for bookmarks. Used as estimate of datatype commit
    frequency. Logged when a sync cycle is performed for boomarks.
  </summary>
</histogram>

<histogram name="Sync.FreqDictionary" units="ms">
  <owner>zea@chromium.org</owner>
  <summary>
    Time between nudges for dictionary. Used as estimate of datatype commit
    frequency. Logged when a sync cycle is performed for dictionary.
  </summary>
</histogram>

<histogram name="Sync.FreqExtensions" units="ms">
  <owner>zea@chromium.org</owner>
  <summary>
    Time between nudges for extensions. Used as estimate of datatype commit
    frequency. Logged when a sync cycle is performed for extensions.
  </summary>
</histogram>

<histogram name="Sync.FreqFaviconImages" units="ms">
  <owner>zea@chromium.org</owner>
  <summary>
    Time between nudges for favicon images. Used as estimate of datatype commit
    frequency. Logged when a sync cycle is performed for favicon images.
  </summary>
</histogram>

<histogram name="Sync.FreqFaviconTracking" units="ms">
  <owner>zea@chromium.org</owner>
  <summary>
    Time between nudges for favicon tracking. Used as estimate of datatype
    commit frequency. Logged when a sync cycle is performed for favicon
    tracking.
  </summary>
</histogram>

<histogram name="Sync.FreqNigori" units="ms">
  <owner>zea@chromium.org</owner>
  <summary>
    Time between nudges for nigori. Used as estimate of datatype commit
    frequency. Logged when a sync cycle is performed for nigori.
  </summary>
</histogram>

<histogram name="Sync.FreqPasswords" units="ms">
  <owner>zea@chromium.org</owner>
  <summary>
    Time between nudges for passwords. Used as estimate of datatype commit
    frequency. Logged when a sync cycle is performed for passwords.
  </summary>
</histogram>

<histogram name="Sync.FreqPreferences" units="ms">
  <owner>zea@chromium.org</owner>
  <summary>
    Time between nudges for preferences. Used as estimate of datatype commit
    frequency. Logged when a sync cycle is performed for preferences.
  </summary>
</histogram>

<histogram name="Sync.FreqSearchEngines" units="ms">
  <owner>zea@chromium.org</owner>
  <summary>
    Time between nudges for search engines. Used as estimate of datatype commit
    frequency. Logged when a sync cycle is performed for search engines.
  </summary>
</histogram>

<histogram name="Sync.FreqSessions" units="ms">
  <owner>zea@chromium.org</owner>
  <summary>
    Time between nudges for sessions. Used as estimate of datatype commit
    frequency. Logged when a sync cycle is performed for sessions.
  </summary>
</histogram>

<histogram name="Sync.FreqSyncedNotifications" units="ms">
  <owner>zea@chromium.org</owner>
  <summary>
    Time between nudges for synced notifications. Used as estimate of datatype
    commit frequency. Logged when a sync cycle is performed for synced
    notifications.
  </summary>
</histogram>

<histogram name="Sync.FreqThemes" units="ms">
  <owner>zea@chromium.org</owner>
  <summary>
    Time between nudges for themes. Used as estimate of datatype commit
    frequency. Logged when a sync cycle is performed for themes.
  </summary>
</histogram>

<histogram name="Sync.FreqTypedUrls" units="ms">
  <owner>zea@chromium.org</owner>
  <summary>
    Time between nudges for typed urls. Used as estimate of datatype commit
    frequency. Logged when a sync cycle is performed for typed urls.
  </summary>
</histogram>

<histogram name="Sync.FreqWifiCredentials" units="ms">
  <owner>zea@chromium.org</owner>
  <summary>
    Time between nudges for WiFi credentials. Used as estimate of datatype
    commit frequency. Logged when a sync cycle is performed for WiFi
    credentials.
  </summary>
</histogram>

<histogram name="Sync.InitialState" enum="SyncInitialState">
  <owner>maxbogue@chromium.org</owner>
  <summary>
    An approximate state of sync at startup. Logs a few reasons sync definitely
    wouldn't be able to start, or that it probably can start. The user having
    turned off sync on mobile will be logged as &quot;turned off by user&quot;.
    A dashboard stop and clear will fall under &quot;turned off and setup not
    completed&quot;. See the SyncInitialState enum in profile_sync_service.h for
    more information.
  </summary>
</histogram>

<histogram name="Sync.InvalidationSessionsAndroid" enum="BooleanHit">
  <owner>pkotwicz@chromium.org</owner>
  <summary>
    Count of the number of session sync invalidations. The goal of the metric is
    to track how the number of session sync invalidations changes over time.
  </summary>
</histogram>

<histogram name="Sync.KeystoreDecryptionFailed"
    enum="SyncKeystoreDecryptionFailure">
  <owner>zea@chromium.org</owner>
  <summary>
    The reason for a failure decrypting the keystore decryptor token.
  </summary>
</histogram>

<histogram name="Sync.LocalDataFailedToLoad" enum="SyncModelTypes">
  <owner>vasilii@chromium.org</owner>
  <summary>
    Counts cases when a sync type failed to load the local data during startup.
  </summary>
</histogram>

<histogram name="Sync.LocalModelOutOfSync" enum="SyncModelTypes">
  <owner>zea@chromium.org</owner>
  <summary>
    Counts instances of out of sync local models detected during startup.
  </summary>
</histogram>

<histogram name="Sync.MemoryPressureWarningBeforeCleanShutdown" units="count">
  <owner>gangwu@chromium.org</owner>
  <summary>
    Counts the number of times a user's sync service received a
    MEMORY_PRESSURE_LEVEL_CRITICAL warning before the sync service shut down
    cleanly. The sync service emits this number the next time the user's sync
    service is started, which will likely happen the next time the user's
    profile is opened after a Chrome restart.  This count is emitted once per
    user/profile. Things like browser crashes that implicitly bring down all
    users' sync services will cause unclean shutdown tags to appear on all open
    profiles, meaning that there will be multiple emissions to this histogram as
    those profiles are re-opened.
  </summary>
</histogram>

<histogram name="Sync.MemoryPressureWarningBeforeUncleanShutdown" units="count">
  <owner>gangwu@chromium.org</owner>
  <summary>
    Counts the number of times a user's sync service received a
    MEMORY_PRESSURE_LEVEL_CRITICAL warning before the sync service shut down
    uncleanly. The sync service emits this number the next time the user's sync
    service is started, which will likely happen the next time the user's
    profile is opened after a Chrome restart.  This count is emitted once per
    user/profile. Things like browser crashes that implicitly bring down all
    users' sync services will cause unclean shutdown tags to appear on all open
    profiles, meaning that there will be multiple emissions to this histogram as
    those profiles are re-opened.
  </summary>
</histogram>

<histogram name="Sync.ModelTypeCount" units="entries">
  <owner>gangwu@chromium.org</owner>
  <summary>
    Counts the number of entries for each model type in sync DB at startup.
  </summary>
</histogram>

<histogram name="Sync.NigoriMigrationState" enum="SyncNigoriMigrationState">
  <owner>zea@chromium.org</owner>
  <summary>Breakdown of sync's nigori node keystore migration state.</summary>
</histogram>

<histogram name="Sync.PageRevisitBookmarksDuration" units="ms">
  <owner>skym@chromium.org</owner>
  <summary>
    The client side execution time to check for revisits with bookmarks data.
  </summary>
</histogram>

<histogram name="Sync.PageRevisitBookmarksMatchAge" units="minutes">
  <owner>skym@chromium.org</owner>
  <summary>
    Age of bookmark that matches a navigation event, where matching means the
    urls match. If multiple bookmarks match, the most recently created is used.
  </summary>
</histogram>

<histogram name="Sync.PageRevisitBookmarksMatchTransition"
    enum="PageVisitTransitionType">
  <owner>skym@chromium.org</owner>
  <summary>Transition type to a page that matched a bookmark.</summary>
</histogram>

<histogram name="Sync.PageRevisitBookmarksMissTransition"
    enum="PageVisitTransitionType">
  <owner>skym@chromium.org</owner>
  <summary>Transition type to a page that didn't match a bookmark.</summary>
</histogram>

<histogram name="Sync.PageRevisitNavigationMatchAge" units="minutes">
  <owner>skym@chromium.org</owner>
  <summary>
    Difference in time between finding the match and the creation of the most
    recent foreign modification of the parent tab. The parent tab's modification
    will not always be indicative of when the matching navigation occurred.
  </summary>
</histogram>

<histogram name="Sync.PageRevisitNavigationMatchOffset">
  <owner>skym@chromium.org</owner>
  <summary>
    The number of navigations forward or backwards the matching noncurrent
    navigation is from the current navigation in its tab. Negative values
    represent backwards and positive values represent forwards. Zero should not
    occur since it would cease to be noncurrent.
  </summary>
</histogram>

<histogram name="Sync.PageRevisitNavigationMatchTransition"
    enum="PageVisitTransitionType">
  <owner>skym@chromium.org</owner>
  <summary>Transition type that matched a synced navigation.</summary>
</histogram>

<histogram name="Sync.PageRevisitNavigationMissTransition"
    enum="PageVisitTransitionType">
  <owner>skym@chromium.org</owner>
  <summary>Transition type that didn't match a synced navigation.</summary>
</histogram>

<histogram name="Sync.PageRevisitSessionDuration" units="ms">
  <owner>skym@chromium.org</owner>
  <summary>
    The client side execution time to check for revisits with session data.
  </summary>
</histogram>

<histogram name="Sync.PageRevisitTabMatchAge" units="minutes">
  <owner>skym@chromium.org</owner>
  <summary>
    Difference in time between finding the match and the creation of the most
    recent foreign modification of the given tab.
  </summary>
</histogram>

<histogram name="Sync.PageRevisitTabMatchTransition"
    enum="PageVisitTransitionType">
  <owner>skym@chromium.org</owner>
  <summary>Transition type that matched a synced tab.</summary>
</histogram>

<histogram name="Sync.PageRevisitTabMissTransition"
    enum="PageVisitTransitionType">
  <owner>skym@chromium.org</owner>
  <summary>Transition type that didn't match a synced tab.</summary>
</histogram>

<histogram name="Sync.PageRevisitTypedUrlDuration" units="ms">
  <owner>skym@chromium.org</owner>
  <summary>
    The client side execution time to check for revisits with typed URL data.
  </summary>
</histogram>

<histogram name="Sync.PageRevisitTypedUrlMatchAge" units="minutes">
  <owner>skym@chromium.org</owner>
  <summary>
    Difference in time between finding the match and the last time this URL was
    typed on a foreign client.
  </summary>
</histogram>

<histogram name="Sync.PageRevisitTypedUrlMatchTransition"
    enum="PageVisitTransitionType">
  <owner>skym@chromium.org</owner>
  <summary>Transition type that matched a typed URL.</summary>
</histogram>

<histogram name="Sync.PageRevisitTypedUrlMissTransition"
    enum="PageVisitTransitionType">
  <owner>skym@chromium.org</owner>
  <summary>Transition type that didn't match a typed URL.</summary>
</histogram>

<histogram name="Sync.PartiallySyncedTypes">
  <owner>zea@chromium.org</owner>
  <summary>
    Number of partially synced types (those with a progress marker but no
    initial sync ended bit) that exist at sync startup.
  </summary>
</histogram>

<histogram name="Sync.PassphraseDecryptionSucceeded" enum="BooleanSuccess">
  <owner>zea@chromium.org</owner>
  <summary>Whether a passphrase decryption attempt succeeded or not.</summary>
</histogram>

<histogram name="Sync.PassphraseDialogDismissed" enum="SyncPassphraseDismissal">
  <owner>zea@chromium.org</owner>
  <summary>Enumeration of how a user dismissed the passphrase dialog.</summary>
</histogram>

<histogram name="Sync.PassphraseType" enum="SyncPassphraseType">
  <owner>maxbogue@chromium.org</owner>
  <summary>The active sync passphrase type at sync startup.</summary>
</histogram>

<histogram name="Sync.PasswordAssociationTime" units="ms">
  <owner>zea@chromium.org</owner>
  <summary>
    Time taken during password association (M18 and earlier were mispelled with
    this histogram).
  </summary>
</histogram>

<histogram name="Sync.PasswordRunFailures">
  <obsolete>
    Deprecated as of m19.
  </obsolete>
  <owner>zea@chromium.org</owner>
  <summary>
    Count of passwords run failures, used to compare failure rates between data
    types for a particular profile (see other Sync*RunFailures histograms).
  </summary>
</histogram>

<histogram name="Sync.PasswordsAssociationTime" units="ms">
  <owner>zea@chromium.org</owner>
  <summary>Time taken during password association.</summary>
</histogram>

<histogram name="Sync.PasswordsConfigureFailure" enum="SyncConfigureResult">
  <owner>zea@chromium.org</owner>
  <summary>Enumeration of types of password configuration failures.</summary>
</histogram>

<histogram name="Sync.PasswordsStartFailure" enum="SyncStartResult">
  <obsolete>
    Replaced by PasswordsConfigureFailure. See crbug.com/478226.
  </obsolete>
  <owner>zea@chromium.org</owner>
  <summary>Enumeration of types of password association failures.</summary>
</histogram>

<histogram name="Sync.PasswordStartFailures" enum="SyncStartResult">
  <obsolete>
    Deprecated as of m19.
  </obsolete>
  <owner>zea@chromium.org</owner>
  <summary>
    Enumeration of types of password association failures (M18 and earlier were
    mispelled with this histogram).
  </summary>
</histogram>

<histogram name="Sync.PreferenceAssociationTime" units="ms">
  <owner>zea@chromium.org</owner>
  <summary>
    Time taken during preference association (M18 and earlier were mispelled
    with this histogram).
  </summary>
</histogram>

<histogram name="Sync.PreferenceRunFailures">
  <obsolete>
    Deprecated as of m19.
  </obsolete>
  <owner>zea@chromium.org</owner>
  <summary>
    Count of preferences run failures, used to compare failure rates between
    data types for a particular profile (see other Sync*RunFailures histograms).
  </summary>
</histogram>

<histogram name="Sync.PreferencesAssociationTime" units="ms">
  <owner>zea@chromium.org</owner>
  <summary>Time taken during preference association.</summary>
</histogram>

<histogram name="Sync.PreferencesConfigureFailure" enum="SyncConfigureResult">
  <owner>zea@chromium.org</owner>
  <summary>Enumeration of types of preference configuration failures.</summary>
</histogram>

<histogram name="Sync.PreferencesStartFailure" enum="SyncStartResult">
  <obsolete>
    Replaced by PreferencesConfigureFailure. See crbug.com/478226.
  </obsolete>
  <owner>zea@chromium.org</owner>
  <summary>Enumeration of types of preference association failures.</summary>
</histogram>

<histogram name="Sync.PreferenceStartFailures" enum="SyncStartResult">
  <obsolete>
    Deprecated as of m19.
  </obsolete>
  <owner>zea@chromium.org</owner>
  <summary>
    Enumeration of types of preference association failures (M18 and earlier
    were mispelled with this histogram).
  </summary>
</histogram>

<histogram name="Sync.ReauthorizationTime" units="ms">
  <owner>zea@chromium.org</owner>
  <summary>Time taken from startup for the user to reauthorize.</summary>
</histogram>

<histogram name="Sync.RefreshTokenAvailable" enum="BooleanSuccess">
  <obsolete>
    Deprecated 04/2016 as not useful since it always logged true.
  </obsolete>
  <owner>zea@chromium.org</owner>
  <summary>
    Whether OAuth2 refresh token was available at the time when
    ProfileSyncService was starting backend.
  </summary>
</histogram>

<histogram name="Sync.RequestContentLength.Compressed" units="bytes">
  <owner>gangwu@chromium.org</owner>
  <summary>
    The request content size for a single HTTP/HTTPS call from sync client to
    server. The content is compressed by gzip.
  </summary>
</histogram>

<histogram name="Sync.RequestContentLength.Original" units="bytes">
  <owner>gangwu@chromium.org</owner>
  <summary>
    The original request content size for a single HTTP/HTTPS call from sync
    client to server. It is the size before content got compressed.
  </summary>
</histogram>

<histogram name="Sync.ResolveConflict" enum="SyncConflictResolutions">
  <owner>maxbogue@chromium.org</owner>
  <summary>
    Enumeration of types of conflict resolutions. Recorded every time a conflict
    is resolved for a data type that has been converted to USS.
  </summary>
</histogram>

<histogram name="Sync.ResolveSimpleConflict"
    enum="SyncSimpleConflictResolutions">
  <owner>zea@chromium.org</owner>
  <summary>Enumeration of types of simple conflict resolutions.</summary>
</histogram>

<histogram name="Sync.ResponseContentLength.Compressed" units="bytes">
  <owner>gangwu@chromium.org</owner>
  <summary>
    The response content size for a single HTTP/HTTPS call from sync server to
    client. The content is compressed by gzip.
  </summary>
</histogram>

<histogram name="Sync.ResponseContentLength.Original" units="bytes">
  <owner>gangwu@chromium.org</owner>
  <summary>
    The original response content size for a single HTTP/HTTPS call from sync
    server and client. It is the size after content got uncompressed.
  </summary>
</histogram>

<histogram name="Sync.RestoreBackendInitializeSucess" enum="BooleanSuccess">
  <obsolete>
    Deprecated 11/2011.  Was counted incorrectly.  Replaced by
    Sync.BackendInitializeRestoreSuccess.
  </obsolete>
  <owner>zea@chromium.org</owner>
  <summary>
    Tracks sync backend initialization success rate in cases where sync was
    previously initialized.
  </summary>
</histogram>

<histogram name="Sync.SearchEngineAssociationTime" units="ms">
  <owner>zea@chromium.org</owner>
  <summary>
    Time taken during search engine association (M18 and earlier were mispelled
    with this histogram).
  </summary>
</histogram>

<histogram name="Sync.SearchEngineRunFailures">
  <obsolete>
    Deprecated as of m19.
  </obsolete>
  <owner>zea@chromium.org</owner>
  <summary>
    Count of search engine run failures, used to compare failure rates between
    data types for a particular profile (see other Sync*RunFailures histograms).
  </summary>
</histogram>

<histogram name="Sync.SearchEnginesAssociationTime" units="ms">
  <owner>zea@chromium.org</owner>
  <summary>Time taken during search engine association.</summary>
</histogram>

<histogram name="Sync.SearchEnginesConfigureFailure" enum="SyncConfigureResult">
  <owner>zea@chromium.org</owner>
  <summary>
    Enumeration of types of search engine configuration failures.
  </summary>
</histogram>

<histogram name="Sync.SearchEnginesStartFailure" enum="SyncStartResult">
  <obsolete>
    Replaced by SearchEnginesConfigureFailure. See crbug.com/478226.
  </obsolete>
  <owner>zea@chromium.org</owner>
  <summary>Enumeration of types of search engine association failures.</summary>
</histogram>

<histogram name="Sync.SearchEngineStartFailures" enum="SyncStartResult">
  <obsolete>
    Deprecated as of m19.
  </obsolete>
  <owner>zea@chromium.org</owner>
  <summary>
    Enumeration of types of search engine association failures (M18 and earlier
    were mispelled with this histogram).
  </summary>
</histogram>

<histogram name="Sync.ServiceInitialConfigureTime" units="ms">
  <owner>zea@chromium.org</owner>
  <summary>
    Time spent on first-time configure.  May include time spent on retries.
  </summary>
</histogram>

<histogram name="Sync.ServiceSubsequentConfigureTime" units="ms">
  <owner>zea@chromium.org</owner>
  <summary>
    Time spent on non-first-time configure.  May include time spent on retries.
  </summary>
</histogram>

<histogram name="Sync.SessionAssociationTime" units="ms">
  <owner>zea@chromium.org</owner>
  <summary>
    Time taken during session association (M18 and earlier were mispelled with
    this histogram).
  </summary>
</histogram>

<histogram name="Sync.SessionRunFailures">
  <obsolete>
    Deprecated as of m19.
  </obsolete>
  <owner>zea@chromium.org</owner>
  <summary>
    Count of sessions run failures, used to compare failure rates between data
    types for a particular profile (see other Sync*RunFailures histograms).
  </summary>
</histogram>

<histogram name="Sync.SessionsAssociationTime" units="ms">
  <owner>zea@chromium.org</owner>
  <summary>Time taken during session association.</summary>
</histogram>

<histogram name="Sync.SessionsBadForeignHashOnMergeCount"
    units="Sessions Entries">
  <owner>skym@chromium.org</owner>
  <summary>
    Number of foreign sessions entries detected with bad client tag hash value
    during MergeDataAndStartSyncing. These will be immediately deleted. The
    overwhelming majority of clients should report a value of 0 upon startup.
  </summary>
</histogram>

<histogram name="Sync.SessionsConfigureFailure" enum="SyncConfigureResult">
  <owner>zea@chromium.org</owner>
  <summary>Enumeration of types of session configuration failures.</summary>
</histogram>

<histogram name="Sync.SessionsRefreshDelay" units="ms">
  <owner>zea@chromium.org</owner>
  <summary>
    Delay from the time chrome://history is loaded until the other devices'
    sessions data became available.
  </summary>
</histogram>

<histogram name="Sync.SessionsStartFailure" enum="SyncStartResult">
  <obsolete>
    Replaced by SessionsConfigureFailure. See crbug.com/478226.
  </obsolete>
  <owner>zea@chromium.org</owner>
  <summary>Enumeration of types of session association failures.</summary>
</histogram>

<histogram name="Sync.SessionStartFailures" enum="SyncStartResult">
  <obsolete>
    Deprecated as of m19.
  </obsolete>
  <owner>zea@chromium.org</owner>
  <summary>
    Enumeration of types of session association failures (M18 and earlier were
    mispelled with this histogram).
  </summary>
</histogram>

<histogram name="Sync.Shutdown.BackendDestroyedTime" units="ms">
  <owner>zea@chromium.org</owner>
  <summary>
    Time taken from the start of sync shutdown (in ProfileSyncService) until the
    backend (SyncBackendHost) is fully destroyed.
  </summary>
</histogram>

<histogram name="Sync.Shutdown.StopRegistrarTime" units="ms">
  <owner>zea@chromium.org</owner>
  <summary>
    Amount of time the UI thread waits (at shutdown) to stop the
    SyncBackendRegistrar.
  </summary>
</histogram>

<histogram name="Sync.Shutdown.StopSyncThreadTime" units="ms">
  <owner>zea@chromium.org</owner>
  <summary>
    Amount of time the UI thread waits (at shutdown) to stop the sync thread.
  </summary>
</histogram>

<histogram name="Sync.Startup.DeferredInitTrigger"
    enum="SyncDeferredInitTrigger">
  <owner>zea@chromium.org</owner>
  <summary>The type of event that triggered sync initialization.</summary>
</histogram>

<histogram name="Sync.Startup.TimeDeferred" units="ms">
  <obsolete>
    Deprecated, see TimeDeferred2.
  </obsolete>
  <owner>jeremy@chromium.org</owner>
  <owner>zea@google.com</owner>
  <summary>
    Time spent after ProfileSyncService *creation* but before SyncBackendHost
    initialization.
  </summary>
</histogram>

<histogram name="Sync.Startup.TimeDeferred2" units="ms">
  <owner>jeremy@chromium.org</owner>
  <owner>zea@google.com</owner>
  <summary>
    Time spent after ProfileSyncService *creation* but before SyncBackendHost
    initialization.
  </summary>
</histogram>

<histogram name="Sync.Startup.TypeTriggeringInit" enum="SyncModelTypes">
  <owner>zea@chromium.org</owner>
  <summary>Data type that first requests sync initialization.</summary>
</histogram>

<histogram name="Sync.StopSource" enum="SyncStopSource">
  <owner>maxbogue@chromium.org</owner>
  <summary>
    Tracks how sync was turned off. Logged every time sync is told to stop
    permanently by the user (e.g. it won't come back on by itself).
  </summary>
</histogram>

<histogram name="Sync.SyncAuthError" enum="SyncAuthError">
  <owner>zea@chromium.org</owner>
  <summary>
    Counts the number of times sync clients have encountered an auth error and
    number of times auth errors are fixed.
  </summary>
</histogram>

<histogram name="Sync.SyncedNotificationsAssociationTime" units="ms">
  <owner>zea@chromium.org</owner>
  <summary>Time taken during synced notifications association.</summary>
</histogram>

<histogram name="Sync.SyncedNotificationsConfigureFailure"
    enum="SyncConfigureResult">
  <owner>zea@chromium.org</owner>
  <summary>
    Enumeration of types of synced notifications configuration failures.
  </summary>
</histogram>

<histogram name="Sync.SyncedNotificationsStartFailure" enum="SyncStartResult">
  <obsolete>
    Replaced by SyncedNotificationsConfigureFailure. See crbug.com/478226.
  </obsolete>
  <owner>zea@chromium.org</owner>
  <summary>
    Enumeration of types of synced notifications association failures.
  </summary>
</histogram>

<histogram name="Sync.SyncerConflictStuck">
  <obsolete>
    Deprecated 12/2011. No longer tracked. See crbug.com/107816.
  </obsolete>
  <owner>zea@chromium.org</owner>
  <summary>
    Number of times the sync conflict resolver gets stuck. This is not expected
    to be hit anymore.
  </summary>
</histogram>

<histogram name="Sync.SyncErrorInfobarDisplayed" enum="SyncErrorInfobarTypes">
  <owner>droger@chromium.org</owner>
  <owner>zea@chromium.org</owner>
  <summary>
    Enumeration of error conditions that displays an infobar to the user.
  </summary>
</histogram>

<histogram name="Sync.SyncEverything">
  <owner>zea@chromium.org</owner>
  <summary>
    Boolean histogram for whether the &quot;Sync Everything&quot; option was
    selected during sync setup. Samples are taken every time sync is
    (re)configured, and the unique userid count shows how many users chose to
    sync all available data types.
  </summary>
</histogram>

<histogram name="Sync.ThemeAssociationTime" units="ms">
  <obsolete>
    Deprecated as of m19
  </obsolete>
  <owner>zea@chromium.org</owner>
  <summary>
    Time taken during theme association (M18 and earlier were mispelled with
    this histogram).
  </summary>
</histogram>

<histogram name="Sync.ThemeRunFailures">
  <obsolete>
    Deprecated as of m19.
  </obsolete>
  <owner>zea@chromium.org</owner>
  <summary>
    Count of theme run failures, used to compare failure rates between data
    types for a particular profile (see other Sync*RunFailures histograms).
  </summary>
</histogram>

<histogram name="Sync.ThemesAssociationTime" units="ms">
  <owner>zea@chromium.org</owner>
  <summary>Time taken during theme association.</summary>
</histogram>

<histogram name="Sync.ThemesConfigureFailure" enum="SyncConfigureResult">
  <owner>zea@chromium.org</owner>
  <summary>Enumeration of types of theme configuration failures.</summary>
</histogram>

<histogram name="Sync.ThemesStartFailure" enum="SyncStartResult">
  <obsolete>
    Replaced by ThemesConfigureFailure. See crbug.com/478226.
  </obsolete>
  <owner>zea@chromium.org</owner>
  <summary>Enumeration of types of theme association failures.</summary>
</histogram>

<histogram name="Sync.ThemeStartFailures" enum="SyncStartResult">
  <obsolete>
    Deprecated as of m19.
  </obsolete>
  <owner>zea@chromium.org</owner>
  <summary>
    Enumeration of types of theme association failures (M18 and earlier were
    mispelled with this histogram).
  </summary>
</histogram>

<histogram name="Sync.TypedUrlAssociationTime" units="ms">
  <owner>zea@chromium.org</owner>
  <summary>
    Time taken during typed url association (M18 and earlier were mispelled with
    this histogram).
  </summary>
</histogram>

<histogram name="Sync.TypedUrlChangeProcessorErrors" units="%">
  <owner>zea@chromium.org</owner>
  <summary>
    The percentage of history DB operations initiated by the typed URL change
    processor that return an error. The cumulative count for the current sync
    session is logged after every typed URL change.
  </summary>
</histogram>

<histogram name="Sync.TypedUrlMergeAndStartSyncingErrors" units="%">
  <owner>zea@chromium.org</owner>
  <summary>
    The percentage of history DB operations during merge data that return an
    error. This is logged at the end of typed URL merge data, which happens once
    each time sync starts up.
  </summary>
</histogram>

<histogram name="Sync.TypedUrlModelAssociationErrors" units="%">
  <owner>zea@chromium.org</owner>
  <summary>
    The percentage of history DB operations during model association that return
    an error. This is logged at the end of typed URL model association, which
    happens once each time sync starts up.
  </summary>
</histogram>

<histogram name="Sync.TypedUrlRunFailures">
  <obsolete>
    Deprecated as of m19.
  </obsolete>
  <owner>zea@chromium.org</owner>
  <summary>
    Count of typed url run failures, used to compare failure rates between data
    types for a particular profile (see other Sync*RunFailures histograms).
  </summary>
</histogram>

<histogram name="Sync.TypedUrlsAssociationTime" units="ms">
  <owner>zea@chromium.org</owner>
  <summary>Time taken during typed url association.</summary>
</histogram>

<histogram name="Sync.TypedUrlsConfigureFailure" enum="SyncConfigureResult">
  <owner>zea@chromium.org</owner>
  <summary>Enumeration of types of typed url configuration failures.</summary>
</histogram>

<histogram name="Sync.TypedUrlsStartFailure" enum="SyncStartResult">
  <obsolete>
    Replaced by TypedUrlsConfigureFailure. See crbug.com/478226.
  </obsolete>
  <owner>zea@chromium.org</owner>
  <summary>Enumeration of types of typed url association failures.</summary>
</histogram>

<histogram name="Sync.TypedUrlStartFailures" enum="SyncStartResult">
  <obsolete>
    Deprecated as of m19.
  </obsolete>
  <owner>zea@chromium.org</owner>
  <summary>
    Enumeration of types of typed url association failures (M18 and earlier were
    mispelled with this histogram).
  </summary>
</histogram>

<histogram name="Sync.UnrecoverableErrors" enum="SyncUnrecoverableErrorReason">
  <owner>zea@chromium.org</owner>
  <summary>
    Enumeration of the different reasons for unrecoverable errors and how often
    they have occurred.
  </summary>
</histogram>

<histogram name="Sync.URLFetchResponse"
    enum="CombinedHttpResponseAndNetErrorCode">
  <owner>zea@chromium.org</owner>
  <summary>
    Counts of responses (both http code and net error code) for Sync URL
    fetches.
  </summary>
</histogram>

<histogram name="Sync.URLFetchTime" units="ms">
  <owner>zea@chromium.org</owner>
  <summary>
    Time spent waiting for a sync cycle to complete the url fetch.
  </summary>
</histogram>

<histogram name="Sync.URLFetchTimedOut" enum="BooleanTimedOut">
  <owner>zea@chromium.org</owner>
  <summary>
    Whether a url fetch timed out or not. Timing out implies the fetch was
    stalled for an unknown reason.
  </summary>
</histogram>

<histogram name="Sync.UserPerceivedAuthorizationTime" units="ms">
  <owner>zea@chromium.org</owner>
  <summary>Time the user spends looking at the authorization dialog.</summary>
</histogram>

<histogram name="Sync.UserPerceivedBookmarkAssociation">
  <owner>zea@chromium.org</owner>
  <summary>Time taken during bookmark association.</summary>
</histogram>

<histogram name="Sync.USSLoadModelsTime" units="ms">
  <owner>pavely@chromium.org</owner>
  <summary>Time it took sync to load models for USS datatypes.</summary>
</histogram>

<histogram name="Sync.WifiCredentialsAssociationTime" units="ms">
  <owner>zea@chromium.org</owner>
  <summary>Time taken during WiFi credentials association.</summary>
</histogram>

<histogram name="Sync.WifiCredentialsConfigureFailure"
    enum="SyncConfigureResult">
  <owner>zea@chromium.org</owner>
  <summary>
    Enumeration of types of WiFi credentials configuration failures.
  </summary>
</histogram>

<histogram name="Sync.WifiCredentialsStartFailure" enum="SyncStartResult">
  <obsolete>
    Replaced by WifiCredentialsConfigureFailure. See crbug.com/478226.
  </obsolete>
  <owner>zea@chromium.org</owner>
  <summary>
    Enumeration of types of WiFi credentials association failures.
  </summary>
</histogram>

<histogram name="Sync.YoungestForeignTabAgeOnNTP" units="seconds">
  <owner>skym@chromium.org</owner>
  <summary>Upon NTP load, the age of the youngest synced foreign tab.</summary>
</histogram>

<histogram name="SyncedNotifications.Actions"
    enum="SyncedNotificationActionType">
  <owner>petewil@chromium.org</owner>
  <owner>zea@chromium.org</owner>
  <summary>
    The actions taken on synced notifications, recorded every time they happen.
    This histogram will record every single event that happens separately.
  </summary>
</histogram>

<histogram name="SyncFileSystem.ConflictResolutionPolicy"
    enum="SyncFSConflictResolutionPolicy">
  <owner>tzik@chromium.org</owner>
  <summary>
    Overridden conflict resolution policy of Sync FileSystem API. Recorded for
    each API call to override the policy.
  </summary>
</histogram>

<histogram name="SyncFileSystem.Database.Open" enum="LevelDBStatus">
  <owner>tzik@chromium.org</owner>
  <summary>The result of opening the Sync FileSystem backend database.</summary>
</histogram>

<histogram name="SyncFileSystem.MetadataNumber">
  <owner>tzik@chromium.org</owner>
  <summary>
    The number of cached backing remote file metadata in the Sync FileSystem
    database. Recorded at the initialization phase of Sync FileSystem.
  </summary>
</histogram>

<histogram name="SyncFileSystem.RegisteredAppNumber">
  <owner>tzik@chromium.org</owner>
  <summary>
    The number of Chrome Apps that uses Sync FileSystem with V2 backend.
    Recorded at the initialization phase of Sync FileSystem.
  </summary>
</histogram>

<histogram name="SyncFileSystem.RegisterOriginResult"
    enum="SyncFSRemoteServiceState">
  <owner>tzik@chromium.org</owner>
  <summary>
    The result of the registration of Chrome App to Sync FileSystem.
  </summary>
</histogram>

<histogram name="SyncFileSystem.RegisterOriginTime" units="ms">
  <owner>peria@chromium.org</owner>
  <owner>tzik@chromium.org</owner>
  <summary>
    Time elapsed to register a Chrome App to SyncFilesystem. Recorded for each
    registration request by apps.
  </summary>
</histogram>

<histogram name="SyncFileSystem.TrackerDB.Open" enum="LevelDBStatus">
  <owner>tzik@chromium.org</owner>
  <summary>The result of opening the Sync FileSystem tracker database.</summary>
</histogram>

<histogram name="SyncFileSystem.TrackerNumber">
  <owner>tzik@chromium.org</owner>
  <summary>
    The number of the directory tree node that maps backing files to local files
    in the Sync FileSystem database. Recorded at the initialization phase of
    SyncFileSystem.
  </summary>
</histogram>

<histogram name="SyncPromo.NTPPromo" enum="SyncPromoAction">
  <owner>dbeam@chromium.org</owner>
  <summary>
    Shows actions taken on the &quot;Not signed in? You're misssing out&quot;
    link on the top right of chrome://apps. Logged once per visit of
    chrome://apps as well as on each click of the sync promo.
  </summary>
</histogram>

<histogram name="Syzyasan.DeferredFreeWasEnabled" enum="BooleanEnabled">
  <owner>georgesak@chromium.org</owner>
  <summary>
    Record whether the deferred free mechanism was successfully enabled or not.
    This is only recorded in syzyasan builds with the feature enabled.
  </summary>
</histogram>

<histogram name="Tab.AgeUponRestoreFromColdStart" units="minutes">
  <owner>lliabraa@chromium.org</owner>
  <summary>
    Age (time since the last display in previous sessions) of a tab being
    restored due to the first tab switch after the browser cold start, recorded
    upon such restore. When the browser is started from cold, this metric is not
    recorded for the foreground, automatically restored tab, so that the metric
    tracks only the restores triggered by direct user decision to switch tabs.
  </summary>
</histogram>

<histogram name="Tab.AndroidCrashUpload" enum="BooleanSuccess">
  <owner>hzl@google.com</owner>
  <summary>Count of upload success/failures by crash type.</summary>
</histogram>

<histogram name="Tab.BackgroundLoadStatus" enum="TabBackgroundLoadStatus">
  <owner>ppi@chromium.org</owner>
  <summary>
    Mobile-specific metric: when a tab that was opened in background (via
    &quot;Open link in new tab&quot;) is switched to, we record whether the
    eagerly loaded tab was still memory resident, or we lost the loaded page due
    to memory pressure.
  </summary>
</histogram>

<histogram name="Tab.BackgroundTabShown" enum="BooleanShown">
  <owner>pkotwicz@chromium.org</owner>
  <summary>
    Whether a tab which was opened in the background (e.g. via &quot;Open link
    in new tab&quot;) is foregrounded prior to being closed.
  </summary>
</histogram>

<histogram name="Tab.BackgroundTabsOpenedViaContextMenuCount">
  <owner>pkotwicz@chromium.org</owner>
  <summary>
    Counts the number of background tabs opened via the context menu per page
    URL. The count is reset on each navigation of the parent tab. Zero counts
    are not recorded.
  </summary>
</histogram>

<histogram name="Tab.Close" units="ms">
  <summary>
    Time in milliseconds from trying to close the tab to actually closing it.
    Includes time that's spent in JS OnUnload handlers.
  </summary>
</histogram>

<histogram name="Tab.Close.UnloadTime" units="ms">
  <summary>
    Time in milliseconds from when JS OnUnload handlers have finished to
    actually closing tab. Doesn't include time that's spent in JS OnUnload
    handlers. If there are no UnLoad handlers, should be idential to Tab.Close.
  </summary>
</histogram>

<histogram name="Tab.Discarding" enum="TabDiscardingEvents">
  <obsolete>
    Deprecated 10/2015, not needed anymore.
  </obsolete>
  <owner>georgesak@chromium.org</owner>
  <summary>
    Metric to track counts of actions related to tab discarding. Namely, we get
    an event for every tab switch, split into two groups, whether it was a
    discarded tab not. We also get an event whenever a tab gets discarded as
    well as when a tab that's playing audio gets discarded.
  </summary>
</histogram>

<histogram name="Tab.Discarding.DiscardCount" units="Discards">
  <obsolete>
    Deprecated 10/2015, and replaced by TabManager.Discarding.DiscardCount.
  </obsolete>
  <owner>georgesak@chromium.org</owner>
  <summary>
    Metric to track the number of discards tabs have gone through. Each time a
    tab is discarded, this histogram is recorded. Therefore, this metric is
    cumulative, ie. as a tab gets discarded over and over, it gets a hit in each
    bin (1, 2, 3...).
  </summary>
</histogram>

<histogram name="Tab.EvictedTabWasActive" enum="Boolean">
  <owner>lliabraa@chromium.org</owner>
  <summary>
    [iOS] When switching to an evicted tab, this histogram records whether or
    not the tab had ever been active. For example, the tab was opened via
    &quot;Open in new tab&quot; but evicted before being viewed for the first
    time.
  </summary>
</histogram>

<histogram name="Tab.FormActivityCountEvictedHistogram">
  <owner>lliabraa@chromium.org</owner>
  <summary>
    A count of form activity (e.g. fields selected, characters typed) in a tab.
    Recorded only for tabs that are evicted due to memory pressure and then
    selected again.
  </summary>
</histogram>

<histogram name="Tab.LostTabAgeWhenSwitchedToForeground" units="ms">
  <owner>pkotwicz@chromium.org</owner>
  <summary>
    [Android] When a tab that was opened in the background (e.g. via &quot;Open
    link in new tab&quot;) is evicted prior to the first time that it is shown,
    we record the tab's age at the time that the tab is shown.
  </summary>
</histogram>

<histogram name="Tab.NewTab" enum="NewTabType">
  <owner>lliabraa@chromium.org</owner>
  <owner>beaudoin@chromium.org</owner>
  <summary>
    Tracks the different ways users are opening new tabs. Does not apply to
    opening existing links or searches in a new tab, only to brand new empty
    tabs. Note: Currently the &quot;Regular menu option&quot; includes some
    programmatic actions in addition to user actions.
  </summary>
</histogram>

<histogram name="Tab.NewTabDOMContentLoaded" units="ms">
  <owner>lliabraa@chromium.org</owner>
  <owner>beaudoin@chromium.org</owner>
  <summary>
    The time for the new tab page to fire the &quot;DOMContentLoaded&quot;
    event.
  </summary>
</histogram>

<histogram name="Tab.NewTabOnload" units="ms">
  <owner>lliabraa@chromium.org</owner>
  <owner>beaudoin@chromium.org</owner>
  <summary>
    The time for the new tab page to fire the &quot;load&quot; event. Note: This
    is usually recorded with a suffix (.Local/Google/Other). The base version is
    recorded only on Android, as well as for the old NTP (&quot;NTP4&quot;) on
    other platforms.
  </summary>
</histogram>

<histogram name="Tab.NewTabScriptStart" units="ms">
  <owner>lliabraa@chromium.org</owner>
  <owner>beaudoin@chromium.org</owner>
  <summary>
    The time for the new tab page to start executing JavaScript.
  </summary>
</histogram>

<histogram name="Tab.PerceivedRestoreTime" units="ms">
  <owner>lliabraa@chromium.org</owner>
  <summary>
    User-perceived load time for a successful tab restore, measured from the
    first time the user sees the tab being restored until the load completes.
  </summary>
</histogram>

<histogram name="Tab.RendererCrashStatus" enum="TabRendererCrashStatus">
  <owner>jaekyun@chromium.org</owner>
  <summary>
    The status of a tab and an application when a renderer crashes. This is
    recorded only for Android when a renderer crashes.
  </summary>
</histogram>

<histogram name="Tab.RendererDetailedExitStatus"
    enum="TabRendererDetailedExitStatus">
  <owner>wnwen@chromium.org</owner>
  <summary>
    Breakdown of renderer exit status for renderers that have strong bindings.
    An extension of the counts in Tab.RendererExitStatus. Only recorded on
    Android.
  </summary>
</histogram>

<histogram name="Tab.RendererDetailedExitStatusUnbound"
    enum="TabRendererDetailedExitStatus">
  <owner>wnwen@chromium.org</owner>
  <summary>
    Breakdown of renderer exit status for renderers that do not have strong
    bindings. An extension of the counts in Tab.RendererExitStatus. Only
    recorded on Android.
  </summary>
</histogram>

<histogram name="Tab.RendererExitStatus" enum="TabRendererExitStatus">
  <owner>wnwen@chromium.org</owner>
  <summary>
    The status of a renderer when the browser notices that the process has
    exited. Only recorded on Android.
  </summary>
</histogram>

<histogram name="Tab.RestoreResult" enum="TabRestoreResult">
  <owner>lliabraa@chromium.org</owner>
  <summary>
    When the browser restores a tab, whether the load was successful. Loads can
    fail for instance when there is no connectivity.
  </summary>
</histogram>

<histogram name="Tab.RestoreTime" units="ms">
  <owner>lliabraa@chromium.org</owner>
  <summary>Load time for a successful tab restore.</summary>
</histogram>

<histogram name="Tab.RestoreUserPersistence" enum="TabRestoreUserAction">
  <owner>lliabraa@chromium.org</owner>
  <summary>
    When the browser restores a tab, whether the user waits for completion of
    the load or if the user gives up by switching to another tab or leaving
    Chrome.
  </summary>
</histogram>

<histogram name="Tab.StatusWhenDisplayed" enum="TabStatus">
  <owner>lliabraa@chromium.org</owner>
  <owner>ppi@chromium.org</owner>
  <summary>
    The status of a tab collected each time the tab is displayed on Android,
    including user switching to the tab and displays of newly created tabs, such
    as NTP or tabs opened to handle intents.
  </summary>
</histogram>

<histogram name="Tab.StatusWhenSwitchedBackToForeground" enum="TabStatus">
  <owner>lliabraa@chromium.org</owner>
  <owner>ppi@chromium.org</owner>
  <summary>
    The status of a tab collected each time the user switches to it on mobile.
    That does not include tabs being created at the time the user switches to
    them, such as NTP or tabs opened to handle intents.
  </summary>
</histogram>

<histogram name="Tab.StatusWhenSwitchedBackToForegroundDataProxyEnabled"
    enum="TabStatus">
  <owner>lliabraa@chromium.org</owner>
  <owner>marq@chromium.org</owner>
  <owner>ppi@chromium.org</owner>
  <summary>
    The status of a tab collected each time the user switches to it on mobile
    with the data reduction proxy enabled. This is populated identically, and in
    addition to Tab.StatusWhenSwitchedBackToForeground for any given tab
    switching event if the proxy is enabled.
  </summary>
</histogram>

<histogram name="Tab.SwitchedToForegroundAge" units="ms">
  <owner>lliabraa@chromium.org</owner>
  <summary>Age (in ms) when the tab was switched to foreground.</summary>
</histogram>

<histogram name="Tab.SwitchedToForegroundLaunchedWithURL"
    enum="TabSwitchedToForegroundLaunchedWithURL">
  <obsolete>
    Deprecated as of 04/2014.
  </obsolete>
  <owner>lliabraa@chromium.org</owner>
  <summary>
    Each time a tab is brought to the foreground, this histogram indicates if
    chrome was launched without an URL (i.e., from the launcher), or with an URL
    (i.e., from another app).
  </summary>
</histogram>

<histogram name="Tab.SwitchedToForegroundMRURank">
  <obsolete>
    Deprecated as of 04/2014.
  </obsolete>
  <owner>lliabraa@chromium.org</owner>
  <summary>
    Rank in MRU order (0 being first) when the tab was switched to foreground.
  </summary>
</histogram>

<histogram name="Tab.SwitchedToForegroundNumTabs">
  <owner>lliabraa@chromium.org</owner>
  <summary>Count of all tabs when a tab is switched.</summary>
</histogram>

<histogram name="Tab.SwitchedToForegroundRevisit"
    enum="TabSwitchedToForegroundRevisit">
  <obsolete>
    Deprecated as of 04/2014.
  </obsolete>
  <owner>lliabraa@chromium.org</owner>
  <summary>
    Each time a tab is brought to the foreground, this histogram indicates if
    this is the first viewing of the tab since Chrome was put into foreground,
    or if it was a return to a tab that has already been shown in this session.
  </summary>
</histogram>

<histogram name="Tab.TimeSinceActive" units="ms">
  <owner>lliabraa@chromium.org</owner>
  <summary>
    [iOS] When an existing tab becomes active, this histogram records the time
    since it was made inactive.
  </summary>
</histogram>

<histogram name="Tab.TimeSinceActiveEvicted" units="ms">
  <owner>lliabraa@chromium.org</owner>
  <summary>
    [iOS] When an evicted tab becomes active, this histogram records the time
    since it was made inactive.
  </summary>
</histogram>

<histogram name="Tab.TimeSinceFormActivityEvictedHistogram" units="ms">
  <owner>lliabraa@chromium.org</owner>
  <summary>
    Time elapsed since there was form activity (e.g. fields selected, characters
    typed) in a tab. Recorded only for tabs that are evicted due to memory
    pressure and then selected again.
  </summary>
</histogram>

<histogram name="Tab.TotalTabCount.BeforeLeavingApp" units="tabs">
  <owner>jaekyun@chromium.org</owner>
  <summary>
    The total count of tabs which were kept while Chrome process is in the
    foreground. This is recorded only for Android right before Chrome process
    goes into the background.
  </summary>
</histogram>

<histogram name="TabManager.Discarding.DiscardCount" units="Discards">
  <owner>georgesak@chromium.org</owner>
  <summary>
    Cumulative number of tabs discarded due to low memory conditions, recorded
    once per tab discard event.  For example, a user who had 3 tabs discarded
    records a count in the 1 bin, 2 bin and 3 bin.  Thus each bin N is the
    number of sessions where users experienced N or more tab discard events.
  </summary>
</histogram>

<histogram name="TabManager.Discarding.DiscardedEngagementScore">
  <owner>georgesak@chromium.org</owner>
  <summary>
    Site engagement score of a discarded tab. Recorded for each discard if the
    score is available.
  </summary>
</histogram>

<histogram name="TabManager.Discarding.DiscardedTabHasBeforeUnloadHandler"
    enum="Boolean">
  <owner>georgesak@chromium.org</owner>
  <summary>
    Recorded for each discarding, allowing us to know whether the discarded tab
    had a before unload handler or not.
  </summary>
</histogram>

<histogram name="TabManager.Discarding.DiscardToReloadTime" units="ms">
  <owner>georgesak@chromium.org</owner>
  <summary>
    Elapsed time between a tab getting discarded to eventually being reloaded by
    the user.
  </summary>
</histogram>

<histogram name="TabManager.Discarding.InactiveToReloadTime" units="ms">
  <owner>georgesak@chromium.org</owner>
  <summary>
    Elapsed time between the time a tab switched from being active to inactive
    (that eventually gets discarded) until it gets reloaded.
  </summary>
</histogram>

<histogram name="TabManager.Discarding.ReloadCount" units="Reloads">
  <owner>georgesak@chromium.org</owner>
  <summary>
    Cumulative number of discarded tabs that have been reloaded by the user,
    recorded once per tab discard event. For example, a user who had 3 tabs
    reloaded records a count in the 1 bin, 2 bin and 3 bin. Thus each bin N is
    the number of sessions where users experienced N or more tab reload events.
  </summary>
</histogram>

<histogram name="TabManager.Discarding.ReloadedEngagementScore">
  <owner>georgesak@chromium.org</owner>
  <summary>
    Site engagement score of a reloaded tab. Recorded for each reload if the
    score is available. Note that this will be the same score the tab had when
    discarded (which could have changed by the time it gets reloaded).
  </summary>
</histogram>

<histogram name="TabManager.Discarding.ReloadToCloseTime" units="ms">
  <owner>georgesak@chromium.org</owner>
  <summary>
    Elapsed time between the last time a discarded tab was reloaded and the time
    it gets closed.
  </summary>
</histogram>

<histogram name="Tabs.CountAtResume" units="tabs">
  <owner>lliabraa@chromium.org</owner>
  <summary>
    The number of tabs open when the app comes out of the background.
  </summary>
</histogram>

<histogram name="Tabs.CountAtStartup" units="tabs">
  <owner>lliabraa@chromium.org</owner>
  <owner>ppi@chromium.org</owner>
  <summary>The number of tabs open at cold launch.</summary>
</histogram>

<histogram name="Tabs.Discard.DiscardCount">
  <obsolete>
    Deprecated 10/2015, and replaced by TabManager.Discarding.DiscardCount.
  </obsolete>
  <owner>jamescook@chromium.org</owner>
  <summary>
    Cumulative number of tabs discarded due to low memory conditions, recorded
    once per tab discard event.  For example, a user who had 3 tabs discarded
    records a count in the 1 bin, 2 bin and 3 bin.  Thus each bin N is the
    number of sessions where users experienced N or more tab discard events.
  </summary>
</histogram>

<histogram name="Tabs.Discard.DiscardInLastMinute" enum="BooleanTabDiscard">
  <owner>jamescook@chromium.org</owner>
  <summary>
    Whether or not a tab was discarded in the last minute of usage. Total count
    is number of minutes of device usage. 100 / discard percentage gives the
    average number of minutes between discard events.
  </summary>
</histogram>

<histogram name="Tabs.Discard.InitialTime" units="seconds">
  <obsolete>
    Deprecated May 4, 2012.  Replaced by Tabs.Discard.InitialTime2 because this
    stat had too low of a range maximum.  No longer tracked.
  </obsolete>
  <owner>jamescook@chromium.org</owner>
  <summary>
    Time in seconds between system startup and when the first tab is discarded
    due to low memory conditions.  Higher is better.
  </summary>
</histogram>

<histogram name="Tabs.Discard.InitialTime2" units="seconds">
  <owner>jamescook@chromium.org</owner>
  <summary>
    Time in seconds between system startup and when the first tab is discarded
    due to low memory conditions.  Higher is better.  Range maximum is
    approximately one day.
  </summary>
</histogram>

<histogram name="Tabs.Discard.IntervalTime" units="seconds">
  <obsolete>
    Deprecated May 4, 2012.  Replaced by Tabs.Discard.IntervalTime2 because this
    stat had too low of a range maximum.  No longer tracked.
  </obsolete>
  <owner>jamescook@chromium.org</owner>
  <summary>
    Time in seconds between tab discard events after the first one, recorded
    once per discard event.  Higher is better.
  </summary>
</histogram>

<histogram name="Tabs.Discard.IntervalTime2" units="ms">
  <owner>jamescook@chromium.org</owner>
  <summary>
    Time in milliseconds between tab discard events after the first one,
    recorded once per discard event.  Should occur no faster than once every 750
    ms.  Higher is better.
  </summary>
</histogram>

<histogram name="Tabs.Discard.MemAllocatedMB" units="MB">
  <owner>jamescook@chromium.org</owner>
  <summary>
    System-wide memory allocation at the time a tab was discarded, roughly
    equivalent to the sum of memory allocated with malloc() in userspace plus
    graphics driver memory.
  </summary>
</histogram>

<histogram name="Tabs.Discard.MemAnonymousMB" units="MB">
  <obsolete>
    Deprecated December 7, 2012.  Replaced by Tabs.Discard.MemAllocatedMB
    because this stat has insufficient precision in the 2-4 GB range and does
    not properly account for graphics memory on ARM.
  </obsolete>
  <owner>jamescook@chromium.org</owner>
  <summary>
    System-wide anonymous memory allocation at the time a tab was discarded,
    roughly equivalent to memory allocated with malloc().
  </summary>
</histogram>

<histogram name="Tabs.Discard.MemAvailableMB" units="MB">
  <owner>jamescook@chromium.org</owner>
  <summary>
    System-wide file-backed memory plus free memory, roughly equivalent to what
    the kernel uses to trigger low-memory notifications for tab discards. If
    lower than the kernel's threshold then we are not effectively freeing memory
    in response to the initial notification and are repeatedly being notified.
  </summary>
</histogram>

<histogram name="Tabs.Discard.MemGraphicsMB" units="MB">
  <owner>jamescook@chromium.org</owner>
  <summary>
    Graphics driver (GEM object) memory at the time of a tab discard.
  </summary>
</histogram>

<histogram name="Tabs.Discard.MemShmemMB" units="MB">
  <owner>jamescook@chromium.org</owner>
  <summary>
    System-wide shared memory at the time of a tab discard. Used primarily for
    shared buffers in the graphics system. Tracked because it's a historical
    source of leaks on Chrome OS.
  </summary>
</histogram>

<histogram name="Tabs.Discard.ReloadCount">
  <obsolete>
    Deprecated 10/2015, and replaced by TabManager.Discarding.ReloadCount.
  </obsolete>
  <owner>jamescook@chromium.org</owner>
  <summary>
    Cumulative number of times a tab was reloaded because it was discarded and
    the user clicked on it later, recorded once per reload event.  For example,
    a user who clicks on 3 discarded tabs will record a count in the 1 bin, 2
    bin, and 3 bin.  Thus each bin N is the number of sessions where users
    experienced N or more reload events.  Compare to Tabs.Discard.DiscardCount.
  </summary>
</histogram>

<histogram name="Tabs.Discard.TabCount" units="tabs">
  <owner>jamescook@chromium.org</owner>
  <summary>
    The number of tabs open across all browser windows when a tab was discarded
    due to low memory conditions.
  </summary>
</histogram>

<histogram name="Tabs.FineTiming.TimeBetweenTabClosedAndNextTabCreated"
    units="ms">
  <owner>joenotcharles@chromium.org</owner>
  <summary>
    Fine-grained (in msec) time between closing a tab and opening another, to
    track very frequent tabs.
  </summary>
</histogram>

<histogram name="Tabs.FineTiming.TimeBetweenTabCreatedAndNextTabCreated"
    units="ms">
  <owner>joenotcharles@chromium.org</owner>
  <summary>
    Fine-grained (in msec) time between opening a tab and opening another, to
    track very frequent tabs.
  </summary>
</histogram>

<histogram name="Tabs.FineTiming.TimeBetweenTabCreatedAndSameTabClosed"
    units="ms">
  <owner>joenotcharles@chromium.org</owner>
  <summary>
    Fine-grained (in msec) time between opening a tab and closing it, to track
    very short-lived tabs.
  </summary>
</histogram>

<histogram name="Tabs.FirstSwitchedToForegroundCreationRank">
  <owner>pkotwicz@chromium.org</owner>
  <summary>
    Records the &quot;Tab Creation Rank&quot; for the first background tab which
    was switched to the foreground. The &quot;Tab Creation Rank&quot; is
    relative to other background tabs which were opened from the same URL via
    the context menu. The oldest background tab has a rank of zero.
  </summary>
</histogram>

<histogram name="Tabs.FirstSwitchedToForegroundCreationReverseRank">
  <owner>pkotwicz@chromium.org</owner>
  <summary>
    Records the &quot;Reverse Tab Creation Rank&quot; for the first background
    background tab which was switched to the foreground. The &quot;Reverse Tab
    Creation Rank&quot; is relative to other background tabs which were opened
    from the same URL via the context menu. The newest background tab has a
    &quot;Reverse Tab Creation Rank&quot; of zero.
  </summary>
</histogram>

<histogram name="Tabs.ForegroundTabAgeAtStartup" units="minutes">
  <owner>lliabraa@chromium.org</owner>
  <summary>
    Age (time since the last display in previous sessions) of the foreground tab
    being restored on the browser cold start.
  </summary>
</histogram>

<histogram name="Tabs.iOS_PostRedirectPLT" units="ms">
  <owner>pauljensen@chromium.org</owner>
  <summary>
    Page load time (PLT) for iOS that does not include time spent following
    redirects. On other platforms this is calculated from Navigation Timings but
    on iOS Navigation Timings are not available so we're recreating a
    calculation similar to PLT.PT_RequestToFinish but not including time spent
    following redirects. This metric represents the time between when navigation
    is initiated (prior to DNS, TCP connect, etc but after following redirects)
    until loading ends (i.e. JS onload event). On non-iOS Chrome this is
    (performance.timing.loadEventEnd - performance.timing.redirectEnd). On
    Chrome for iOS we're calculating the time between the creation of the
    top-level URLRequest and when webDidFinishWithURL is called.
  </summary>
</histogram>

<histogram name="Tabs.SadTab.CrashCreated">
  <owner>jamescook@chromium.org</owner>
  <summary>
    Cumulative number of times a tab crashed with &quot;Aw, Snap!&quot;,
    recorded once per tab crash event.  For example, a user who crashed 3 tabs
    will record a count in the 1 bin, 2 bin, and 3 bin.  Thus each bin N is the
    number of sessions where users experienced N or more crash events.  The user
    may not have actually seen the sad tab page, as it might have been an
    inactive tab. Compare to Tabs.SadTab.CrashDisplayed.
  </summary>
</histogram>

<histogram name="Tabs.SadTab.CrashDisplayed">
  <owner>jamescook@chromium.org</owner>
  <summary>
    Cumulative number of times a tab crashed with &quot;Aw, Snap!&quot; and the
    user saw the page, recorded once per tab crash event.  For example, a user
    who crashed 3 tabs will record a count in the 1 bin, 2 bin, and 3 bin.  Thus
    each bin N is the number of sessions where users experienced N or more crash
    events.  Compare to Tabs.SadTab.CrashCreated.
  </summary>
</histogram>

<histogram name="Tabs.SadTab.KillCreated">
  <owner>jamescook@chromium.org</owner>
  <summary>
    Cumulative number of times a tab was killed with a &quot;He's dead,
    Jim!&quot; page, which is usually due to the renderer being killed, recorded
    once per tab kill event.  For example, a user who loses 3 tabs will record a
    count in the 1 bin, 2 bin, and 3 bin.  Thus each bin N is the number of
    sessions where users experienced N or more kill events.  The user may not
    have actually seen the sad tab page, as it might have been an inactive tab.
    Compare to Tabs.SadTab.KillDisplayed. This can happen due to out of memory,
    malformed IPC messages, or a SIGINT/TERM/KILL signal sent by a user.
  </summary>
</histogram>

<histogram name="Tabs.SadTab.KillCreated.OOM">
  <owner>oshima@chromium.org</owner>
  <summary>
    Cumulative number of times a tab was killed with a &quot;He's dead,
    Jim!&quot; page due to the kernel out-of-memory killer, recorded once per
    tab kill event.  For example, a user who loses 3 tabs will record a count in
    the 1 bin, 2 bin, and 3 bin.  Thus each bin N is the number of sessions
    where users experienced N or more kill events.  The user may not have
    actually seen the sad tab page, as it might have been an inactive tab.
    Compare to Tabs.SadTab.KillDisplayed.
  </summary>
</histogram>

<histogram name="Tabs.SadTab.KillDisplayed">
  <owner>jamescook@chromium.org</owner>
  <summary>
    Cumulative number of times a tab was killed with a &quot;He's dead,
    Jim!&quot; page and the user saw the page, recorded once per tab kill event.
    For example, a user who loses 3 tabs will record a count in the 1 bin, 2
    bin, and 3 bin. Thus each bin N is the number of sessions where users
    experienced N or more kill events.  Compare to Tabs.SadTab.CrashCreated.
  </summary>
</histogram>

<histogram name="Tabs.SadTab.KillDisplayed.OOM">
  <owner>oshima@chromium.org</owner>
  <summary>
    Cumulative number of times a tab was killed with a &quot;He's dead,
    Jim!&quot; page due to the kernel out-of-memory killer and the user saw the
    page, recorded once per tab kill event.  For example, a user who loses 3
    tabs will record a count in the 1 bin, 2 bin, and 3 bin. Thus each bin N is
    the number of sessions where users experienced N or more kill events.
    Compare to Tabs.SadTab.CrashCreated.
  </summary>
</histogram>

<histogram name="Tabs.SadTab.ReloadCount">
  <owner>jamescook@chromium.org</owner>
  <summary>
    The number of times a tab was reloaded because it was killed (usually by the
    kernel OOM killer) and the user clicked on it later, recorded once per
    reload event.  For example, a user who clicks on 3 discarded tabs will
    record a count in the 1 bin, 2 bin, and 3 bin.  Thus each bin N is the
    number of sessions where users experienced N or more reload events.  Compare
    to Tabs.Discard.DiscardCount.
  </summary>
</histogram>

<histogram name="Tabs.ScrubDistance" units="tabs">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The distance a user 3 finger scrubbed to change tabs. Always positive
    (ignores left / right).
  </summary>
</histogram>

<histogram name="Tabs.SpeculativeRestoreApplicability"
    enum="SpeculativeRestoreApplicability">
  <owner>lliabraa@chromium.org</owner>
  <owner>ppi@chromium.org</owner>
  <summary>
    Applicability of speculative tab restore, recorded every time a tab is
    switched. This allows to estimate the fraction of tab restores experienced
    on mobile that can be mitigated using speculative restore. Options higher in
    the enum take precedence over the lower ones (i.e. low-memory tablet will be
    accounted as tablet).
  </summary>
</histogram>

<histogram name="Tabs.SpeculativeRestorePredictionAccuracy.SideSwipe"
    enum="SpeculativeRestorePredictionAccuracy">
  <owner>lliabraa@chromium.org</owner>
  <owner>ppi@chromium.org</owner>
  <summary>
    Accuracy of the tab switch predictions made when the user begins the side
    swipe gesture.
  </summary>
</histogram>

<histogram name="Tabs.SpeculativeRestorePredictionAccuracy.TabSwitcher"
    enum="SpeculativeRestorePredictionAccuracy">
  <owner>lliabraa@chromium.org</owner>
  <owner>ppi@chromium.org</owner>
  <summary>
    Accuracy of the tab switch predictions made when the user enters the tab
    switcher.
  </summary>
</histogram>

<histogram name="Tabs.SpeculativeRestoreTargetStatus"
    enum="SpeculativeRestoreTabStatus">
  <owner>lliabraa@chromium.org</owner>
  <owner>ppi@chromium.org</owner>
  <summary>
    Status of a tab recorded when the tab is targeted with speculative restore.
  </summary>
</histogram>

<histogram name="Tabs.SpeculativeRestoreTimeAhead.SideSwipe" units="ms">
  <owner>lliabraa@chromium.org</owner>
  <owner>ppi@chromium.org</owner>
  <summary>
    Time between starting the speculative load and actual tab switch for correct
    speculative load predictions made when the user begins the side swipe
    gesture.
  </summary>
</histogram>

<histogram name="Tabs.SpeculativeRestoreTimeAhead.TabSwitcher" units="ms">
  <owner>lliabraa@chromium.org</owner>
  <owner>ppi@chromium.org</owner>
  <summary>
    Time between starting the speculative load and actual tab switch for correct
    speculative load predictions made when the user enters the tab switcher.
  </summary>
</histogram>

<histogram name="Tabs.StateTransfer.NumberOfOtherTabsActivatedBeforeMadeActive"
    units="tabs">
  <owner>kouhei@chromium.org</owner>
  <owner>tzik@chromium.org</owner>
  <summary>
    Recorded once per tab activation. The number of tabs that were activated
    while the tab was inactive.
  </summary>
  <details>
    This metric is to be removed after M46 hits stable. We don't expect this
    metric to change over release, so we will remove this once we have the
    numbers from stable.
  </details>
</histogram>

<histogram name="Tabs.StateTransfer.TabDistanceInactiveToActive" units="tabs">
  <owner>kouhei@chromium.org</owner>
  <owner>tzik@chromium.org</owner>
  <summary>
    Number of tabs between the previously active tab and the new active tab.
  </summary>
  <details>
    This metric is to be removed after M46 hits stable. We don't expect this
    metric to change over release, so we will remove this once we have the
    numbers from stable.
  </details>
</histogram>

<histogram name="Tabs.StateTransfer.Target" enum="TabStripState">
  <owner>kouhei@chromium.org</owner>
  <owner>tzik@chromium.org</owner>
  <summary>
    The state to which a tab transitioned. Recorded when a tab transitions from
    the state in the histogram name to a new state.
  </summary>
  <details>
    kouhei@ and tzik@ will remove some variation of these once M46 hits stable.
  </details>
</histogram>

<histogram name="Tabs.StateTransfer.Time" units="ms">
  <owner>kouhei@chromium.org</owner>
  <owner>tzik@chromium.org</owner>
  <summary>
    Tabs.StateTransfer.TimeA_B measures the time a tab was in state A before it
    transferred to state B.
  </summary>
  <details>
    kouhei@ and tzik@ will remove some variation of these once M46 hits stable.
  </details>
</histogram>

<histogram name="Tabs.SwitchFromCloseLatency" units="ms">
  <owner>simonb@chromium.org</owner>
  <summary>
    Time between the event that closes a tab and the start of rendering.
  </summary>
</histogram>

<histogram name="Tabs.SwitchFromExitLatency" units="ms">
  <owner>simonb@chromium.org</owner>
  <summary>
    Time between the event that exits an app and the start of rendering.
  </summary>
</histogram>

<histogram name="Tabs.SwitchFromNewLatency" units="ms">
  <owner>simonb@chromium.org</owner>
  <summary>
    Time between the event that creates a tab and the start of rendering.
  </summary>
</histogram>

<histogram name="Tabs.SwitchFromUserLatency" units="ms">
  <owner>simonb@chromium.org</owner>
  <summary>
    Time between the event that selects a tab and the start of rendering.
  </summary>
</histogram>

<histogram name="Tabs.TabCountActiveWindow" units="Tabs">
  <owner>bruthig@chromium.org</owner>
  <owner>tdanderson@chromium.org</owner>
  <summary>
    The number of tabs open in the active window when a load completes.
  </summary>
</histogram>

<histogram name="Tabs.TabCountPerLoad" units="Tabs">
  <owner>bruthig@chromium.org</owner>
  <owner>tdanderson@chromium.org</owner>
  <summary>
    The number of tabs open in all browsers (counting app-mode windows) when a
    load completes.
  </summary>
  <details>
    This is basically the average number of tabs over time.

    See also MPArch.RPHCountPerLoad for the number of processes used by these
    tabs.
  </details>
</histogram>

<histogram name="Tabs.TabCountPerWindow" units="Tabs">
  <owner>bruthig@chromium.org</owner>
  <owner>tdanderson@chromium.org</owner>
  <summary>
    The number of tabs open per window (counting app-mode windows) when a load
    completes.
  </summary>
  <details>
    This value will be recorded multiple times per load if more than one window
    is open.
  </details>
</histogram>

<histogram name="TaskScheduler.BlockShutdownTasksPostedDuringShutdown"
    units="tasks">
  <owner>fdoray@chromium.org</owner>
  <summary>
    Number of BLOCK_SHUTDOWN tasks that were posted to a base::TaskScheduler
    after its Shutdown() method was called but before it returned.
  </summary>
</histogram>

<histogram name="ThreadWatcher.ResponseTime" units="ms">
  <owner>rtenneti@chromium.org</owner>
  <summary>
    The time it takes indicated thread to respond with a pong message for a ping
    message from WatchDog thread.
  </summary>
</histogram>

<histogram name="ThreadWatcher.ResponsiveThreads">
  <owner>rtenneti@chromium.org</owner>
  <summary>
    This is the total number of watched threads that are responding when we got
    no response from the watched thread.
  </summary>
</histogram>

<histogram name="ThreadWatcher.Unresponsive" units="ms">
  <owner>rtenneti@chromium.org</owner>
  <summary>
    This is the total unresponsive time since last pong message for the
    indicated thread when we got no response from the watched thread.
  </summary>
</histogram>

<histogram name="ThreadWatcher.UnresponsiveThreads">
  <owner>rtenneti@chromium.org</owner>
  <summary>
    This is the total number of watched threads that are not responding when we
    got no response from the watched thread.
  </summary>
</histogram>

<histogram name="TileManager.ExceededMemoryBudget" enum="TileMemoryBudget">
  <owner>reveman@chromium.org</owner>
  <owner>vmpstr@chromium.org</owner>
  <summary>
    Measures whether the tile manager exceeded the hard GPU memory budget
    (OOMed). Recorded each time the tile manager assigns GPU memory to tiles.
  </summary>
</histogram>

<histogram name="TimeZone.TimeZoneRequest.Event" enum="TimeZoneRequestEvent">
  <summary>Events in TimeZoneRequest.</summary>
</histogram>

<histogram name="TimeZone.TimeZoneRequest.ResponseCode" enum="HttpResponseCode">
  <summary>Http response codes in TimeZoneRequest.</summary>
</histogram>

<histogram name="TimeZone.TimeZoneRequest.ResponseFailureTime" units="ms">
  <summary>
    The time elapsed between the sending of the first API request and the time
    the final (failed) response was recorded. Includes all retries.
  </summary>
</histogram>

<histogram name="TimeZone.TimeZoneRequest.ResponseSuccessTime" units="ms">
  <summary>
    The time elapsed between the sending of the first API request and the time
    the final (successfull) response was recorded. Includes all retries.
  </summary>
</histogram>

<histogram name="TimeZone.TimeZoneRequest.Result" enum="TimeZoneRequestResult">
  <summary>Result of TimeZoneRequest.</summary>
</histogram>

<histogram name="TimeZone.TimeZoneRequest.Retries">
  <summary>Number of retries until the final response was recorded.</summary>
</histogram>

<histogram name="Toolbar.ActionsModel.ComponentActionsCount">
  <owner>rdevlin.cronin@chromium.org</owner>
  <summary>
    The number of component action icons the Browser Actions Container knows
    about (visible or in the overflow bucket). Does not count icons that have
    been permanently hidden by the user. Measured once per startup per
    (non-incognito) profile.
  </summary>
</histogram>

<histogram name="Toolbar.ActionsModel.OverallActionsCount">
  <owner>rdevlin.cronin@chromium.org</owner>
  <summary>
    The total number of action icons the Browser Actions Container knows about
    (visible or in the overflow bucket). Does not count icons that have been
    permanently hidden by the user. Measured once per startup per
    (non-incognito) profile.
  </summary>
</histogram>

<histogram name="Toolbar.ActionsModel.ToolbarActionsVisible">
  <owner>rdevlin.cronin@chromium.org</owner>
  <summary>
    The number of visible toolbar icons in the Browser Actions Container
    (visible as in number of icons not in the overflow bucket). 0 means all
    icons are in the overflow bucket. MAX_INT means the toolbar is always
    showing all icons. Measured once per startup per (non-incognito) profile but
    only for those profiles that have one or more browser actions showing in the
    toolbar.
  </summary>
</histogram>

<histogram name="Toolbar.AppMenuTimeToAction" units="ms">
  <owner>rdevlin.cronin@chromium.org</owner>
  <summary>
    The number of millseconds between when the user opens the app menu and when
    the app menu is closed. Logged once per app menu run when the menu closes.
    Not recorded for menu runs that are initiated by a drag-and-drop sequence.
    Note that the code paths for Views-platforms vs Mac are different, so cross-
    platform comparison may not always be reasonable.
  </summary>
</histogram>

<histogram name="TopSites.NumberOfApplyBlacklist">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>The number of times TopSitesImpl::ApplyBlacklist is called.</summary>
</histogram>

<histogram name="TopSites.NumberOfBlacklistedItems">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The number of items in the user Most Visited blacklist every time
    TopSitesImpl::ApplyBlacklist is called.
  </summary>
</histogram>

<histogram name="Touchpad.Device" enum="TouchpadDeviceState">
  <owner>pthammaiah@google.com</owner>
  <summary>Tracks touchpad device state.</summary>
</histogram>

<histogram name="Touchpad.Metrics" enum="TouchpadProblemType">
  <owner>pthammaiah@google.com</owner>
  <summary>
    Tracks unusual CrOS touchpad operational states (e.g. running into the noisy
    ground issue). This is sampled at every touchpad event.
  </summary>
</histogram>

<histogram name="Touchpad.NaturalScroll.Changed" enum="BooleanEnabled">
  <owner>pthammaiah@google.com</owner>
  <summary>Tracks touchpad natural scroll setting changes by the user.</summary>
</histogram>

<histogram name="Touchpad.NaturalScroll.Started" enum="BooleanEnabled">
  <owner>pthammaiah@google.com</owner>
  <summary>Tracks touchpad natural scroll setting on startup.</summary>
</histogram>

<histogram name="Touchpad.PointerSensitivity.Changed" enum="PointerSensitivity">
  <owner>pthammaiah@google.com</owner>
  <summary>
    Tracks touchpad sensitivity setting changes by the user. This replaces the
    old Touchpad.Sensitivity.Changed metric.
  </summary>
</histogram>

<histogram name="Touchpad.PointerSensitivity.Started" enum="PointerSensitivity">
  <owner>pthammaiah@google.com</owner>
  <summary>
    Tracks touchpad sensitivity setting on startup. This replaces the old
    Touchpad.Sensitivity.Started metric.
  </summary>
</histogram>

<histogram name="Touchpad.Sensitivity.Changed" enum="PointerSensitivity">
  <obsolete>
    Deprecated as of 6/2013, replaced by Touchpad.PointerSensitivity.Changed.
  </obsolete>
  <owner>pthammaiah@google.com</owner>
  <summary>Tracks touchpad sensitivity setting changes by the user.</summary>
</histogram>

<histogram name="Touchpad.Sensitivity.Started" enum="PointerSensitivity">
  <obsolete>
    Deprecated as of 6/2013, replaced by Touchpad.PointerSensitivity.Started.
  </obsolete>
  <owner>pthammaiah@google.com</owner>
  <summary>Tracks touchpad sensitivity setting on startup.</summary>
</histogram>

<histogram name="Touchpad.TapDragging.Changed" enum="BooleanEnabled">
  <owner>pthammaiah@google.com</owner>
  <summary>Tracks touchpad TapDragging setting changes by the user.</summary>
</histogram>

<histogram name="Touchpad.TapDragging.Started" enum="BooleanEnabled">
  <owner>pthammaiah@google.com</owner>
  <summary>Tracks touchpad TapDragging setting on startup.</summary>
</histogram>

<histogram name="Touchpad.TapToClick.Changed" enum="BooleanEnabled">
  <owner>pthammaiah@google.com</owner>
  <summary>Tracks touchpad TapToClick setting changes by the user.</summary>
</histogram>

<histogram name="Touchpad.TapToClick.Started" enum="BooleanEnabled">
  <owner>pthammaiah@google.com</owner>
  <summary>Tracks touchpad TapToClick setting on startup.</summary>
</histogram>

<histogram name="Touchpad.ThreeFingerSwipe.Changed" enum="BooleanEnabled">
  <obsolete>
    Deprecated as of 7/2013.
  </obsolete>
  <owner>pthammaiah@google.com</owner>
</histogram>

<histogram name="Touchpad.ThreeFingerSwipe.Started" enum="BooleanEnabled">
  <obsolete>
    Deprecated as of 7/2013.
  </obsolete>
  <owner>pthammaiah@google.com</owner>
</histogram>

<histogram name="Touchscreen.TouchEventsEnabled" enum="TouchEventsState">
  <owner>rbyers@chromium.org</owner>
  <summary>
    Tracks whether touch events are enabled. This is based on the touch events
    enabled flag and the presence of a touchscreen.
  </summary>
  <details>
    NOTE: This metric was incorrectly recorded on ChromeOS for versions 42
    through 45, see http://crbug.com/499476 for more details.
  </details>
</histogram>

<histogram name="TPM.EarlyResetDuringCommand" units="count">
  <owner>semenzato@google.com</owner>
  <summary>
    Reported at boot if the previous boot session was interrupted in the middle
    of a TPM command during the first 30 seconds of uptime.
  </summary>
</histogram>

<histogram name="Tracing.Background.FinalizingTraceSizeInKB" units="KB">
  <owner>oysteine@chromium.org</owner>
  <summary>
    The size, in kilobytes, of a finalized trace ready to be uploaded.
  </summary>
</histogram>

<histogram name="Tracing.Background.ScenarioState"
    enum="BackgroundTracingState">
  <owner>oysteine@chromium.org</owner>
  <summary>
    Records state of the Background Tracing system, from when scenarios are
    attempted to be activated until they're completed (successfully or failed)
  </summary>
</histogram>

<histogram name="TrafficStatsAmortizer.AmortizationDelay" units="ms">
  <owner>sclittle@chromium.org</owner>
  <owner>bengr@chromium.org</owner>
  <summary>
    The amount of time spent waiting to perform an amortization run. This is
    logged at the end of each amortization run, before passing any DataUse
    objects to their respective callbacks.
  </summary>
</histogram>

<histogram name="TrafficStatsAmortizer.BufferSizeOnFlush" units="count">
  <owner>sclittle@chromium.org</owner>
  <owner>bengr@chromium.org</owner>
  <summary>
    The number of DataUse objects processed in an amortization run.
  </summary>
</histogram>

<histogram name="TrafficStatsAmortizer.ConcurrentTabs" units="count">
  <owner>sclittle@chromium.org</owner>
  <owner>bengr@chromium.org</owner>
  <summary>
    The number of unique tabs seen across all DataUse objects buffered for a
    single amortization run by the TrafficStatsAmortizer. This is recorded even
    if TrafficStats byte counts are unavailable, but not recorded if no DataUse
    objects have been buffered.
  </summary>
</histogram>

<histogram name="TrafficStatsAmortizer.PostAmortizationRunDataUseBytes"
    units="bytes">
  <owner>sclittle@chromium.org</owner>
  <owner>bengr@chromium.org</owner>
  <summary>
    The total bytes after performing amortization across all DataUse objects
    buffered for a single amortization run by the TrafficStatsAmortizer. This is
    recorded even if TrafficStats byte counts are unavailable, but not recorded
    if no DataUse objects have been buffered.
  </summary>
</histogram>

<histogram name="TrafficStatsAmortizer.PreAmortizationRunDataUseBytes"
    units="bytes">
  <owner>sclittle@chromium.org</owner>
  <owner>bengr@chromium.org</owner>
  <summary>
    The total bytes before performing amortization across all DataUse objects
    buffered for a single amortization run by the TrafficStatsAmortizer. This is
    recorded even if TrafficStats byte counts are unavailable, but not recorded
    if no DataUse objects have been buffered.
  </summary>
</histogram>

<histogram name="Translate.AlwaysTranslateLang">
  <owner>kenjibaheux@google.com</owner>
  <summary>
    The number of times the always translate option was selected in the
    translate infobar.
  </summary>
</histogram>

<histogram name="Translate.BubbleUiEvent" enum="TranslateBubbleUiEvent">
  <owner>groby@google.com</owner>
  <summary>Tracks UI events related to the translate bubble.</summary>
</histogram>

<histogram name="Translate.CaptureText" units="ms">
  <owner>kenjibaheux@google.com</owner>
  <summary>
    The time spent capturing plain text from the DOM. This is reported by
    ChromeRenderViewObserver when a page is loaded completely.
  </summary>
</histogram>

<histogram name="Translate.CLD2.LanguageAccuracy" units="%">
  <owner>rkaplow@google.com</owner>
  <summary>
    Accuracy of the language detected by CLD2. Only recorded if the detection
    returned a &quot;known&quot; result.
  </summary>
</histogram>

<histogram name="Translate.CLD2.LanguageDetected" enum="CLD2LanguageCode">
  <owner>rkaplow@google.com</owner>
  <summary>Language of page detected by CLD2.</summary>
</histogram>

<histogram name="Translate.ContentLanguage" enum="TranslateLanguage">
  <owner>kenjibaheux@google.com</owner>
  <summary>
    A page may provide a Content-Language HTTP header or a META tag. For each
    page load, measures whether the Content-Language header exists and is valid.
  </summary>
</histogram>

<histogram name="Translate.DeclineTranslate">
  <owner>kenjibaheux@google.com</owner>
  <summary>
    The number of times the &quot;Nope&quot; (don't translate) or the infobar's
    X button was clicked in the translate infobar.
  </summary>
</histogram>

<histogram name="Translate.DeclineTranslateCloseInfobar">
  <owner>kenjibaheux@google.com</owner>
  <summary>
    The number of times the translate infobar was closed by clicking the X
    button without the user translating the page.
  </summary>
</histogram>

<histogram name="Translate.DeclineTranslateDismissUI">
  <owner>kenjibaheux@google.com</owner>
  <summary>
    The number of times the translate UI was closed without translating in the
    way that the user doesn't deny translating explicityly, like pressing 'Nope'
    button. This is counted on both the infobar and the bubble UI. We are
    comparing this on infobar to that on bubble by A/B testing and expecting
    that the user will click 'Nope' button on bubble less times than infobar. We
    won't delete this histogram after the experiment.
  </summary>
</histogram>

<histogram name="Translate.HtmlLang" enum="TranslateLanguage">
  <owner>kenjibaheux@google.com</owner>
  <summary>
    A page may provide a lang attribute in html tag. For each page load,
    measures whether the lang attribute exists and is valid.
  </summary>
</histogram>

<histogram name="Translate.InitiationStatus" enum="TranslateInitiationStatus">
  <obsolete>
    Deprecated as of 11/2013, and replaced by Translate.InitiationStatus.v2.
  </obsolete>
  <owner>kenjibaheux@google.com</owner>
  <summary>
    The reason why Chrome decided to perform the next action (e.g., to show
    infobar, to translate a page without any prompting, and so on) when Chrome
    Translate is ready to translate a page.
  </summary>
</histogram>

<histogram name="Translate.InitiationStatus.v2"
    enum="TranslateInitiationStatus">
  <owner>kenjibaheux@google.com</owner>
  <summary>
    The reason why Chrome decided to perform the next action (e.g., to show
    infobar, to translate a page without any prompting, and so on) when Chrome
    Translate is ready to translate a page.
  </summary>
</histogram>

<histogram name="Translate.LanguageDetectionTiming"
    enum="TranslateLanguageDetectionTiming">
  <owner>andrewhayden@chromium.org</owner>
  <summary>
    For each page load, records whether language detection occurs on time or
    gets deferred. If deferred language detection later completes, this is also
    recorded. This allows measuring the UX impact of using a non-static CLD data
    source.
  </summary>
</histogram>

<histogram name="Translate.LanguageVerification"
    enum="TranslateLanguageVerification">
  <owner>kenjibaheux@google.com</owner>
  <summary>
    For each page load, measures whether the provided Content-Language header
    matches the language determined by CLD.  Beyond directly matching or
    mismatching the Content-Language header, CLD can complement the
    Content-Language.  For example, suppose the Content-Language header
    specifies 'zh' (general Chinese), a language code that the Translate server
    does not support.  In this case, CLD can detect a subcode like '-TW' or
    '-CN', resulting in language codes 'zh-TW' and 'zh-CN', which the Translate
    server supports.  This is referred to as &quot;complementing a language
    subcode&quot;.
  </summary>
</histogram>

<histogram name="Translate.LocalesOnDisabledByPrefs" enum="LanguageCode">
  <owner>kenjibaheux@google.com</owner>
  <summary>
    Logs the user locale when the Translate feature is disabled by the user.
    This is recorded each time a webpage is loaded and prefs for translation is
    checked. This allows us to investigate the correlation between the user
    locale and the usage rates of the Translate.
  </summary>
</histogram>

<histogram name="Translate.ModifyOriginalLang">
  <owner>kenjibaheux@google.com</owner>
  <summary>
    The number of times the original language in the translate infobar has been
    changed.
  </summary>
</histogram>

<histogram name="Translate.ModifyTargetLang">
  <owner>kenjibaheux@google.com</owner>
  <summary>
    The number of times the target language in the translate infobar has been
    changed.
  </summary>
</histogram>

<histogram name="Translate.NeverTranslateLang">
  <owner>kenjibaheux@google.com</owner>
  <summary>
    The number of times the never translate option was selected in the translate
    infobar.
  </summary>
</histogram>

<histogram name="Translate.NeverTranslateSite">
  <owner>kenjibaheux@google.com</owner>
  <summary>
    The number of times the never translate site was selected in the translate
    infobar.
  </summary>
</histogram>

<histogram name="Translate.PageScheme" enum="TranslateScheme">
  <owner>kenjibaheux@google.com</owner>
  <summary>Counts translation target page schemes.</summary>
</histogram>

<histogram name="Translate.ReportLanguageDetectionError">
  <owner>kenjibaheux@google.com</owner>
  <summary>
    The number of times the &quot;report this error&quot; of options menu is
    selected in the translate infobar.
  </summary>
</histogram>

<histogram name="Translate.RevertTranslation">
  <owner>kenjibaheux@google.com</owner>
  <summary>
    The number of times the show original button was clicked in the translate
    infobar.
  </summary>
</histogram>

<histogram name="Translate.ServerReportedUnsupportedLanguage">
  <obsolete>
    Deprecated 5/2013 by Translate.UndisplayableLanguage
  </obsolete>
  <owner>kenjibaheux@google.com</owner>
  <summary>
    The number of times the detected language is not supported by Translate
    Element.
  </summary>
</histogram>

<histogram name="Translate.ShowBeforeTranslateInfobar">
  <obsolete>
    Deprecated 7/2010. No longer tracked.
  </obsolete>
  <owner>kenjibaheux@google.com</owner>
  <summary>
    The number of times an infobar proposing to translate a page has been shown.
  </summary>
</histogram>

<histogram name="Translate.ShowErrorInfobar" enum="TranslateError">
  <owner>kenjibaheux@google.com</owner>
  <summary>
    Chrome Translate shows an error infobar when an error happens on translation
    and the infobar message depends on what kind of error happens. This metric
    counts how often each error message is shown.
  </summary>
</histogram>

<histogram name="Translate.ShowErrorUI" enum="TranslateError">
  <owner>kenjibaheux@google.com</owner>
  <summary>
    Chrome Translate shows an error UI (infobar or bubble) when an error happens
    on translation and the UI message depends on what kind of error happens.
    This metric counts how often each error message is shown.
  </summary>
</histogram>

<histogram name="Translate.SimilarLanguageMatch" enum="BooleanMatched">
  <owner>kenjibaheux@google.com</owner>
  <summary>
    This metrics is logged whenever a page is loaded. The logged value is
    &quot;Mathced&quot; when the CLD-detected language differs from the page
    language code , and the two languages are such similar languages. In that
    case, Chrome ignore the CLD-determined language and instead uses the page
    language code. The page language code is decided by Content-Language and
    HTML lang attribute.
  </summary>
</histogram>

<histogram name="Translate.TimeToBeReady" units="ms">
  <owner>kenjibaheux@google.com</owner>
  <summary>
    The time from injecting scripts for Chrome Translate to being ready to
    perform translation.
  </summary>
</histogram>

<histogram name="Translate.TimeToLoad" units="ms">
  <owner>kenjibaheux@google.com</owner>
  <summary>
    The time from injecting scripts for Chrome Translate to the finishing loads
    of all depending libraries.
  </summary>
</histogram>

<histogram name="Translate.TimeToTranslate" units="ms">
  <owner>kenjibaheux@google.com</owner>
  <summary>The time from starting translation to the completion.</summary>
</histogram>

<histogram name="Translate.Translate">
  <owner>kenjibaheux@google.com</owner>
  <summary>
    The number of times the translate button was clicked in the translate
    infobar.
  </summary>
</histogram>

<histogram name="Translate.UndisplayableLanguage" enum="LanguageCode">
  <owner>kenjibaheux@google.com</owner>
  <summary>
    Logs an undisplayable language included in the language list sent by the
    Translate server. The Translate server sends the list each time the user
    runs Chrome. This metrics tells us that there is a language which UI should
    support but doesn't.
  </summary>
</histogram>

<histogram name="Translate.UnsupportedLanguageAtInitiation" enum="LanguageCode">
  <owner>kenjibaheux@google.com</owner>
  <summary>
    Logs an unsupported source language detected during initiation of the
    Translate feature.  This is reported when the language detector successfully
    detects the language of the webpage, but the language is not supported by
    the translation server because it is too minor.  This metric allows us to
    assess how important the unsupported language is for Google translate.
  </summary>
</histogram>

<histogram name="Translate.UserActionDuration" units="ms">
  <owner>kenjibaheux@google.com</owner>
  <summary>
    The time from a page content language being determined to user requesting
    Chrome Translate.
  </summary>
</histogram>

<histogram name="TryScroll.SlowScroll" enum="ScrollThread">
  <obsolete>
    Deprecated 02/2016 in Issue 1741103002, and replaced by
    Renderer4.CompositorWheelScrollUpdateThread and
    Renderer4.CompositorTouchScrollUpdateThread.
  </obsolete>
  <owner>tdresser@chromium.org</owner>
  <summary>Whether a scroll is executed on main thread.</summary>
</histogram>

<histogram name="UMA.ActualLogUploadInterval" units="minutes">
  <owner>asvitkine@chromium.org</owner>
  <summary>
    The actual interval between log upload start and previous log upload
    finished within the same process.
  </summary>
</histogram>

<histogram name="UMA.CleanExitBeaconConsistency" enum="UmaCleanExitConsistency">
  <owner>siggi@chromium.org</owner>
  <summary>
    Reports the combined state of distinct clean exit beacons stored in Local
    State and the Windows registry. They are normally expected to be identical.
  </summary>
</histogram>

<histogram name="UMA.ClientIdBackupRecoveredWithAge" units="hours">
  <owner>gab@chromium.org</owner>
  <summary>
    Recorded when we are somehow missing the client ID stored in Local State yet
    are able to recover it from a backup location along with the backed up
    installation date. This report carries the age in hours of the recovered
    client id.
  </summary>
</histogram>

<histogram name="UMA.ClientIdMigrated" enum="BooleanMigrated">
  <obsolete>
    Removed in M45.
  </obsolete>
  <owner>asvitkine@chromium.org</owner>
  <summary>
    Recorded when the one-time UMA client id reset was performed (and the client
    id of this user was migrated).
  </summary>
</histogram>

<histogram name="UMA.CollectExternalEventsTime" units="ms">
  <obsolete>
    Deprecated as of August 2015. The histogram showed no unexpected slowness,
    and a profiler is a better tool for identifying any future issues.
  </obsolete>
  <owner>asvitkine@chromium.org</owner>
  <summary>
    The time to run the external metrics collection task (Chrome OS).
  </summary>
</histogram>

<histogram name="UMA.ComputeCurrentSigninStatus"
    enum="ComputeCurrentSigninStatus">
  <owner>asvitkine@chromium.org</owner>
  <owner>yiyaoliu@chromium.org</owner>
  <summary>
    Records attempts to compute the current the signin status and error
    encountered when computing.
  </summary>
</histogram>

<histogram name="UMA.CreatePersistentHistogram.Result"
    enum="CreatePersistentHistogramResult">
  <owner>asvitkine@chromium.org</owner>
  <owner>bcwhite@chromium.org</owner>
  <summary>
    Records attempts to create histograms in presistent space and any errors
    encountered when doing so.
  </summary>
</histogram>

<histogram name="UMA.Debug.EnableCrashUpload.DeferredStartUptime" units="ms">
  <owner>asvitkine@chromium.org</owner>
  <summary>
    Measures how much time since start up it took for onDeferredStartup() to be
    called, which schedules enablePotentialCrashUploading() to be executed on an
    async task. Only logged on Android.
  </summary>
</histogram>

<histogram name="UMA.Debug.EnableCrashUpload.PostDeferredStartUptime"
    units="ms">
  <owner>asvitkine@chromium.org</owner>
  <summary>
    Measures how much time since start up it took before ChromeActivity's
    postDeferredStartupIfNeeded() was called. Only logged on Android.
  </summary>
</histogram>

<histogram name="UMA.Debug.EnableCrashUpload.Uptime" units="ms">
  <obsolete>
    Replaced by UMA.Debug.EnableCrashUpload.Uptime2
  </obsolete>
  <owner>asvitkine@chromium.org</owner>
  <summary>
    Measures how much time since start up it took before crash reporting was
    enabled via enablePotentialCrashUploading() as part of deferred start up.
    Only logged on Android.
  </summary>
</histogram>

<histogram name="UMA.Debug.EnableCrashUpload.Uptime2" units="ms">
  <owner>asvitkine@chromium.org</owner>
  <summary>
    Measures how much time since start up it took before crash reporting was
    enabled via enablePotentialCrashUploading() as part of deferred start up.
    Only logged on Android.
  </summary>
</histogram>

<histogram name="UMA.Discarded Log Events">
  <owner>asvitkine@chromium.org</owner>
  <summary>
    The number of events discarded at log transmission time because the event
    count was already too large.
  </summary>
</histogram>

<histogram name="UMA.EnrollmentStatus" enum="EnrollmentStatus">
  <owner>asvitkine@chromium.org</owner>
  <owner>kaznacheev@chromium.org</owner>
  <summary>
    Logs the device enrollment status for Chrome OS device. Logged with every
    UMA upload.
  </summary>
</histogram>

<histogram name="UMA.EntropySourceType" enum="UmaEntropySourceType">
  <owner>asvitkine@chromium.org</owner>
  <summary>
    Logs the entropy source type that was used for field trial randomization.
    Logged once at each start up.
  </summary>
</histogram>

<histogram name="UMA.FieldTrialsEnabledBenchmarking" enum="BooleanUsage">
  <obsolete>
    Deprecated 2012. No longer tracked.
  </obsolete>
  <owner>asvitkine@chromium.org</owner>
  <summary>
    Log whether the --enable-benchmarking flag was set, which causes field
    trials to only use the default group.
  </summary>
</histogram>

<histogram name="UMA.FileMetricsProvider.AccessResult"
    enum="FileMetricsProviderAccessResult">
  <owner>asvitkine@chromium.org</owner>
  <owner>bcwhite@chromium.org</owner>
  <summary>
    Records attempts to access a file for the purpose of extracting metrics.
  </summary>
</histogram>

<histogram name="UMA.FileMetricsProvider.DeletedFiles">
  <owner>asvitkine@chromium.org</owner>
  <owner>bcwhite@chromium.org</owner>
  <summary>
    The number of old metrics files for which a delete was attempted. This is
    logged once with each upload operation. Values greater than 1 indicate that
    the files are not deletable by the browser and must be cleaned up by
    whatever process is creating them.
  </summary>
</histogram>

<histogram name="UMA.FileMetricsProvider.DirectoryFiles">
  <owner>asvitkine@chromium.org</owner>
  <owner>bcwhite@chromium.org</owner>
  <summary>
    The number of metrics files in a directory that need to be uploaded. This is
    logged once with each upload operation.
  </summary>
</histogram>

<histogram name="UMA.FileMetricsProvider.InitialAccessResult"
    enum="FileMetricsProviderAccessResult">
  <owner>asvitkine@chromium.org</owner>
  <owner>bcwhite@chromium.org</owner>
  <summary>
    Records attempts to access a file for the purpose of extracting initial
    stability metrics.
  </summary>
</histogram>

<histogram name="UMA.FileMetricsProvider.InitialCheckTime.File" units="ms">
  <owner>asvitkine@chromium.org</owner>
  <owner>bcwhite@chromium.org</owner>
  <summary>
    Records how much wall time was spent checking and mapping an initial metrics
    file on disk.
  </summary>
</histogram>

<histogram name="UMA.FileMetricsProvider.InitialCheckTime.Total" units="ms">
  <owner>asvitkine@chromium.org</owner>
  <owner>bcwhite@chromium.org</owner>
  <summary>
    Records how much wall time was spent checking and mapping initial metrics
    from all files on disk.
  </summary>
</histogram>

<histogram name="UMA.FileMetricsProvider.InitialSnapshotTime.File" units="ms">
  <owner>asvitkine@chromium.org</owner>
  <owner>bcwhite@chromium.org</owner>
  <summary>
    Records how much wall time was spent collecting initial stability metrics
    from a file on disk.
  </summary>
</histogram>

<histogram name="UMA.FileMetricsProvider.InitialSnapshotTime.Total" units="ms">
  <owner>asvitkine@chromium.org</owner>
  <owner>bcwhite@chromium.org</owner>
  <summary>
    Records how much wall time was spent collecting initial stability metrics
    from all files on disk.
  </summary>
</histogram>

<histogram name="UMA.FileMetricsProvider.SnapshotTime.File" units="ms">
  <owner>asvitkine@chromium.org</owner>
  <owner>bcwhite@chromium.org</owner>
  <summary>
    Records how much wall time was spent collecting metrics from a file on disk.
  </summary>
</histogram>

<histogram name="UMA.FileMetricsProvider.SnapshotTime.Total" units="ms">
  <owner>asvitkine@chromium.org</owner>
  <owner>bcwhite@chromium.org</owner>
  <summary>
    Records how much wall time was spent collecting metrics from all files on
    disk.
  </summary>
</histogram>

<histogram name="UMA.GeneratedLowEntropySource" enum="Boolean">
  <obsolete>
    Deprecated as of August 2015. No longer tracked.
  </obsolete>
  <owner>asvitkine@chromium.org</owner>
  <summary>
    For each attempt to generate the low entropy source, log whether or not the
    load required generating a new low entropy source.
  </summary>
</histogram>

<histogram name="UMA.Histograms.Activity" enum="HistogramActivityReport">
  <owner>asvitkine@chromium.org</owner>
  <owner>bcwhite@chromium.org</owner>
  <summary>
    Type and flags of every histogram created plus other activities. Counts are
    not mutually-exclusive except for the different types.
  </summary>
</histogram>

<histogram name="UMA.InitSequence" enum="UmaInitSequence">
  <owner>asvitkine@chromium.org</owner>
  <summary>
    Logged during MetricsService initialization whether the init task or the
    initial log timer completed first. The expectation is the vast majority of
    the time, the init task should complete first. If metrics show otherwise,
    then it may indicate there's a bug in the MetricsService init sequence and
    that it should be investigated.
  </summary>
</histogram>

<histogram name="UMA.Large Accumulated Log Not Persisted" units="bytes">
  <owner>asvitkine@chromium.org</owner>
  <summary>
    Number of bytes in an excessively large log that was discarded at shutdown
    instead of being saved to disk to retry during next chrome run.
  </summary>
</histogram>

<histogram name="UMA.Large Rejected Log was Discarded" units="bytes">
  <owner>asvitkine@chromium.org</owner>
  <summary>
    Number of bytes in a log was was rejected by server, and then discarded.
  </summary>
</histogram>

<histogram name="UMA.LoadLogsTime" units="ms">
  <obsolete>
    Deprecated as of August 2015. The histograms showed no unexpected slowness,
    and a profiler is a better tool for identifying any future issues.
  </obsolete>
  <owner>asvitkine@chromium.org</owner>
  <summary>
    The time spent to load (de-serialize) unsent logs from local state, recorded
    during the MetricsService startup sequence.
  </summary>
</histogram>

<histogram name="UMA.LogLoadComplete called">
  <obsolete>
    No longer tracked.
  </obsolete>
  <owner>asvitkine@chromium.org</owner>
  <summary>
    Simple counter of the number of times LogLoadComplete was called (bug
    demonstration, as we're called more often than once per page load :-/ )
  </summary>
</histogram>

<histogram name="UMA.LogSize.OnSuccess" units="KB">
  <owner>asvitkine@chromium.org</owner>
  <summary>
    Size in kilobytes (after compression) of an uploaded UMA log. Recorded after
    a successful UMA upload.
  </summary>
</histogram>

<histogram name="UMA.LogUpload.Canceled.CellularConstraint"
    enum="BooleanCanceled">
  <owner>asvitkine@chromium.org</owner>
  <owner>gayane@chromium.org</owner>
  <summary>
    Logs whether a log was not uploaded due to cellular log throttling logic.
    Android only.
  </summary>
</histogram>

<histogram name="UMA.LogUpload.ConnetionType" enum="NetworkConnectionType">
  <obsolete>
    Used for analyzing UMA log uploads on cellular connection, but necessary
    after the analysis is finished.
  </obsolete>
  <owner>asvitkine@chromium.org</owner>
  <owner>gayane@chromium.org</owner>
  <summary>
    The network connection type for each successful metrics log upload.
  </summary>
</histogram>

<histogram name="UMA.LowEntropySourceValue">
  <owner>asvitkine@chromium.org</owner>
  <summary>
    Distribution of the low entropy source value used for field trial
    randomization, recorded on startup.
  </summary>
</histogram>

<histogram name="UMA.MachineIdState" enum="UmaMachineIdState">
  <owner>jwd@chromium.org</owner>
  <summary>
    Tracks if the machine ID is generated successfully and if it changes from
    one run to the next. The machine ID is a 24-bit hash of machine
    characteristics. It is expected to change if an install of Chrome is copied
    to multiple machines. This check happens once per browser startup.
  </summary>
</histogram>

<histogram name="UMA.MetricsIDsReset" enum="BooleanHit">
  <owner>jwd@chromium.org</owner>
  <summary>
    A count of the number of times the metrics ids (client id and low entropy
    source) have been reset due to a cloned install being detected.
  </summary>
</histogram>

<histogram name="UMA.MetricsReporting.Toggle" enum="MetricsReportingChange">
  <owner>asvitkine@chromium.org</owner>
  <summary>
    Logged when user successfully enables/disables MetricsReporting or when an
    error occurs.
  </summary>
</histogram>

<histogram name="UMA.Perf.GetData" enum="GetPerfDataOutcome">
  <owner>asvitkine@chromium.org</owner>
  <summary>
    A count of successes and various failure modes related to collecting and
    processing performance data obtained through &quot;perf&quot; on Chrome OS.
  </summary>
</histogram>

<histogram name="UMA.PersistentAllocator.BrowserMetrics.Allocs" units="bytes">
  <owner>bcwhite@chromium.org</owner>
  <owner>asvitkine@chromium.org</owner>
  <summary>
    Size, before padding, of objects allocated from persistent memory. This is
    updated with every allocation.
  </summary>
</histogram>

<histogram name="UMA.PersistentAllocator.BrowserMetrics.UsedPct" units="%">
  <owner>bcwhite@chromium.org</owner>
  <owner>asvitkine@chromium.org</owner>
  <summary>
    Percentage of persistent memory segment that has been allocated. This is
    updated only once per reporting cycle.
  </summary>
</histogram>

<histogram name="UMA.PersistentAllocator.RendererMetrics.Allocs" units="bytes">
  <owner>bcwhite@chromium.org</owner>
  <owner>asvitkine@chromium.org</owner>
  <summary>
    Size, before padding, of objects allocated from persistent memory. This is
    updated with every allocation.
  </summary>
</histogram>

<histogram name="UMA.PersistentAllocator.RendererMetrics.UsedPct" units="%">
  <owner>bcwhite@chromium.org</owner>
  <owner>asvitkine@chromium.org</owner>
  <summary>
    Percentage of persistent memory segment that has been allocated. This is
    updated only once per reporting cycle.
  </summary>
</histogram>

<histogram name="UMA.PersistentAllocator.SetupMetrics.Allocs" units="bytes">
  <owner>bcwhite@chromium.org</owner>
  <owner>asvitkine@chromium.org</owner>
  <summary>
    Size, before padding, of objects allocated from persistent memory. This is
    updated with every allocation.
  </summary>
</histogram>

<histogram name="UMA.PersistentAllocator.SetupMetrics.UsedPct" units="%">
  <owner>bcwhite@chromium.org</owner>
  <owner>asvitkine@chromium.org</owner>
  <summary>
    Percentage of persistent memory segment that has been allocated. This is
    updated only once per reporting cycle.
  </summary>
</histogram>

<histogram name="UMA.ProfilesCount.AfterErase">
  <owner>asvitkine@chromium.org</owner>
  <owner>yiyaoliu@chromium.org</owner>
  <summary>
    Record the number of loaded profiles when a profile is erased from the
    profiles map kept by profile manager.
  </summary>
</histogram>

<histogram name="UMA.ProfileSignInStatus" enum="ProfileSigninStatus">
  <owner>asvitkine@chromium.org</owner>
  <owner>yiyaoliu@chromium.org</owner>
  <summary>
    An enum representing the signin status of all opened profiles during one UMA
    session.
  </summary>
</histogram>

<histogram name="UMA.ProtoCompressionRatio" units="%">
  <owner>asvitkine@chromium.org</owner>
  <summary>
    Compression ratio of the serialized protobuf that will be uploaded to the
    UMA server. This serialized protobuf is compressed using gzip.
  </summary>
</histogram>

<histogram name="UMA.ProtoGzipped" enum="Boolean">
  <obsolete>
    Deprecated as of Sep, 2013. Gzipping protobufs is now the default.
  </obsolete>
  <owner>asvitkine@chromium.org</owner>
  <summary>Was the UMA protobuf uploaded earlier compressed or not.</summary>
</histogram>

<histogram name="UMA.ProtoGzippedKBSaved" units="KB">
  <obsolete>
    Deprecated as of August 2015. See UMA.ProtoCompressionRatio instead.
  </obsolete>
  <owner>asvitkine@chromium.org</owner>
  <summary>
    Kilobytes saved from gzipping the protobufs before uploading them.
  </summary>
</histogram>

<histogram name="UMA.StoreLogsTime" units="ms">
  <obsolete>
    Deprecated as of August 2015. The histograms showed no unexpected slowness,
    and a profiler is a better tool for identifying any future issues.
  </obsolete>
  <owner>asvitkine@chromium.org</owner>
  <summary>
    The time spent to store unsent logs to local state, which is done
    periodically and also during start up if there was an initial stability log.
  </summary>
</histogram>

<histogram name="UMA.SubprocessMetricsProvider.SubprocessCount"
    units="subprocesses">
  <owner>asvitkine@chromium.org</owner>
  <owner>bcwhite@chromium.org</owner>
  <summary>
    The number of subprocesses from which persistent metrics were collected,
    logged once with every reporting cycle.
  </summary>
</histogram>

<histogram name="UMA.SyntheticTrials.Count">
  <obsolete>
    Deprecated as of August 2015.
  </obsolete>
  <owner>asvitkine@chromium.org</owner>
  <summary>
    The number of synthetic field trials added to the UMA log when the system
    profile is recorded. Since this is done prior to capturing the histograms
    from the current process, this will generally be logged once per UMA log.
  </summary>
</histogram>

<histogram name="UMA.Unacceptable_Log_Discarded">
  <obsolete>
    Deprecated as of May, 2012 (i.e. Chrome 21+).  Replaced by the
    UMA.UploadResponseStatus.XML and UMA.UploadResponseStatus.Protobuf
    histograms.
  </obsolete>
  <owner>asvitkine@chromium.org</owner>
  <summary>The server returned a 400 code, and we discarded a log.</summary>
  <details>
    This tends to indicate that a syntax error is present in a log, such as
    would appear when a bogus XML tag is included, or the XML is not balanced
    and well structured.
  </details>
</histogram>

<histogram name="UMA.UnsentLogs.Dropped">
  <owner>asvitkine@chromium.org</owner>
  <owner>gayane@chromium.org</owner>
  <summary>
    Counter for number of UMA unsent logs removed from persistent storage.
  </summary>
</histogram>

<histogram name="UMA.UploadCreation" enum="BooleanSuccess">
  <obsolete>
    Deprecated as of August 2015.  This failure case no longer exists.
  </obsolete>
  <owner>asvitkine@chromium.org</owner>
  <summary>
    For each attempted UMA upload, log whether the upload was successfully
    constructed.  An upload might fail to be constructed, for example, if we try
    to upload before the system is fully initialized; or if serialization of the
    data fails.
  </summary>
</histogram>

<histogram name="UMA.UploadResponseStatus.Protobuf"
    enum="UmaUploadResponseStatus">
  <owner>asvitkine@chromium.org</owner>
  <summary>
    For each upload to the protocol buffer (v2) UMA server, log whether the
    upload was successful, or whether there was an error.
  </summary>
</histogram>

<histogram name="UMA.UploadResponseStatus.XML" enum="UmaUploadResponseStatus">
  <obsolete>
    Deprecated 2013. No longer tracked.
  </obsolete>
  <owner>asvitkine@chromium.org</owner>
  <summary>
    For each upload to the XML (v1) UMA server, log whether the upload was
    successful, or whether there was an error.
  </summary>
</histogram>

<histogram name="UMA.UsedResetVariationsFlag" enum="BooleanUsage">
  <obsolete>
    No longer tracked.
  </obsolete>
  <owner>asvitkine@chromium.org</owner>
  <summary>
    Log whether the --reset-variation-state flag was set before the low entropy
    source was requested.
  </summary>
</histogram>

<histogram name="UMA.XMLNodeDumpTime" units="ms">
  <obsolete>
    Deprecated 2013. No longer tracked.
  </obsolete>
  <owner>asvitkine@chromium.org</owner>
  <summary>
    The time spent in converting the XML tree into a character buffer when
    closing a metrics log (Chrome OS).
  </summary>
</histogram>

<histogram name="UMA.XMLWriterDestructionTime" units="ms">
  <obsolete>
    Deprecated 2013. No longer tracked.
  </obsolete>
  <owner>asvitkine@chromium.org</owner>
  <summary>
    The time spent in freeing the XML writer and tree when closing a metrics log
    (Chrome OS).
  </summary>
</histogram>

<histogram name="UpdateEngine.Attempt.ConnectionType"
    enum="UpdateEngineConnectionType">
  <owner>zeuthen@chromium.org</owner>
  <summary>
    The network connection type when the attempt begins. Possible values include
    &quot;Unknown&quot;, &quot;Ethernet&quot;, &quot;Wifi&quot;,
    &quot;Wimax&quot;, &quot;Bluetooth&quot;, &quot;Cellular&quot;,
    &quot;Tethered Ethernet&quot;, &quot;Tethered Wifi&quot;.

    This is reported when an update attempt ends.

    This metric is specific to ChromeOS.
  </summary>
</histogram>

<histogram name="UpdateEngine.Attempt.DownloadErrorCode"
    enum="UpdateEngineDownloadErrorCode">
  <owner>zeuthen@chromium.org</owner>
  <summary>
    A more detailed description of the last Payload transfer error when
    downloading the payload.

    This is reported when an attempt ends with the &quot;Payload Download
    Error&quot; result.

    This metric is specific to ChromeOS.
  </summary>
</histogram>

<histogram name="UpdateEngine.Attempt.DownloadSource"
    enum="UpdateEngineDownloadSource">
  <owner>zeuthen@chromium.org</owner>
  <summary>
    The download source used, possible values include &quot;HTTPS Server&quot;,
    &quot;HTTP Server&quot; and &quot;HTTP Peer&quot;.

    This is reported when an update attempt ends.

    This metric is specific to ChromeOS.
  </summary>
</histogram>

<histogram name="UpdateEngine.Attempt.DurationMinutes" units="minutes">
  <owner>zeuthen@chromium.org</owner>
  <summary>
    The number of minutes the update attempt took including the time the device
    spent sleeping.

    This is reported when an update attempt ends.

    This metric is specific to ChromeOS.
  </summary>
</histogram>

<histogram name="UpdateEngine.Attempt.DurationUptimeMinutes" units="minutes">
  <owner>zeuthen@chromium.org</owner>
  <summary>
    The number of minutes the update attempt took excluding the time the device
    spent sleeping.

    This is reported when an update attempt ends.

    This metric is specific to ChromeOS.
  </summary>
</histogram>

<histogram name="UpdateEngine.Attempt.InternalErrorCode"
    enum="UpdateEngineErrorCode">
  <owner>zeuthen@chromium.org</owner>
  <summary>
    A more detailed description of the last internal error. The possible values
    correspond to the ErrorCode enumeration in the update_engine source code.

    This is reported when an attempt ends with the InternalError result.

    This metric is specific to ChromeOS.
  </summary>
</histogram>

<histogram name="UpdateEngine.Attempt.Number" units="count">
  <owner>zeuthen@chromium.org</owner>
  <summary>
    The attempt number which starts at 0 for the initial attempt and keeps
    increasing for subsequent attempts.

    This is reported when an update attempt ends.

    This metric is specific to ChromeOS.
  </summary>
</histogram>

<histogram name="UpdateEngine.Attempt.PayloadBytesDownloadedMiB" units="MiB">
  <owner>zeuthen@chromium.org</owner>
  <summary>
    The number of payload mebibytes (1048576 bytes) actually download.

    This is reported when an update attempt ends.

    This metric is specific to ChromeOS.
  </summary>
</histogram>

<histogram name="UpdateEngine.Attempt.PayloadDownloadSpeedKBps" units="KBps">
  <owner>zeuthen@chromium.org</owner>
  <summary>
    The payload download speed, in kilobytes per second (1000 bytes/second).
    This is calculated as the number of bytes downloaded divided by the duration
    of the attempt (excluding time spent sleeping).

    This is reported when an update attempt ends.

    This metric is specific to ChromeOS.
  </summary>
</histogram>

<histogram name="UpdateEngine.Attempt.PayloadSizeMiB" units="MiB">
  <owner>zeuthen@chromium.org</owner>
  <summary>
    The payload size, in mebibytes (1048576 bytes).

    This is reported when an update attempt ends.

    This metric is specific to ChromeOS.
  </summary>
</histogram>

<histogram name="UpdateEngine.Attempt.PayloadType"
    enum="UpdateEnginePayloadFormat">
  <owner>zeuthen@chromium.org</owner>
  <summary>
    The payload type, possible values include &quot;Delta&quot; (if Omaha
    specified to download a delta payload); and &quot;Full&quot; (if Omaha
    specified to download a full payload); and &quot;ForcedFull&quot; (if the
    client specified that it would only accept a full payload).

    This is reported when an update attempt ends.

    This metric is specific to ChromeOS.
  </summary>
</histogram>

<histogram name="UpdateEngine.Attempt.Result" enum="UpdateEngineAttemptResult">
  <owner>zeuthen@chromium.org</owner>
  <summary>
    The result of the update attempt.

    This is reported when an update attempt ends.

    This metric is specific to ChromeOS.
  </summary>
</histogram>

<histogram name="UpdateEngine.Attempt.TimeSinceLastAttemptMinutes"
    units="minutes">
  <owner>zeuthen@chromium.org</owner>
  <summary>
    The number of minutes since the last attempt including the time the device
    spent sleeping.

    This is reported when an update attempt ends but only if there was a
    previous attempt for the same update.

    This metric is specific to ChromeOS.
  </summary>
</histogram>

<histogram name="UpdateEngine.Attempt.TimeSinceLastAttemptUptimeMinutes"
    units="minutes">
  <owner>zeuthen@chromium.org</owner>
  <summary>
    The number of minutes since the last attempt excluding the time the device
    spent sleeping.

    This is reported when an update attempt ends but only if there was a
    previous attempt for the same update.

    This metric is specific to ChromeOS.
  </summary>
</histogram>

<histogram name="UpdateEngine.CertificateCheck.Download"
    enum="UpdateEngineCertificateCheckStatus">
  <owner>deymo@chromium.org</owner>
  <summary>
    The status of the certificate check done when downloading a payload over
    HTTPS. Note that most downloads are done over HTTP.

    This is reported on every HTTPS connection to the payload download server.
    Connection drops on the same payload may report different values.

    This metric is specific to ChromeOS.
  </summary>
</histogram>

<histogram name="UpdateEngine.CertificateCheck.UpdateCheck"
    enum="UpdateEngineCertificateCheckStatus">
  <owner>deymo@chromium.org</owner>
  <summary>
    The status of the certificate check done when querying Omaha for a new
    version.

    This is reported on every update check.

    This metric is specific to ChromeOS.
  </summary>
</histogram>

<histogram name="UpdateEngine.Check.DownloadErrorCode"
    enum="UpdateEngineDownloadErrorCode">
  <owner>zeuthen@chromium.org</owner>
  <summary>
    If unable to download a response from Omaha, a more detailed error code is
    reported in this metric.

    This is reported on every update check resulting in &quot;Download
    error&quot;.

    This metric is specific to ChromeOS.
  </summary>
</histogram>

<histogram name="UpdateEngine.Check.Reaction" enum="UpdateEngineCheckReaction">
  <owner>zeuthen@chromium.org</owner>
  <summary>
    If there is an update available, this metric will track what the device does
    with the information. Possible values include &quot;Applying update&quot;,
    &quot;Deferring update&quot;, &quot;Ignoring update&quot;, and &quot;Backing
    off&quot;.

    This is reported on update checks resulting in &quot;Update available&quot;.

    This metric is specific to ChromeOS.
  </summary>
</histogram>

<histogram name="UpdateEngine.Check.Result" enum="UpdateEngineCheckResult">
  <owner>zeuthen@chromium.org</owner>
  <summary>
    The response from Omaha. Possible values include &quot;No update
    available&quot;, &quot;Update available&quot;, &quot;Download error&quot;,
    &quot;Response parsing error&quot;, and &quot;Reboot pending&quot;.

    This is reported on every update check.

    This metric is specific to ChromeOS.
  </summary>
</histogram>

<histogram name="UpdateEngine.Check.TimeSinceLastCheckMinutes" units="minutes">
  <owner>zeuthen@chromium.org</owner>
  <summary>
    The number of minutes since the last check including the time the device
    spent sleeping.

    This is reported on every update check except for the first one.

    This metric is specific to ChromeOS.
  </summary>
</histogram>

<histogram name="UpdateEngine.Check.TimeSinceLastCheckUptimeMinutes"
    units="minutes">
  <owner>zeuthen@chromium.org</owner>
  <summary>
    The number of minutes since the last check excluding the time the device
    spent sleeping.

    This is reported on every update check except for the first one.

    This metric is specific to ChromeOS.
  </summary>
</histogram>

<histogram name="UpdateEngine.Daily.OSAgeDays" units="days">
  <owner>zeuthen@chromium.org</owner>
  <summary>
    The age of the OS in days, defined as the age of the /etc/lsb-release file.

    This is reported on every update check but at most once a day.

    This metric is specific to ChromeOS.
  </summary>
</histogram>

<histogram name="UpdateEngine.FailedUpdateCount" units="count">
  <owner>zeuthen@chromium.org</owner>
  <summary>
    The number of consecutive times a device has failed to boot an update that
    successfully applied.

    This is reported every time the firmware fails to boot the slot with the
    update and fell back to the slot it originally updated from.

    This metric is specific to ChromeOS.
  </summary>
</histogram>

<histogram name="UpdateEngine.InstallDateProvisioningSource"
    enum="UpdateEngineInstallDateProvisioningSource">
  <owner>zeuthen@chromium.org</owner>
  <summary>
    The source used to provision the install-date-days value sent to Omaha with
    every request.

    This is reported when OOBE (Out Of Box Experience) completes (M34 or later)
    or when upgrading to a version with install-date-days support.

    This metric is specific to ChromeOS.
  </summary>
</histogram>

<histogram name="UpdateEngine.Rollback.Result" enum="BooleanSuccess">
  <owner>zeuthen@chromium.org</owner>
  <summary>
    Whether rollback worked.

    This is reported every time there's a rollback request.

    This metric is specific to ChromeOS.
  </summary>
</histogram>

<histogram name="UpdateEngine.SuccessfulUpdate.AttemptCount" units="count">
  <owner>zeuthen@chromium.org</owner>
  <summary>
    The total number of update attempts required to update the device.

    This is reported on every successful update.

    This metric is specific to ChromeOS.
  </summary>
</histogram>

<histogram name="UpdateEngine.SuccessfulUpdate.BytesDownloadedMiB" units="MiB">
  <owner>zeuthen@chromium.org</owner>
  <summary>
    The total number of bytes downloaded in mebibytes (1048576 bytes) using all
    available sources (e.g. HTTP, HTTPS, HTTP Peer).

    This is reported on every successful update.

    This metric is specific to ChromeOS.
  </summary>
</histogram>

<histogram name="UpdateEngine.SuccessfulUpdate.BytesDownloadedMiBHttpPeer"
    units="MiB">
  <owner>zeuthen@chromium.org</owner>
  <summary>
    The total number of bytes downloaded in mebibytes (1048576 bytes) using HTTP
    from a local peer.

    This is reported on every successful update.

    This metric is specific to ChromeOS.
  </summary>
</histogram>

<histogram name="UpdateEngine.SuccessfulUpdate.BytesDownloadedMiBHttpServer"
    units="MiB">
  <owner>zeuthen@chromium.org</owner>
  <summary>
    The total number of bytes downloaded in mebibytes (1048576 bytes) using
    HTTP.

    This is reported on every successful update.

    This metric is specific to ChromeOS.
  </summary>
</histogram>

<histogram name="UpdateEngine.SuccessfulUpdate.BytesDownloadedMiBHttpsServer"
    units="MiB">
  <owner>zeuthen@chromium.org</owner>
  <summary>
    The total number of bytes downloaded in mebibytes (1048576 bytes) using
    HTTPS.

    This is reported on every successful update.

    This metric is specific to ChromeOS.
  </summary>
</histogram>

<histogram name="UpdateEngine.SuccessfulUpdate.DownloadOverheadPercentage"
    units="%">
  <owner>zeuthen@chromium.org</owner>
  <summary>
    The ratio between bytes downloaded and payload size minus 100.

    This is reported on every successful update.

    This metric is specific to ChromeOS.
  </summary>
</histogram>

<histogram name="UpdateEngine.SuccessfulUpdate.DownloadSourcesUsed"
    enum="UpdateEngineDownloadSources">
  <owner>zeuthen@chromium.org</owner>
  <summary>
    The various download sources used - this is a combination of the values
    &quot;HTTPS Server&quot;, &quot;HTTP Server&quot; and &quot;HTTP Peer&quot;.

    This is reported on every successful update.

    This metric is specific to ChromeOS.
  </summary>
</histogram>

<histogram name="UpdateEngine.SuccessfulUpdate.PayloadSizeMiB" units="MiB">
  <owner>zeuthen@chromium.org</owner>
  <summary>
    The size of the payload, in mebibytes (1048576 bytes).

    This is reported on every successful update.

    This metric is specific to ChromeOS.
  </summary>
</histogram>

<histogram name="UpdateEngine.SuccessfulUpdate.PayloadType"
    enum="UpdateEnginePayloadFormat">
  <owner>zeuthen@chromium.org</owner>
  <summary>
    The payload type (&quot;Delta&quot;, &quot;Full&quot;,
    &quot;ForcedFull&quot;) used.

    This is reported on every successful update.

    This metric is specific to ChromeOS.
  </summary>
</histogram>

<histogram name="UpdateEngine.SuccessfulUpdate.RebootCount" units="count">
  <owner>zeuthen@chromium.org</owner>
  <summary>
    The total number of reboots during the update.

    This is reported on every successful update.

    This metric is specific to ChromeOS.
  </summary>
</histogram>

<histogram name="UpdateEngine.SuccessfulUpdate.TotalDurationMinutes"
    units="minutes">
  <owner>zeuthen@chromium.org</owner>
  <summary>
    The total number of minutes from when an update was detected until an update
    (possibly another update) was applied. This includes the time waiting for
    update checks and time the device spent sleeping.

    This is reported on every successful update.

    This metric is specific to ChromeOS.
  </summary>
</histogram>

<histogram name="UpdateEngine.SuccessfulUpdate.UpdatesAbandonedCount"
    units="count">
  <owner>zeuthen@chromium.org</owner>
  <summary>
    The total number of updates that were abandoned since the last successful
    update.

    This is reported on every successful update.

    This metric is specific to ChromeOS.
  </summary>
</histogram>

<histogram name="UpdateEngine.SuccessfulUpdate.UrlSwitchCount" units="count">
  <owner>zeuthen@chromium.org</owner>
  <summary>
    The total number of times the URL was switched (from e.g. HTTPS to HTTP)
    because of failures.

    This is reported on every successful update.

    This metric is specific to ChromeOS.
  </summary>
</histogram>

<histogram name="UpdateEngine.TimeToRebootMinutes" units="minutes">
  <owner>zeuthen@chromium.org</owner>
  <summary>
    The duration between when an update has successfully completed and the user
    is presented with the &quot;reboot arrow&quot; and when the system has
    booted into the new update.

    This is reported every time the device is rebooted after an update has been
    applied.

    This metric is specific to ChromeOS.
  </summary>
</histogram>

<histogram name="Uptime.ChromeExecToLoginPromptVisibleAfterLogout" units="ms">
  <owner>hajimehoshi@chromium.org</owner>
  <owner>kouhei@chromium.org</owner>
  <summary>
    Measures the time elapsed on Chrome OS between when Chrome is started, and
    when the login prompt is again visible after a logout.  This statistic is
    only collected when preceeded by a logout.
  </summary>
</histogram>

<histogram name="Uptime.DBusCrash" units="ms">
  <owner>derat@chromium.org</owner>
  <summary>
    The system uptime on Chrome OS when the dbus-daemon process crashes,
    resulting in a reboot.
  </summary>
</histogram>

<histogram name="Uptime.LoginPromptSetupTimeAfterLogout" units="ms">
  <owner>hajimehoshi@chromium.org</owner>
  <owner>kouhei@chromium.org</owner>
  <summary>
    Measures the time elapsed on Chrome OS for setting up for a login after a
    logout. More specifically, it is the time between when the Cryptohome is
    unmounted (the last step in the logout process) and when the login prompt is
    again visible after a logout.
  </summary>
</histogram>

<histogram name="Uptime.Logout" units="ms">
  <owner>hajimehoshi@chromium.org</owner>
  <owner>kouhei@chromium.org</owner>
  <summary>
    Measures the time elapsed on Chrome OS when performing a logout. More
    specifically, it is the time between when a logout is initiated and when the
    Cryptohome is unmounted, signaling the last step in the logout process. This
    statistic is not collected when the logout is part of a restart or shutdown.
  </summary>
</histogram>

<histogram name="Uptime.LogoutToLoginPromptVisible" units="ms">
  <owner>hajimehoshi@chromium.org</owner>
  <owner>kouhei@chromium.org</owner>
  <summary>
    Measures the time elapsed on Chrome OS between initiating a logout and the
    next time the login prompt is visible again.  This statistic is not
    collected if the machine is shutdown between the logout initiation and the
    prompt becoming visible.
  </summary>
</histogram>

<histogram name="Uptime.LogoutToUIStopAfterLogout" units="ms">
  <owner>hajimehoshi@chromium.org</owner>
  <owner>kouhei@chromium.org</owner>
  <summary>
    Measures the time elapsed on Chrome OS between when a logout is initiated
    and the UI has stopped (and Chrome has exited) during the logout process.
    This statistic is not collected if the logout is part of a restart or
    shutdown.
  </summary>
</histogram>

<histogram name="Uptime.ProcessesTerminatedToXTerminatedAfterLogout" units="ms">
  <owner>hajimehoshi@chromium.org</owner>
  <owner>kouhei@chromium.org</owner>
  <summary>
    Measures the time elapsed on Chrome OS between when all user-associated
    processes (including the X server) have been terminated during the logout
    process.  This statistic is not collected if the logout is part of a restart
    or shutdown.
  </summary>
</histogram>

<histogram name="Uptime.UIStopToProcessesTerminatedAfterLogout" units="ms">
  <owner>hajimehoshi@chromium.org</owner>
  <owner>kouhei@chromium.org</owner>
  <summary>
    Measures the time elapsed on Chrome OS between when the UI has stopped
    (Chrome has exited), and when all other associated processes have been
    terminated during the logout process. This statistic is not collected if the
    logout is part of a restart or shutdown.
  </summary>
</histogram>

<histogram name="Uptime.XTerminatedToChromeExecAfterLogout" units="ms">
  <owner>hajimehoshi@chromium.org</owner>
  <owner>kouhei@chromium.org</owner>
  <summary>
    Measures the time elapsed on Chrome OS between when the X server has been
    terminated from a previous logout and when Chrome is started again to show
    the login screen.
  </summary>
</histogram>

<histogram name="UrlFetcher.StringResponseSize" units="KB">
  <owner>mmenke@chromium.org</owner>
  <summary>
    Size (in kilobytes) of response bodies retrieved as strings from URLFetcher.
  </summary>
</histogram>

<histogram name="UserCert.ContentDisposition" enum="UserCertContentDisposition">
  <owner>rsleevi@chromium.org</owner>
  <owner>svaldez@chromium.org</owner>
  <summary>
    Distribution of Content-Disposition headers sent with x-x509-user-cert
    content types.
  </summary>
</histogram>

<histogram name="UserImage.ChangeChoice" enum="ChromeOSUserImageId">
  <owner>achuith@chromium.org</owner>
  <summary>
    Distribution of the default images that users choose in Change Picture
    dialog (Chrome OS). One sample is taken each time the user changes picture.
  </summary>
</histogram>

<histogram name="UserImage.FirstTimeChoice" enum="ChromeOSUserImageId">
  <owner>achuith@chromium.org</owner>
  <summary>
    Distribution of the default images chosen on user image screen during
    out-of-the-box experience (Chrome OS). One sample is taken each time the
    user confirms the choice by clicking OK button.
  </summary>
</histogram>

<histogram name="UserImage.LoggedIn" enum="ChromeOSUserImageId">
  <owner>achuith@chromium.org</owner>
  <summary>
    Distribution of the default images that existing users login with (Chrome
    OS). One sample is taken each time the user logs in.
  </summary>
</histogram>

<histogram name="UserImage.ProfileDownloadResult"
    enum="ProfileImageDownloadResult">
  <owner>achuith@chromium.org</owner>
  <summary>
    Profile image download result for UserManager (either on behalf of the
    Change Picture prefs page, OOBE or scheduled refresh after user login).
  </summary>
</histogram>

<histogram name="UserImage.ProfileDownloadTime" units="ms">
  <owner>achuith@chromium.org</owner>
  <summary>The time it took to download user's profile picture.</summary>
</histogram>

<histogram name="UserImage.ScreenIsShownTime" units="ms">
  <owner>achuith@chromium.org</owner>
  <summary>
    Time histogram of the &quot;Choose Picture&quot; OOBE screen display delay.
  </summary>
</histogram>

<histogram name="UserManager.LoginUserType" enum="UserType">
  <owner>achuith@chromium.org</owner>
  <summary>
    The number of users of different types that log in to the system (Chrome
    OS).
  </summary>
</histogram>

<histogram name="UserManager.LogoutToLoginDelay" units="seconds">
  <owner>alemate@chromium.org</owner>
  <owner>omrilio@chromium.org</owner>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The time between one regular user logging out and a different regular user
    logging in (Chrome OS). Delays above thirty minutes or which span system
    reboots or non-regular-user logins are not reported.
  </summary>
</histogram>

<histogram name="UserSessionManager.UserPodsDisplay" enum="UserPodsDisplay">
  <owner>achuith@chromium.org</owner>
  <summary>
    Whether the user pods were enabled during login, and what could disable
    them.
  </summary>
</histogram>

<histogram name="V8.ASTOptimization">
  <obsolete>
    This histogram is no longer present in V8.
  </obsolete>
  <owner>jochen@chromium.org</owner>
  <summary>TBD</summary>
</histogram>

<histogram name="V8.CodeCacheRejectReason" enum="V8CodeCacheRejectReason">
  <owner>yangguo@chromium.org</owner>
  <summary>
    Reason code data has been rejected when attempting to deserialize.
  </summary>
</histogram>

<histogram name="V8.CodeCacheSizeRatio" units="%">
  <owner>yangguo@chromium.org</owner>
  <summary>Cache size to source size ratio when caching compiled code.</summary>
</histogram>

<histogram name="V8.CodeCreation">
  <obsolete>
    This histogram is no longer present in V8.
  </obsolete>
  <owner>jochen@chromium.org</owner>
  <summary>TBD</summary>
</histogram>

<histogram name="V8.CodeGeneration">
  <obsolete>
    This histogram is no longer present in V8.
  </obsolete>
  <owner>jochen@chromium.org</owner>
  <summary>Time spent generating native code for functions.</summary>
</histogram>

<histogram name="V8.CodegenFractionCrankshaft" units="%">
  <owner>jochen@chromium.org</owner>
  <owner>rmcilroy@chromium.org</owner>
  <summary>
    Fraction of the total generated code which was generated using the
    Crankshaft optimizing compiler, after each GC in percent.
  </summary>
</histogram>

<histogram name="V8.Compile" units="ms">
  <obsolete>
    This histogram has been replaced by V8.CompileMicroSeconds.
  </obsolete>
  <owner>jochen@chromium.org</owner>
  <owner>yangguo@chromium.org</owner>
  <summary>Time spent in V8 compiler (full codegen).</summary>
</histogram>

<histogram name="V8.CompileCacheableMicroSeconds" units="microseconds">
  <owner>yangguo@chromium.org</owner>
  <summary>
    Time spent compiling a script that may be subject to caching.
  </summary>
</histogram>

<histogram name="V8.CompileDeserialize" units="ms">
  <obsolete>
    This histogram has been replaced by V8.CompileDeserializeMicroSeconds.
  </obsolete>
  <owner>vogelheim@chromium.org</owner>
  <summary>Time spent deseriailzing code, used by V8 code caching.</summary>
</histogram>

<histogram name="V8.CompileDeserializeMicroSeconds" units="microseconds">
  <owner>vogelheim@chromium.org</owner>
  <summary>Time spent deseriailzing code, used by V8 code caching.</summary>
</histogram>

<histogram name="V8.CompileEval" units="ms">
  <obsolete>
    This histogram has been replaced by V8.CompileEvalMicroSeconds.
  </obsolete>
  <owner>jochen@chromium.org</owner>
  <owner>yangguo@chromium.org</owner>
  <summary>Time spent in V8 compiler (full codegen) for eval.</summary>
</histogram>

<histogram name="V8.CompileEvalMicroSeconds" units="microseconds">
  <owner>jochen@chromium.org</owner>
  <owner>yangguo@chromium.org</owner>
  <summary>Time spent in V8 compiler (full codegen) for eval.</summary>
</histogram>

<histogram name="V8.CompileInlineScriptMicroSeconds" units="microseconds">
  <owner>yangguo@chromium.org</owner>
  <summary>Time spent compiling an inline script.</summary>
</histogram>

<histogram name="V8.CompileLazy" units="ms">
  <obsolete>
    This histogram has been replaced by V8.CompileLazyMicroSeconds.
  </obsolete>
  <owner>jochen@chromium.org</owner>
  <summary>Time spent compiling functions lazily on first run.</summary>
</histogram>

<histogram name="V8.CompileLazyMicroSeconds" units="microseconds">
  <owner>jochen@chromium.org</owner>
  <summary>
    Aggregated time spent compiling functions lazily during a single script
    execution.
  </summary>
</histogram>

<histogram name="V8.CompileMicroSeconds" units="microseconds">
  <owner>jochen@chromium.org</owner>
  <owner>yangguo@chromium.org</owner>
  <summary>Time spent in V8 compiler (full codegen) excluding parser.</summary>
</histogram>

<histogram name="V8.CompileNoncacheableMicroSeconds" units="microseconds">
  <owner>yangguo@chromium.org</owner>
  <summary>
    Time spent compiling a script that cannot be subject to caching.
  </summary>
</histogram>

<histogram name="V8.CompileScript" units="ms">
  <obsolete>
    This histogram has been replaced by V8.CompileScriptMicroSeconds.
  </obsolete>
  <owner>yangguo@chromium.org</owner>
  <summary>
    Total time spent in compiling a script (incl. parsing/caching).
  </summary>
</histogram>

<histogram name="V8.CompileScriptMicroSeconds" units="microseconds">
  <owner>yangguo@chromium.org</owner>
  <summary>
    Total time spent in compiling a script (incl. parsing/caching).
  </summary>
</histogram>

<histogram name="V8.CompileSerialize" units="ms">
  <obsolete>
    This histogram has been replaced by V8.CompileSerializeMicroSeconds.
  </obsolete>
  <owner>vogelheim@chromium.org</owner>
  <summary>Time spent serializing code, used by V8 code caching.</summary>
</histogram>

<histogram name="V8.CompileSerializeMicroSeconds" units="microseconds">
  <owner>vogelheim@chromium.org</owner>
  <summary>Time spent serializing code, used by V8 code caching.</summary>
</histogram>

<histogram name="V8.DebugFeatureUsage" enum="V8DebugFeature">
  <owner>yangguo@chromium.org</owner>
  <summary>
    Debugger feature used at least once per isolate, recorded on first use.
  </summary>
</histogram>

<histogram name="V8.DeferredCodeGeneration">
  <obsolete>
    This histogram is no longer present in V8
  </obsolete>
  <owner>jochen@chromium.org</owner>
  <summary>Time spent generating deferred code stubs.</summary>
</histogram>

<histogram name="V8.DetachedContextAgeInGC">
  <owner>ulan@chromium.org</owner>
  <summary>
    Number of garbage collections that a detached global context survives,
    recorded after each major garbage collection. Values greater than 7 indicate
    a memory leak.
  </summary>
</histogram>

<histogram name="V8.ErrorsThrownPerContext" units="errors">
  <owner>hablich@chromium.org</owner>
  <summary>
    The amount of JavaScript errors thrown by V8 per context. It does not count
    custom errors and ignores catched errors thrown by V8. This is collected
    after the context is detached.
  </summary>
</histogram>

<histogram name="V8.ExecutableMemoryMax" units="bytes">
  <obsolete>
    This histogram is no longer present in V8
  </obsolete>
  <owner>jochen@chromium.org</owner>
  <summary>
    The maximum memory used to store V8 compiled code on a given process.
  </summary>
</histogram>

<histogram name="V8.Execute" units="ms">
  <owner>jochen@chromium.org</owner>
  <owner>rmcilroy@chromium.org</owner>
  <summary>
    Time spent in JavaScript Execution, including runtime calls, callbacks, and
    lazy compilation.
  </summary>
</histogram>

<histogram name="V8.GCCompactor" units="ms">
  <owner>jochen@chromium.org</owner>
  <owner>hpayer@chromium.org</owner>
  <summary>Time spent in mark-sweep phase of GC.</summary>
</histogram>

<histogram name="V8.GCContext" units="ms">
  <owner>jochen@chromium.org</owner>
  <owner>hpayer@chromium.org</owner>
  <summary>Time spent doing a full GC during an IdleNotification.</summary>
</histogram>

<histogram name="V8.GCFinalizeMC" units="ms">
  <owner>ulan@chromium.org</owner>
  <owner>hpayer@chromium.org</owner>
  <summary>Time spent in finalize incremental mark-sweep phase of GC.</summary>
</histogram>

<histogram name="V8.GCFinalizeMCReduceMemory" units="ms">
  <owner>ulan@chromium.org</owner>
  <owner>hpayer@chromium.org</owner>
  <summary>
    Time spent in finalize incremental memory-reducing mark-sweep phase of GC.
  </summary>
</histogram>

<histogram name="V8.GCFinalzeMC" units="ms">
  <obsolete>
    This histogram has been replaced by V8.GCFinalizeMC because of typo in the
    name.
  </obsolete>
  <owner>ulan@chromium.org</owner>
  <owner>hpayer@chromium.org</owner>
  <summary>Time spent in finalize incremental mark-sweep phase of GC.</summary>
</histogram>

<histogram name="V8.GCIdleNotification" units="ms">
  <owner>jochen@chromium.org</owner>
  <owner>hpayer@chromium.org</owner>
  <summary>Time spent in IdleNotifications.</summary>
</histogram>

<histogram name="V8.GCIdleTimeAllottedInMS" units="ms">
  <owner>jochen@chromium.org</owner>
  <owner>hpayer@chromium.org</owner>
  <summary>Idle time passed to V8 via IdleNotifications.</summary>
</histogram>

<histogram name="V8.GCIdleTimeLimit.Overshot" units="ms">
  <owner>jochen@chromium.org</owner>
  <owner>hpayer@chromium.org</owner>
  <summary>
    Milliseconds the idle time limit was overshot by the IdleNotification.
  </summary>
</histogram>

<histogram name="V8.GCIdleTimeLimit.Undershot" units="ms">
  <owner>jochen@chromium.org</owner>
  <owner>hpayer@chromium.org</owner>
  <summary>
    Milliseconds the idle time limit was undershot by the IdleNotification.
  </summary>
</histogram>

<histogram name="V8.GCIncrementalMarking" units="ms">
  <owner>jochen@chromium.org</owner>
  <owner>hpayer@chromium.org</owner>
  <summary>Time spent doing incremental marking steps during GC.</summary>
</histogram>

<histogram name="V8.GCIncrementalMarkingFinalize" units="ms">
  <owner>jochen@chromium.org</owner>
  <owner>hpayer@chromium.org</owner>
  <summary>Time spent in finalizing incremental marking.</summary>
</histogram>

<histogram name="V8.GCIncrementalMarkingStart" units="ms">
  <owner>jochen@chromium.org</owner>
  <owner>hpayer@chromium.org</owner>
  <summary>Time spent in starting incremental marking.</summary>
</histogram>

<histogram name="V8.GCLowMemoryNotification" units="ms">
  <owner>jochen@chromium.org</owner>
  <owner>hpayer@chromium.org</owner>
  <summary>Time spent in LowMemoryNotifications.</summary>
</histogram>

<histogram name="V8.GCScavenger" units="ms">
  <owner>jochen@chromium.org</owner>
  <owner>hpayer@chromium.org</owner>
  <summary>Time spent in scavenging phase of GC.</summary>
</histogram>

<histogram name="V8.Initializer.LoadV8Snapshot.Result"
    enum="V8InitializerLoadV8SnapshotResult">
  <owner>oth@chromium.org</owner>
  <summary>Results from snapshot loading.</summary>
</histogram>

<histogram name="V8.Initializer.OpenV8File.Result"
    enum="V8InitializerOpenV8FileResult">
  <owner>oth@chromium.org</owner>
  <summary>Results from opening V8 snapshot files.</summary>
</histogram>

<histogram name="V8.MemoryExternalFragmentationCellSpace" units="%">
  <owner>jochen@chromium.org</owner>
  <owner>hpayer@chromium.org</owner>
  <summary>
    External memory fragmentation in the cell space after each GC in percent.
  </summary>
</histogram>

<histogram name="V8.MemoryExternalFragmentationCodeSpace" units="%">
  <owner>jochen@chromium.org</owner>
  <owner>hpayer@chromium.org</owner>
  <summary>
    External memory fragmentation in the code space after each GC in percent.
  </summary>
</histogram>

<histogram name="V8.MemoryExternalFragmentationLoSpace" units="%">
  <owner>jochen@chromium.org</owner>
  <owner>hpayer@chromium.org</owner>
  <summary>
    External memory fragmentation in the large object space after each GC in
    percent.
  </summary>
</histogram>

<histogram name="V8.MemoryExternalFragmentationMapSpace" units="%">
  <owner>jochen@chromium.org</owner>
  <owner>hpayer@chromium.org</owner>
  <summary>
    External memory fragmentation in the map space after each GC in percent.
  </summary>
</histogram>

<histogram name="V8.MemoryExternalFragmentationOldDataSpace" units="%">
  <obsolete>
    This histogram has been replaced by V8.MemoryExternalFragmentationOldSpace.
  </obsolete>
  <owner>jochen@chromium.org</owner>
  <owner>hpayer@chromium.org</owner>
  <summary>
    External memory fragmentation in the old data space after each GC in
    percent.
  </summary>
</histogram>

<histogram name="V8.MemoryExternalFragmentationOldPointerSpace" units="%">
  <obsolete>
    This histogram has been replaced by V8.MemoryExternalFragmentationOldSpace.
  </obsolete>
  <owner>jochen@chromium.org</owner>
  <owner>hpayer@chromium.org</owner>
  <summary>
    External memory fragmentation in the old pointer space after each GC in
    percent.
  </summary>
</histogram>

<histogram name="V8.MemoryExternalFragmentationOldSpace" units="%">
  <owner>jochen@chromium.org</owner>
  <owner>hpayer@chromium.org</owner>
  <summary>
    External memory fragmentation in the old space after each GC in percent.
  </summary>
</histogram>

<histogram name="V8.MemoryExternalFragmentationTotal" units="%">
  <owner>jochen@chromium.org</owner>
  <owner>hpayer@chromium.org</owner>
  <summary>
    Total external memory fragmentation after each GC in percent.
  </summary>
</histogram>

<histogram name="V8.MemoryHeapCommitted" units="KB">
  <owner>ulan@chromium.org</owner>
  <summary>
    The committed memory used by V8 in KB averaged over time, logged before each
    GC.
  </summary>
</histogram>

<histogram name="V8.MemoryHeapFractionCellSpace" units="%">
  <owner>jochen@chromium.org</owner>
  <owner>hpayer@chromium.org</owner>
  <summary>
    Fraction of the total heap used by the cell space after each GC in percent.
  </summary>
</histogram>

<histogram name="V8.MemoryHeapFractionCodeSpace" units="%">
  <owner>jochen@chromium.org</owner>
  <owner>hpayer@chromium.org</owner>
  <summary>
    Fraction of the total heap used by the code space after each GC in percent.
  </summary>
</histogram>

<histogram name="V8.MemoryHeapFractionLoSpace" units="%">
  <owner>jochen@chromium.org</owner>
  <owner>hpayer@chromium.org</owner>
  <summary>
    Fraction of the total heap used by the lo space after each GC in percent.
  </summary>
</histogram>

<histogram name="V8.MemoryHeapFractionMapSpace" units="%">
  <owner>jochen@chromium.org</owner>
  <owner>hpayer@chromium.org</owner>
  <summary>
    Fraction of the total heap used by the map space after each GC in percent.
  </summary>
</histogram>

<histogram name="V8.MemoryHeapFractionNewSpace" units="%">
  <owner>jochen@chromium.org</owner>
  <owner>hpayer@chromium.org</owner>
  <summary>
    Fraction of the total heap used by the new space after each GC in percent.
  </summary>
</histogram>

<histogram name="V8.MemoryHeapFractionOldDataSpace" units="%">
  <obsolete>
    This histogram has been replaced by V8.MemoryHeapFractionOldSpace.
  </obsolete>
  <owner>jochen@chromium.org</owner>
  <owner>hpayer@chromium.org</owner>
  <summary>
    Fraction of the total heap used by the old data space after each GC in
    percent.
  </summary>
</histogram>

<histogram name="V8.MemoryHeapFractionOldPointerSpace" units="%">
  <obsolete>
    This histogram has been replaced by V8.MemoryHeapFractionOldSpace.
  </obsolete>
  <owner>jochen@chromium.org</owner>
  <owner>hpayer@chromium.org</owner>
  <summary>
    Fraction of the total heap used by the old pointer space after each GC in
    percent.
  </summary>
</histogram>

<histogram name="V8.MemoryHeapFractionOldSpace" units="%">
  <owner>jochen@chromium.org</owner>
  <owner>hpayer@chromium.org</owner>
  <summary>
    Fraction of the total heap used by the old space after each GC in percent.
  </summary>
</histogram>

<histogram name="V8.MemoryHeapSampleCellSpaceCommitted" units="KB">
  <owner>jochen@chromium.org</owner>
  <owner>hpayer@chromium.org</owner>
  <summary>
    The size of committed memory in the cell space after each GC in KB.
  </summary>
</histogram>

<histogram name="V8.MemoryHeapSampleCodeSpaceCommitted" units="KB">
  <owner>jochen@chromium.org</owner>
  <owner>hpayer@chromium.org</owner>
  <summary>
    The size of committed memory in the code space after each GC in KB.
  </summary>
</histogram>

<histogram name="V8.MemoryHeapSampleMapSpaceCommitted" units="KB">
  <owner>jochen@chromium.org</owner>
  <owner>hpayer@chromium.org</owner>
  <summary>
    The size of committed memory in the map space after each GC in KB.
  </summary>
</histogram>

<histogram name="V8.MemoryHeapSampleTotalCommitted" units="KB">
  <owner>jochen@chromium.org</owner>
  <owner>hpayer@chromium.org</owner>
  <summary>
    The total size of committed memory used by V8 after each GC in KB.
  </summary>
</histogram>

<histogram name="V8.MemoryHeapSampleTotalUsed" units="KB">
  <owner>jochen@chromium.org</owner>
  <owner>hpayer@chromium.org</owner>
  <summary>
    The total size of live memory used by V8 after each GC in KB.
  </summary>
</histogram>

<histogram name="V8.MemoryHeapUsed" units="KB">
  <owner>ulan@chromium.org</owner>
  <summary>
    The live memory used by V8 in KB averaged over time, logged before each GC.
  </summary>
</histogram>

<histogram name="V8.Parse" units="ms">
  <obsolete>
    This histogram has been replaced by V8.ParseMicroSeconds.
  </obsolete>
  <owner>jochen@chromium.org</owner>
  <owner>marja@chromium.org</owner>
  <summary>Time spent in V8 parser.</summary>
</histogram>

<histogram name="V8.ParseLazy" units="ms">
  <obsolete>
    This histogram has been replaced by V8.ParseLazyMicroSeconds.
  </obsolete>
  <owner>jochen@chromium.org</owner>
  <owner>marja@chromium.org</owner>
  <summary>
    Time spent parsing functions when they are lazily compiled on first run.
  </summary>
</histogram>

<histogram name="V8.ParseLazyMicroSeconds" units="microseconds">
  <owner>jochen@chromium.org</owner>
  <owner>marja@chromium.org</owner>
  <summary>
    Time spent parsing functions when they are lazily compiled on first run.
  </summary>
</histogram>

<histogram name="V8.ParseMicroSeconds" units="microseconds">
  <owner>jochen@chromium.org</owner>
  <owner>marja@chromium.org</owner>
  <summary>Time spent in V8 parser.</summary>
</histogram>

<histogram name="V8.PreParse" units="ms">
  <obsolete>
    This histogram has been replaced by V8.PreParseMicroSeconds.
  </obsolete>
  <owner>jochen@chromium.org</owner>
  <owner>marja@chromium.org</owner>
  <summary>Time spent preparsing source code.</summary>
</histogram>

<histogram name="V8.PreParseMicroSeconds" units="microseconds">
  <owner>jochen@chromium.org</owner>
  <owner>marja@chromium.org</owner>
  <summary>Time spent preparsing source code.</summary>
</histogram>

<histogram name="V8.Rewriting">
  <obsolete>
    This histogram is no longer present in V8.
  </obsolete>
  <owner>jochen@chromium.org</owner>
  <summary>Time spent on rewriting ASTs before compilation.</summary>
</histogram>

<histogram name="V8.RSetLO">
  <obsolete>
    This histogram is no longer present in V8.
  </obsolete>
  <owner>jochen@chromium.org</owner>
  <summary>TBD</summary>
</histogram>

<histogram name="V8.RSetPaged">
  <obsolete>
    This histogram is no longer present in V8.
  </obsolete>
  <owner>jochen@chromium.org</owner>
  <summary>TBD</summary>
</histogram>

<histogram name="V8.ScriptCache">
  <obsolete>
    This histogram is no longer present in V8.
  </obsolete>
  <owner>jochen@chromium.org</owner>
  <owner>yangguo@chromium.org</owner>
  <summary>
    The generation a compiled script was found in the compilation cache.
  </summary>
</histogram>

<histogram name="V8.UsageAnalysis">
  <obsolete>
    This histogram is no longer present in V8.
  </obsolete>
  <owner>jochen@chromium.org</owner>
  <summary>Time spent analysing the usage of variables.</summary>
</histogram>

<histogram name="V8.VariableAllocation">
  <obsolete>
    This histogram is no longer present in V8.
  </obsolete>
  <owner>jochen@chromium.org</owner>
  <summary>TBD</summary>
</histogram>

<histogram name="Variations.CreateTrials.SeedExpiry"
    enum="VariationsSeedExpiry">
  <owner>asvitkine@chromium.org</owner>
  <owner>fdoray@chromium.org</owner>
  <summary>
    The result of verifying if the variations seed is expired, recorded before
    trials are created from the seed. Expired seeds are treated as not existing.
  </summary>
</histogram>

<histogram name="Variations.DisabledNoEntropyProvider" enum="BooleanHit">
  <obsolete>
    Deprecated 1/2013. No longer tracked.
  </obsolete>
  <owner>asvitkine@chromium.org</owner>
  <summary>
    A count of the number of times we hit the code where a field trial is
    disabled because no entropy provider was provided.
  </summary>
</histogram>

<histogram name="Variations.FailedRequestErrorCode" enum="NetErrorCodes">
  <owner>asvitkine@chromium.org</owner>
  <summary>
    The counts of network error codes encountered by VariationsService when an
    attempt to fetch a variations seed from the server fails.
  </summary>
</histogram>

<histogram name="Variations.FetchNotModifiedLatency" units="ms">
  <obsolete>
    Deprecated 2/2014. No longer tracked.
  </obsolete>
  <owner>asvitkine@chromium.org</owner>
  <summary>
    The latency of a VariationsService seed fetch that results in a not modified
    response.
  </summary>
</histogram>

<histogram name="Variations.FetchOtherLatency" units="ms">
  <obsolete>
    Deprecated 2/2014. No longer tracked.
  </obsolete>
  <owner>asvitkine@chromium.org</owner>
  <summary>
    The latency of a VariationsService seed fetch that results in neither a
    success nor not modified response.
  </summary>
</histogram>

<histogram name="Variations.FetchSuccessLatency" units="ms">
  <obsolete>
    Deprecated 2/2014. No longer tracked.
  </obsolete>
  <owner>asvitkine@chromium.org</owner>
  <summary>
    The latency of a VariationsService seed fetch that results in a success
    response.
  </summary>
</histogram>

<histogram name="Variations.FirstRunResult" enum="VariationsFirstRunResult">
  <owner>asvitkine@chromium.org</owner>
  <summary>
    The result of attempting to import an initial variations seed during Android
    Chrome first run. Logged from VariationsSeedStore::LoadSeed when seed prefs
    do not exist.
  </summary>
</histogram>

<histogram name="Variations.HeaderConstructionTime" units="microseconds">
  <owner>asvitkine@chromium.org</owner>
  <summary>How long it took to create the X-Client-Data header.</summary>
</histogram>

<histogram name="Variations.Headers.ExperimentCount">
  <owner>asvitkine@chromium.org</owner>
  <summary>
    Records number of experiment ids in the X-Client-Data header at the time the
    header is constructed.
  </summary>
</histogram>

<histogram name="Variations.LoadPermanentConsistencyCountryResult"
    enum="VariationsPermanentConsistencyCountryResult">
  <owner>sclittle@chromium.org</owner>
  <summary>
    Records how the country code saved in prefs used for filtering permanent
    consistency studies compares to the country code in the variations seed.
    This is recorded each time the saved country code is loaded from the pref.
  </summary>
</histogram>

<histogram name="Variations.LoadSeedSignature" enum="VariationSeedSignature">
  <owner>asvitkine@chromium.org</owner>
  <summary>
    The result of verifying the variations seed signature, recorded when the
    variations seed is stored to Local State after being retrieved from the
    server.
  </summary>
</histogram>

<histogram name="Variations.NetworkAvailability" enum="BooleanSuccess">
  <obsolete>
    Deprecated 9/2012. No longer tracked.
  </obsolete>
  <owner>asvitkine@chromium.org</owner>
  <summary>
    Whether or not the network was available when requested by the
    VariationsService.
  </summary>
</histogram>

<histogram name="Variations.RequestCount">
  <owner>asvitkine@chromium.org</owner>
  <summary>
    Number of previous requests to the variations server in the same session,
    logged each time a new request is attempted to the variations server. For
    example, the value of the 0th bucket indicates the number of initial
    requests to the server that took place.
  </summary>
</histogram>

<histogram name="Variations.ResourceRequestsAllowed"
    enum="VariationsResourceRequestsAllowedState">
  <owner>asvitkine@chromium.org</owner>
  <summary>
    Counts the number of times the VariationsService is allowed or not allowed
    to make a request due to the ResourceRequestAllowedNotifier.
  </summary>
</histogram>

<histogram name="Variations.SeedDateChange" enum="VariationsSeedDateChange">
  <owner>jwd@chromium.org</owner>
  <summary>
    Counts if a response from the variations server is the first response of the
    day or not. This is counted when a new valid seed or a 304 is received. The
    date line is computed in UTC and the times being compared are the server
    time from the server response and the stored server time from the last
    successful request.
  </summary>
</histogram>

<histogram name="Variations.SeedDateSkew.BuildTimeAheadBy" units="days">
  <owner>gab@chromium.org</owner>
  <obsolete>
    Deprecated as of 9/2015.
  </obsolete>
  <summary>
    Logged on startup when creating field trials from the variations seed if the
    build time is ahead of or within 24 hours of the kVariationsSeedDate. Used
    as an experiment to see whether the build time could be used to discard very
    old seeds.
  </summary>
</histogram>

<histogram name="Variations.SeedDateSkew.BuildTimeBehindBy" units="days">
  <owner>gab@chromium.org</owner>
  <obsolete>
    Deprecated as of 9/2015.
  </obsolete>
  <summary>
    Logged on startup when creating field trials from the variations seed if the
    build time is behind the kVariationsSeedDate by a day or more. Used as an
    experiment to see whether the build time could be used to discard very old
    seeds.
  </summary>
</histogram>

<histogram name="Variations.SeedDateSkew.SystemClockAheadBy" units="days">
  <owner>gab@chromium.org</owner>
  <obsolete>
    Deprecated as of 9/2015.
  </obsolete>
  <summary>
    Logged on startup when creating field trials from the variations seed if the
    system clock is ahead of or within 24 hours of the kVariationsSeedDate. Used
    as an experiment to see whether the system clock could be used to discard
    very old seeds.
  </summary>
</histogram>

<histogram name="Variations.SeedDateSkew.SystemClockBehindBy" units="days">
  <owner>gab@chromium.org</owner>
  <obsolete>
    Deprecated as of 9/2015.
  </obsolete>
  <summary>
    Logged on startup when creating field trials from the variations seed if the
    system clock is behind the kVariationsSeedDate by a day or more. Used as an
    experiment to see whether the system clock could be used to discard very old
    seeds.
  </summary>
</histogram>

<histogram name="Variations.SeedEmpty" enum="VariationsSeedEmpty">
  <owner>asvitkine@chromium.org</owner>
  <summary>
    Records whether the variations seed in local state is empty (does not exist)
    on startup.
  </summary>
</histogram>

<histogram name="Variations.SeedFetchResponseCode" enum="HttpResponseCode">
  <owner>asvitkine@chromium.org</owner>
  <summary>
    The counts of HTTP response codes encountered by VariationsService when
    attempting to fetch a variations seed from the server.
  </summary>
</histogram>

<histogram name="Variations.SeedFreshness" units="minutes">
  <owner>asvitkine@chromium.org</owner>
  <summary>
    The time interval between when the variations seed was last downloaded and
    when it was used.
  </summary>
</histogram>

<histogram name="Variations.SeedStoreResult" enum="VariationsSeedStoreResult">
  <owner>asvitkine@chromium.org</owner>
  <summary>
    Records the result of storing the variations seed that was received from the
    server.
  </summary>
</histogram>

<histogram name="Variations.ServerStudyExpiredUniformity1Percent"
    enum="BooleanExpired">
  <obsolete>
    Deprecated 11/2012. No longer tracked.
  </obsolete>
  <owner>asvitkine@chromium.org</owner>
  <summary>
    Whether or not the 1-Percent uniformity trial from the Variations server was
    expired when loaded.
  </summary>
</histogram>

<histogram name="Variations.SimulateSeed.Duration" units="ms">
  <owner>asvitkine@chromium.org</owner>
  <summary>
    Records the time taken to perform variations seed simulation.

    Recorded on every variation seed simulation, which follows a fetch.
  </summary>
</histogram>

<histogram name="Variations.SimulateSeed.KillBestEffortChanges">
  <owner>asvitkine@chromium.org</owner>
  <summary>
    Records the result of variations seed simulation. Logs the number of
    experiment groups in the &quot;kill best effort&quot; category that are
    expected to change on a restart of the browser with the received seed.

    Recorded on every variation seed simulation, which follows a fetch.
  </summary>
</histogram>

<histogram name="Variations.SimulateSeed.KillCriticalChanges">
  <owner>asvitkine@chromium.org</owner>
  <summary>
    Records the result of variations seed simulation. Logs the number of
    experiment groups in the &quot;kill critical&quot; category that are
    expected to change on a restart of the browser with the received seed.

    Recorded on every variation seed simulation, which follows a fetch.
  </summary>
</histogram>

<histogram name="Variations.SimulateSeed.NormalChanges">
  <owner>asvitkine@chromium.org</owner>
  <summary>
    Records the result of variations seed simulation. Logs the number of
    experiment groups in the &quot;normal&quot; category that are expected to
    change on a restart of the browser with the received seed.

    Recorded on every variation seed simulation, which follows a fetch.
  </summary>
</histogram>

<histogram name="Variations.StoreSeed.DeltaSize" units="KiB">
  <owner>asvitkine@chromium.org</owner>
  <summary>
    On successful save of a delta-compressed variations seed, records the size
    of the delta in KiB.
  </summary>
</histogram>

<histogram name="Variations.StoreSeed.DeltaSize.ReductionPercent" units="%">
  <owner>asvitkine@chromium.org</owner>
  <summary>
    On successful save of a delta-compressed variations seed, records the size
    of the delta as a percentage of the decoded seed size.
  </summary>
</histogram>

<histogram name="Variations.StoreSeed.GzipSize" units="KiB">
  <owner>asvitkine@chromium.org</owner>
  <summary>
    Records the size of the gzip-compressed variations seed in KiB.
  </summary>
</histogram>

<histogram name="Variations.StoreSeed.GzipSize.ReductionPercent" units="%">
  <owner>asvitkine@chromium.org</owner>
  <summary>
    Records the size of the gzip-compressed variations seed as a percentage of
    the decoded seed size. Note that variations seed could be first
    delta-compressed and then gzip-compressed. In this case we record
    gzip-compressed seed size as a percentage of the delta-compressed seed size.
  </summary>
</histogram>

<histogram name="Variations.StoreSeed.Size" units="KiB">
  <owner>asvitkine@chromium.org</owner>
  <summary>
    On successful save of a non-delta-compressed variations seed, records the
    size of the received seed in KiB.
  </summary>
</histogram>

<histogram name="Variations.StoreSeedSignature" enum="VariationSeedSignature">
  <owner>asvitkine@chromium.org</owner>
  <summary>
    The result of verifying the variations seed signature, recorded when the
    variations seed is loaded from Local State.
  </summary>
</histogram>

<histogram name="Variations.StringsOverridden" units="strings">
  <owner>asvitkine@chromium.org</owner>
  <summary>
    Records the number of UI strings overriden for each study that overrides
    strings. Recorded at start up when each study is evaluated.
  </summary>
</histogram>

<histogram name="Variations.TimeSinceLastFetchAttempt" units="minutes">
  <owner>asvitkine@chromium.org</owner>
  <summary>
    The time since the previous attempt to fetch the variations seed within the
    same session, with 0 indicating that this is the first attempt. Recorded
    when a variations seed fetch is attempted by the VariationsService.
  </summary>
</histogram>

<histogram name="Variations.UniformityTrialExpired" enum="BooleanHit">
  <obsolete>
    Deprecated 1/2013. No longer tracked.
  </obsolete>
  <owner>asvitkine@chromium.org</owner>
  <summary>
    A count of the number of times we hit the code where the
    UMA-Uniformity-Trial-1-Percent field trial is disabled as a result of the
    expiration check.
  </summary>
</histogram>

<histogram name="Variations.UniformityTrialGroupNotActive"
    enum="UniformityTrialGroupNotActive">
  <obsolete>
    Deprecated 1/2013. No longer tracked.
  </obsolete>
  <owner>asvitkine@chromium.org</owner>
  <summary>
    Tracks whether the UMA-Uniformity-Trial-1-Percent field trial was not active
    and which factors contributed to it.
  </summary>
</histogram>

<histogram name="Variations.UserChannel" enum="UserChannels">
  <owner>asvitkine@chromium.org</owner>
  <summary>
    Log the user channel assigned at browser startup used for evaluating the
    variations seeds.
  </summary>
</histogram>

<histogram name="VideoPlayer.CastAPIExtensionStatus"
    enum="VideoPlayerCastAPIExtensionStatus">
  <owner>yoshiki@chromium.org</owner>
  <summary>
    Chrome OS Video Player: the results of the cast API extension load. This is
    recorded after the initialization of the extension is finished.
  </summary>
</histogram>

<histogram name="VideoPlayer.CastedVideoLength" units="seconds">
  <owner>yoshiki@chromium.org</owner>
  <summary>
    Chrome OS Video Player: the length of casted video (in seconds).
  </summary>
</histogram>

<histogram name="VideoPlayer.NumberOfCastDevices">
  <owner>yoshiki@chromium.org</owner>
  <summary>
    Chrome OS Video Player: the number of cast devices. This is recorded when
    the cast extension finishes the discovery.
  </summary>
</histogram>

<histogram name="VideoPlayer.NumberOfOpenedFiles">
  <owner>yoshiki@chromium.org</owner>
  <summary>
    Chrome OS Video Player: the number of files being opened on launch.
  </summary>
</histogram>

<histogram name="VideoPlayer.PlayType" enum="VideoPlayerPlayType">
  <owner>yoshiki@chromium.org</owner>
  <summary>
    Chrome OS Video Player: type of playback (eg. local play, cast). This is
    recorded when a video starts playing.
  </summary>
</histogram>

<histogram name="Viewport.DidScalePage" enum="BooleanDidScalePage">
  <owner>bokan@chromium.org</owner>
  <summary>
    Tracks the proportion of non-mobile optimized (i.e. zoom disabled or layout
    width matches viewport) page views that had a user-initiated page scale
    (e.g. pinch-zoom, double-tap). Recorded on navigation to a new page - on
    Android only.
  </summary>
</histogram>

<histogram name="Viewport.MaxPageScale" enum="PageScaleFactorRange">
  <owner>bokan@chromium.org</owner>
  <summary>
    Tracks the maximum scale factor that a user has scaled to over the lifetime
    of the page. The scale is counted at pinch end (e.g. zooming to 300% and
    back out to 150% in one gesture would count as 150%). Reported only on
    non-mobile optimized pages (i.e. zoom disabled or layout width matches
    viewport) which have had a page scale changing gesture. Recorded on
    navigation to a new page - on Android only.
  </summary>
</histogram>

<histogram name="Viewport.MetaTagType" enum="MetaTagTypeEnum">
  <owner>bokan@chromium.org</owner>
  <summary>
    The viewport meta tag type seen on each page load. Only recorded on Android.
  </summary>
</histogram>

<histogram name="Viewport.OverviewZoom" units="%">
  <owner>bokan@chromium.org</owner>
  <summary>
    The screen width as a percentage of viewport width (i.e. zoom at which we
    can see the whole page). Only recorded on Android and for viewport meta tags
    with constant width.
  </summary>
</histogram>

<histogram name="VirtualKeyboard.KeyboardControlEvent"
    enum="KeyboardControlEvent">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    A count of various control events that can occur on the virtual keyboard,
    such as showing and hiding.
  </summary>
</histogram>

<histogram name="VirtualKeyboard.KeystrokesBetweenBackspace">
  <obsolete>
    Deprecated 04/2016 as doesn't have data nor owner.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Counts the number of keys typed by the virtual keyboard between each
    backspace. This metric provides a rough approximation of an error rate for
    the virtual keyboard.
  </summary>
</histogram>

<histogram name="Wallet.ApiCallDuration.AcceptLegalDocuments" units="ms">
  <owner>estade@chromium.org</owner>
  <summary>
    Measures the time taken by Google Online Wallet server's accept legal
    document API call.
  </summary>
</histogram>

<histogram name="Wallet.ApiCallDuration.AuthenticateInstrument" units="ms">
  <owner>estade@chromium.org</owner>
  <summary>
    Measures the time taken by Google Online Wallet server's authenticate
    instrument API call.
  </summary>
</histogram>

<histogram name="Wallet.ApiCallDuration.GetFullWallet" units="ms">
  <owner>estade@chromium.org</owner>
  <summary>
    Measures the time taken by Google Online Wallet server's get full wallet API
    call.
  </summary>
</histogram>

<histogram name="Wallet.ApiCallDuration.GetWalletItems" units="ms">
  <owner>estade@chromium.org</owner>
  <summary>
    Measures the time taken by Google Online Wallet server's get wallet items
    API call.
  </summary>
</histogram>

<histogram name="Wallet.ApiCallDuration.SaveAddress" units="ms">
  <obsolete>
    Deprecated as of 7/2013, replaced by Wallet.ApiCallDuration.SaveToWallet.
  </obsolete>
  <owner>estade@chromium.org</owner>
  <summary>
    Measures the time taken by Google Online Wallet server's save address API
    call.
  </summary>
</histogram>

<histogram name="Wallet.ApiCallDuration.SaveInstrument" units="ms">
  <obsolete>
    Deprecated as of 7/2013, replaced by Wallet.ApiCallDuration.SaveToWallet.
  </obsolete>
  <owner>estade@chromium.org</owner>
  <summary>
    Measures the time taken by Google Online Wallet server's save instrument API
    call.
  </summary>
</histogram>

<histogram name="Wallet.ApiCallDuration.SaveInstrumentAndAddress" units="ms">
  <obsolete>
    Deprecated as of 7/2013, replaced by Wallet.ApiCallDuration.SaveToWallet.
  </obsolete>
  <owner>estade@chromium.org</owner>
  <summary>
    Measures the time taken by Google Online Wallet server's save instument and
    address API call.
  </summary>
</histogram>

<histogram name="Wallet.ApiCallDuration.SaveToWallet" units="ms">
  <owner>estade@chromium.org</owner>
  <summary>
    Measures the time taken by Google Online Wallet server's save to wallet API
    call.
  </summary>
</histogram>

<histogram name="Wallet.ApiCallDuration.SendStatus" units="ms">
  <owner>estade@chromium.org</owner>
  <summary>
    Measures the time taken by Google Online Wallet server's send status API
    call.
  </summary>
</histogram>

<histogram name="Wallet.ApiCallDuration.UnknownApiCall" units="ms">
  <owner>estade@chromium.org</owner>
  <summary>
    Measures the time taken by Google Online Wallet server's unknown API calls.
  </summary>
</histogram>

<histogram name="Wallet.ApiCallDuration.UpdateAddress" units="ms">
  <obsolete>
    Deprecated as of 7/2013, replaced by Wallet.ApiCallDuration.SaveToWallet.
  </obsolete>
  <owner>estade@chromium.org</owner>
  <summary>
    Measures the time taken by Google Online Wallet server's update address API
    call.
  </summary>
</histogram>

<histogram name="Wallet.ApiCallDuration.UpdateInstrument" units="ms">
  <obsolete>
    Deprecated as of 7/2013, replaced by Wallet.ApiCallDuration.SaveToWallet.
  </obsolete>
  <owner>estade@chromium.org</owner>
  <summary>
    Measures the time taken by Google Online Wallet server's update instument
    API call.
  </summary>
</histogram>

<histogram name="Wallet.MalformedResponse" enum="WalletApiCall">
  <owner>estade@chromium.org</owner>
  <summary>
    Counts the number of times each Wallet API failed due to being unable to
    parse the response.
  </summary>
</histogram>

<histogram name="Wallet.ResponseCode" enum="HttpResponseCode">
  <owner>estade@chromium.org</owner>
  <summary>HTTP response codes seen by Wallet client.</summary>
</histogram>

<histogram name="Web.CertVerifyAgreement" enum="WebCertVerifyAgreement">
  <owner>eugenebut@chromium.com</owner>
  <summary>
    [iOS] Reports certificate verification mismatch between SecTrust API and
    CertVerifier. SecTrust API is used for making load/no-load decision and
    CertVerifier is used for getting the reason of verification failure. It is
    expected that mismatches will happen for those 2 approaches (e.g. SecTrust
    API considers cert as good, but CertVerifier considers same cert as bad).
    This metric helps to understand how common mismatches are.
  </summary>
</histogram>

<histogram name="Webapp.Splashscreen.BackgroundColor"
    enum="SplashscreenColorStatus">
  <owner>mlamouri@chromium.org</owner>
  <summary>
    Records the status of the splashscreen's background color (default or
    custom).
  </summary>
</histogram>

<histogram name="Webapp.Splashscreen.Duration" units="ms">
  <owner>mlamouri@chromium.org</owner>
  <summary>Records the time during which the splashscreen was visible.</summary>
</histogram>

<histogram name="Webapp.Splashscreen.Hides" enum="SplashscreenHidesReason">
  <owner>mlamouri@chromium.org</owner>
  <summary>Records the signal that was used to hide the splashscreen.</summary>
</histogram>

<histogram name="Webapp.Splashscreen.Icon.Size" units="dp">
  <owner>mlamouri@chromium.org</owner>
  <summary>
    Records the size of the icon used to construct the splashscreen in device
    pixels (ie. real size divided by device pixel density). This is only
    recording one dimension, the icon being square.
  </summary>
</histogram>

<histogram name="Webapp.Splashscreen.Icon.Type" enum="SplashscreenIconType">
  <owner>mlamouri@chromium.org</owner>
  <summary>
    Records the origin of the icon used to construct the splashscreen.
  </summary>
</histogram>

<histogram name="Webapp.Splashscreen.ThemeColor" enum="SplashscreenColorStatus">
  <owner>mlamouri@chromium.org</owner>
  <summary>
    Records the status of the splashscreen's theme color (default or custom).
  </summary>
</histogram>

<histogram name="WebAudio.AudioDestination.CallbackBufferSize">
  <owner>rtoy@chromium.org</owner>
  <owner>hongchan@chromium.org</owner>
  <summary>
    The callback buffer size (in audio frames) for WebAudio rendering between
    the WebAudio graph and the audio device thread.  This can differ from the
    value recommended by the audio hardware due to internal constraints in
    WebAudio. Recorded for every WebAudio AudioContext that is created.
  </summary>
</histogram>

<histogram name="WebAudio.AudioDestination.HardwareBufferSize">
  <owner>rtoy@chromium.org</owner>
  <owner>hongchan@chromium.org</owner>
  <summary>
    The buffer size (in audio frames) for WebAudio rendering recommended by the
    audio hardware.  Recorded for every WebAudio AudioContext that is created.
  </summary>
</histogram>

<histogram name="WebAudio.BiquadFilter.Q.Highpass">
  <owner>rtoy@chromium.org</owner>
  <owner>hongchan@chromium.org</owner>
  <summary>
    The Q value (in 0.25 dB steps) used for a highpass BiquadFilter. Recorded
    each time the value is set for a highpass filter via the .value setter or
    the automation methods linearRampToValueAtTime, exponentialValueAtTime, and
    setValueAtTime.
  </summary>
</histogram>

<histogram name="WebAudio.BiquadFilter.Q.Lowpass">
  <owner>rtoy@chromium.org</owner>
  <owner>hongchan@chromium.org</owner>
  <summary>
    The Q value (in 0.25 dB steps) used for a lowpass BiquadFilter. Recorded
    each time the value is set for a lowpass filter via the .value setter or the
    automation methods linearRampToValueAtTime, exponentialValueAtTime, and
    setValueAtTime.
  </summary>
</histogram>

<histogram name="WebAudio.IIRFilterNode.Order">
  <owner>rtoy@chromium.org</owner>
  <owner>hongchan@chromium.org</owner>
  <summary>
    The order of the WebAudio IIRFilterNode.  The order is one less than the
    number of feedback coefficients used in the denominator of the IIRFilter
    transfer function.  Recorded each time an IIRFilter is constructed.
  </summary>
</histogram>

<histogram name="WebController.CertVerificationErrorsCacheHit"
    enum="BooleanCacheHit">
  <owner>eugenebut@chromium.org</owner>
  <summary>
    [iOS] Report cache hit/miss for WKWebView cert verification. WKWebView Web
    Controller has a cache of pending cert verification results to avoid extra
    verifications when presenting SSL interstitial. This metric helps to
    understand whether or not cache miss is possible.
  </summary>
</histogram>

<histogram name="WebController.EmptyNavigationManagerCausedByStopLoading"
    enum="Boolean">
  <owner>eugenebut@chromium.org</owner>
  <summary>
    [iOS] Chrome for iOS crashes because NavigationManager does not have any
    navigation items and visible navigation item is dereferenced
    (crbug.com/565457). The assumption is that crash occurs if pending load was
    stopped for a child window. This metric will prove or disprove that
    assumption.
  </summary>
</histogram>

<histogram name="WebController.ExternalURLRequestBlocking"
    enum="IOSExternalURLRequestStatus">
  <owner>jyquinn@chromium.org</owner>
  <summary>
    [iOS] Measures the proportion of external URL requests that originate from a
    subframe without any user interaction (e.g. an advertisement contains an
    iframe directed at the App Store).
  </summary>
</histogram>

<histogram name="WebCore.Animation.CSSProperties" enum="MappedCSSProperties">
  <owner>ajuma@chromium.org</owner>
  <summary>
    Counts the number of times each CSS property is animated. There is no limit
    on the number of times each property is counted per page view -- a property
    that is animated multiple times during a single page view is counted each
    time it animates.
  </summary>
</histogram>

<histogram name="WebCore.CanvasContextUsage" enum="CanvasContextUsage">
  <owner>zmin@chromium.org</owner>
  <owner>junov@chromium.org</owner>
  <summary>
    The usage of Canvas 2D Context API. Logged when the particular API is used.
  </summary>
</histogram>

<histogram name="WebCore.DistillabilityUs" units="microseconds">
  <owner>wychen@chromium.org</owner>
  <summary>
    The time spent on collecting the statistics of the document in the main
    frame. These statistics would be used as features to classify whether the
    page is suitable for DOM distiller.
  </summary>
</histogram>

<histogram name="WebCore.Document.execCommand" enum="MappedEditingCommands">
  <owner>yoichio@chromium.org</owner>
  <summary>
    Counts the number of times each document.execCommand is executed. This
    doesn't count commands not supported by Blink.
  </summary>
</histogram>

<histogram name="WebCore.Editing.Commands" enum="MappedEditingCommands">
  <owner>yoichio@chromium.org</owner>
  <summary>
    Counts the number of times each Editor::Command::execute is called. This
    doesn't count commands not supported by Blink.
  </summary>
</histogram>

<histogram name="WebCore.FeatureObserver" enum="FeatureObserver">
  <owner>dglazkov@chromium.org</owner>
  <summary>
    Count of how many instances of WebCore::Page use various features. Each
    WebCore::Page instance has a WebCore::UseCounter instance. It records and
    reports feature usage (e.g. via UseCounter::count() method). NOTE: dev
    numbers from 34.0.1800.1 to 34.0.1833.4 are wrong (see crbug.com/341631).
  </summary>
</histogram>

<histogram name="WebCore.FeatureObserver.CSSProperties"
    enum="MappedCSSProperties">
  <owner>mikelawther@chromium.org</owner>
  <summary>
    Records usage of CSS properties used on a page, either statically or
    dynamically, from the time the page is initialised to when it is closed or
    navigated away from. Each property is counted at most once per page per
    view.
  </summary>
  <details>
    Every time a CSS property is parsed on a page, that property is recorded as
    having been used. The histogram is updated with this data whenever a page is
    closed, or a page navigation happens. Each histogram bucket corresponds to a
    CSS property (eg width, border-radius). The exception is the bucket numbered
    '1' - this counts the number of pages that CSS properties were counted on.

    These numbers give the percentage of pages that use a CSS property. For
    example, if the 'border-radius' histogram bucket has a count of 250, and the
    page count bucket (i.e. bucket number 1) has a count of 1000 - this means
    that 1000 pages were recorded, and border-radius was used on 25% of those
    pages.

    Internally, each WebCore::Page has a WebCore::UseCounter instance, with
    booleans recording use of each CSS property - one boolean per property. Upon
    destruction of the WebCore::Page (e.g. by the user closing the tab), or a
    page navigation happening, the histogram is updated. For each boolean that
    is set to True, the corresponding histogram bucket for that CSS property is
    incremented by 1. The page count bucket (i.e. bucket number 1) is always
    incremented by 1 on each histogram update.
  </details>
</histogram>

<histogram name="WebCore.Framebust" enum="FramebustPermissions">
  <owner>japhet@chromium.org</owner>
  <summary>
    Records instances of child frames navigating the top frame. Includes whether
    or not the navigation would have been permitted if not for our special case
    for 'framebusting', the practice of ensuring a given document is never
    displayed in a frame.
  </summary>
</histogram>

<histogram name="WebCore.IndexedDB.BackingStore.ConsistencyError"
    enum="IDBLevelDBBackingStoreInternalErrorType">
  <owner>dgrogan@chromium.org</owner>
  <summary>
    Methods that encountered consistency errors. Such errors probably point to a
    bug in our code.
  </summary>
</histogram>

<histogram name="WebCore.IndexedDB.BackingStore.InternalError"
    enum="IDBLevelDBBackingStoreInternalErrorType">
  <obsolete>
    As of chrome 26, use {Consistency, Read, Write}Error instead.
  </obsolete>
  <owner>dgrogan@chromium.org</owner>
  <summary>
    Count of internal IndexedDB errors (data corruption, I/O errors, etc)
    encountered.
  </summary>
</histogram>

<histogram name="WebCore.IndexedDB.BackingStore.OpenStatus"
    enum="IDBLevelDBBackingStoreOpenResult">
  <owner>dgrogan@chromium.org</owner>
  <summary>
    Count of the different success and failure modes when opening an IndexedDB
    backing store - clean open, successful open with recovery, failed recovery,
    etc. Includes all hosts.
  </summary>
</histogram>

<histogram name="WebCore.IndexedDB.BackingStore.OpenStatus.Docs"
    enum="IDBLevelDBBackingStoreOpenResult">
  <owner>dgrogan@chromium.org</owner>
  <summary>
    Count of the different success and failure modes when opening an IndexedDB
    backing store - clean open, successful open with recovery, failed recovery,
    etc. Only for docs.google.com.
  </summary>
</histogram>

<histogram name="WebCore.IndexedDB.BackingStore.OverlyLargeOriginLength"
    units="characters">
  <owner>dgrogan@chromium.org</owner>
  <summary>
    Length of leveldb directories that cause paths to not fit in the filesystem,
    either because the individual component is too long or the overall path is
    larger than MAX_PATH.
  </summary>
</histogram>

<histogram name="WebCore.IndexedDB.BackingStore.ReadError"
    enum="IDBLevelDBBackingStoreInternalErrorType">
  <owner>dgrogan@chromium.org</owner>
  <summary>
    Methods that encountered leveldb errors while trying to read from disk.
  </summary>
</histogram>

<histogram name="WebCore.IndexedDB.BackingStore.WriteError"
    enum="IDBLevelDBBackingStoreInternalErrorType">
  <owner>dgrogan@chromium.org</owner>
  <summary>
    Methods that encountered leveldb errors while trying to write to disk.
  </summary>
</histogram>

<histogram name="WebCore.IndexedDB.Context.ForcedCloseReason"
    enum="IDBContextForcedCloseReason">
  <owner>dgrogan@chromium.org</owner>
  <summary>The reason that a forced-close of a backing store occurred.</summary>
</histogram>

<histogram name="WebCore.IndexedDB.Database.OutstandingTransactionCount"
    units="transactions">
  <owner>jsbell@chromium.org</owner>
  <summary>
    Number of outstanding transactions (running, blocked) in database when a new
    transaction is created.
  </summary>
</histogram>

<histogram name="WebCore.IndexedDB.FrontEndAPICalls"
    enum="IndexedDatabaseMethods">
  <owner>dgrogan@chromium.org</owner>
  <summary>
    Count total number of front end API calls of IndexedDB methods.
  </summary>
</histogram>

<histogram name="WebCore.IndexedDB.LevelDB.CloseTime" units="ms">
  <owner>cmumford@chromium.org</owner>
  <summary>
    The time that it takes to close IndexedDB's LevelDB backing store.
  </summary>
</histogram>

<histogram name="WebCore.IndexedDB.LevelDB.FreeDiskSpaceFailure"
    enum="LevelDBErrorCount">
  <owner>dgrogan@chromium.org</owner>
  <summary>
    Count of how many times LevelDBDatabase got an error trying to check free
    disk space.
  </summary>
</histogram>

<histogram name="WebCore.IndexedDB.LevelDB.OpenFailureFreeDiskSpace" units="Kb">
  <owner>dgrogan@chromium.org</owner>
  <summary>
    Amount of free disk space on the partition/volume/etc where LevelDB failed
    to open.
  </summary>
</histogram>

<histogram name="WebCore.IndexedDB.LevelDB.OpenSuccessFreeDiskSpace" units="Kb">
  <owner>dgrogan@chromium.org</owner>
  <summary>
    Amount of free disk space on the partition/volume/etc where LevelDB was
    successfully opened.
  </summary>
</histogram>

<histogram name="WebCore.IndexedDB.LevelDB.OpenTime" units="ms">
  <owner>cmumford@chromium.org</owner>
  <summary>
    The time that it takes to open IndexedDB's LevelDB backing store.
  </summary>
</histogram>

<histogram name="WebCore.IndexedDB.LevelDB.PutTime" units="ms">
  <owner>cmumford@chromium.org</owner>
  <summary>
    The time that it takes to write the data IndexedDB to the LevelDB backing
    store for a put operation.
  </summary>
</histogram>

<histogram name="WebCore.IndexedDB.LevelDB.Transaction.CommitTime" units="ms">
  <owner>cmumford@chromium.org</owner>
  <summary>
    The time that it takes to commit an IndexedDB transaction to its LevelDB
    backing store.
  </summary>
</histogram>

<histogram name="WebCore.IndexedDB.LevelDB.WriteTime" units="ms">
  <owner>cmumford@chromium.org</owner>
  <summary>
    The time that it takes to write data to an IndexedDB's LevelDB backing
    store.
  </summary>
</histogram>

<histogram name="WebCore.IndexedDB.LevelDBOpenErrors" enum="LevelDBErrorTypes">
  <owner>dgrogan@chromium.org</owner>
  <summary>
    Error classes returned by LevelDB when it failed to open a database.
  </summary>
</histogram>

<histogram name="WebCore.IndexedDB.LevelDBOpenErrors.BFE"
    enum="PlatformFileError">
  <owner>cmumford@chromium.org</owner>
  <summary>
    Errors (base::File::Error) encountered by a single LevelDBEnv method when
    opening an IndexedDB instance.
  </summary>
</histogram>

<histogram name="WebCore.IndexedDB.LevelDBOpenErrors.Corruption"
    enum="LevelDBCorruptionTypes">
  <owner>dgrogan@chromium.org</owner>
  Types of corruption that LevelDB encounters when opening a database.
</histogram>

<histogram name="WebCore.IndexedDB.LevelDBOpenErrors.EnvMethod"
    enum="LevelDBIOErrorMethods">
  <owner>dgrogan@chromium.org</owner>
  <summary>
    LevelDBEnv methods that generated IO errors when opening a database.
  </summary>
</histogram>

<histogram name="WebCore.IndexedDB.LevelDBOpenErrors.Errno"
    enum="OSAgnosticErrno">
  <owner>dgrogan@chromium.org</owner>
  <obsolete>
    Deprecated 2015-05. As of M43 use WebCore.IndexedDB.LevelDBOpenErrors.BFE.
  </obsolete>
  <summary>
    Errno errors encountered by a single LevelDBEnv method when opening an
    IndexedDB instance.
  </summary>
</histogram>

<histogram name="WebCore.IndexedDB.LevelDBOpenErrors.PFE"
    enum="PlatformFileError">
  <owner>dgrogan@chromium.org</owner>
  <obsolete>
    Deprecated 2015-05. As of M43 use WebCore.IndexedDB.LevelDBOpenErrors.BFE.
  </obsolete>
  <summary>
    PlatformFileErrors encountered by a single LevelDBEnv method when opening an
    IndexedDB instance.
  </summary>
</histogram>

<histogram name="WebCore.IndexedDB.LevelDBReadErrors" enum="LevelDBErrorTypes">
  <owner>dgrogan@chromium.org</owner>
  <summary>
    Error classes returned by LevelDB when it failed to read a database.
  </summary>
</histogram>

<histogram name="WebCore.IndexedDB.LevelDBReadErrors.BFE"
    enum="PlatformFileError">
  <owner>cmumford@chromium.org</owner>
  <summary>
    Errors (base::File::Error) encountered by a single LevelDBEnv method when
    reading from an IndexedDB instance.
  </summary>
</histogram>

<histogram name="WebCore.IndexedDB.LevelDBReadErrors.Corruption"
    enum="LevelDBCorruptionTypes">
  <owner>dgrogan@chromium.org</owner>
  Types of corruption that LevelDB encounters when reading a database.
</histogram>

<histogram name="WebCore.IndexedDB.LevelDBReadErrors.EnvMethod"
    enum="LevelDBIOErrorMethods">
  <owner>dgrogan@chromium.org</owner>
  <summary>
    LevelDBEnv methods that generated IO errors when reading a database.
  </summary>
</histogram>

<histogram name="WebCore.IndexedDB.LevelDBReadErrors.Errno"
    enum="OSAgnosticErrno">
  <owner>dgrogan@chromium.org</owner>
  <obsolete>
    Deprecated 2015-05. As of M43 use WebCore.IndexedDB.LevelDBReadErrors.BFE.
  </obsolete>
  <summary>
    Errno errors encountered by a single LevelDBEnv method when reading an
    IndexedDB instance.
  </summary>
</histogram>

<histogram name="WebCore.IndexedDB.LevelDBReadErrors.PFE"
    enum="PlatformFileError">
  <owner>dgrogan@chromium.org</owner>
  <obsolete>
    Deprecated 2015-05. As of M43 use WebCore.IndexedDB.LevelDBReadErrors.BFE.
  </obsolete>
  <summary>
    PlatformFileErrors encountered by a single LevelDBEnv method when opening an
    IndexedDB instance.
  </summary>
</histogram>

<histogram name="WebCore.IndexedDB.LevelDBWriteErrors" enum="LevelDBErrorTypes">
  <owner>dgrogan@chromium.org</owner>
  <summary>
    Error classes returned by LevelDB when it failed to write to a database.
  </summary>
</histogram>

<histogram name="WebCore.IndexedDB.LevelDBWriteErrors.BFE"
    enum="PlatformFileError">
  <owner>cmumford@chromium.org</owner>
  <summary>
    Errors (base::File::Error) encountered by a single LevelDBEnv method when
    writing to an IndexedDB instance.
  </summary>
</histogram>

<histogram name="WebCore.IndexedDB.LevelDBWriteErrors.Corruption"
    enum="LevelDBCorruptionTypes">
  <owner>dgrogan@chromium.org</owner>
  Types of corruption returned by LevelDB when it failed to write to a database.
</histogram>

<histogram name="WebCore.IndexedDB.LevelDBWriteErrors.EnvMethod"
    enum="LevelDBIOErrorMethods">
  <owner>dgrogan@chromium.org</owner>
  <summary>
    LevelDBEnv methods that generated IO errors when writing to a database.
  </summary>
</histogram>

<histogram name="WebCore.IndexedDB.LevelDBWriteErrors.Errno"
    enum="OSAgnosticErrno">
  <owner>dgrogan@chromium.org</owner>
  <obsolete>
    Deprecated 2015-05. As of M43 use WebCore.IndexedDB.LevelDBWriteErrors.BFE.
  </obsolete>
  <summary>
    Errno errors encountered by a single LevelDBEnv method when writing to an
    IndexedDB instance.
  </summary>
</histogram>

<histogram name="WebCore.IndexedDB.LevelDBWriteErrors.PFE"
    enum="PlatformFileError">
  <owner>dgrogan@chromium.org</owner>
  <obsolete>
    Deprecated 2015-05. As of M43 use WebCore.IndexedDB.LevelDBWriteErrors.BFE.
  </obsolete>
  <summary>
    PlatformFileErrors encountered by a single LevelDBEnv method when writing to
    an IndexedDB instance.
  </summary>
</histogram>

<histogram name="WebCore.IndexedDB.OpenTime.Blocked" units="ms">
  <owner>cmumford@chromium.org</owner>
  <summary>
    The delay between the receipt of the request to open an IndexedDB database
    and the firing of the blocked event.
  </summary>
</histogram>

<histogram name="WebCore.IndexedDB.OpenTime.Error" units="ms">
  <owner>cmumford@chromium.org</owner>
  <summary>
    The delay between the receipt of the request to open an IndexedDB database
    and the firing of the error event.
  </summary>
</histogram>

<histogram name="WebCore.IndexedDB.OpenTime.Success" units="ms">
  <owner>cmumford@chromium.org</owner>
  <summary>
    The delay between the receipt of the request to open an IndexedDB database
    and the firing of the success event.
  </summary>
</histogram>

<histogram name="WebCore.IndexedDB.OpenTime.UpgradeNeeded" units="ms">
  <owner>cmumford@chromium.org</owner>
  <summary>
    The delay between the receipt of the request to open an IndexedDB database
    and the firing of the upgradeneeded event.
  </summary>
</histogram>

<histogram name="WebCore.IndexedDB.Schema.Index.KeyPathType"
    enum="IDBKeyPathType">
  <owner>jsbell@chromium.org</owner>
  <summary>
    Records the 'keyPath' type (none, string, or array) during IDBObjectStore's
    createIndex operation. See http://www.w3.org/TR/IndexedDB/
  </summary>
</histogram>

<histogram name="WebCore.IndexedDB.Schema.Index.MultiEntry" enum="Boolean">
  <owner>jsbell@chromium.org</owner>
  <summary>
    Records the 'multiEntry' flag value during IDBObjectStore's createIndex
    operation. See http://www.w3.org/TR/IndexedDB/
  </summary>
</histogram>

<histogram name="WebCore.IndexedDB.Schema.Index.Unique" enum="Boolean">
  <owner>jsbell@chromium.org</owner>
  <summary>
    Records the 'unique' flag value during IDBObjectStore's createIndex
    operation. See http://www.w3.org/TR/IndexedDB/
  </summary>
</histogram>

<histogram name="WebCore.IndexedDB.Schema.ObjectStore.AutoIncrement"
    enum="Boolean">
  <owner>jsbell@chromium.org</owner>
  <summary>
    Records the 'autoIncrement' flag value during IDBDatabase's
    createObjectStore operation. See http://www.w3.org/TR/IndexedDB/
  </summary>
</histogram>

<histogram name="WebCore.IndexedDB.Schema.ObjectStore.KeyPathType"
    enum="IDBKeyPathType">
  <owner>jsbell@chromium.org</owner>
  <summary>
    Records the 'keyPath' type (none, string, or array) during IDBDatabase's
    createObjectStore operation. See http://www.w3.org/TR/IndexedDB/
  </summary>
</histogram>

<histogram name="WebCore.PreloadDelayMs" units="ms">
  <owner>csharrison@chromium.org</owner>
  <summary>
    The delay between when the preload scanner discovers a resource on the
    parser thread and when the preload request is issued on the main thread.
  </summary>
</histogram>

<histogram name="WebCore.ResourceFetcher.ActionUponResourceRequest"
    enum="ActionUponResourceRequest">
  <owner>clamy@chromium.org</owner>
  <summary>
    The resulting action (e.g. load resource, use resource from in-memory
    cache...) upon a resource request.
  </summary>
</histogram>

<histogram name="WebCore.ResourceFetcher.HitCount">
  <owner>clamy@chromium.org</owner>
  <summary>
    Number of dead resources found in the memory cache over the lifetime of the
    ResourceFetcher.
  </summary>
</histogram>

<histogram name="WebCore.ResourceFetcher.LoadCount">
  <owner>clamy@chromium.org</owner>
  <summary>
    Number of resources that needed to be loaded by the ResourceFetcher over its
    lifetime.
  </summary>
</histogram>

<histogram name="WebCore.ResourceFetcher.ResourceHasClientUponCacheHit"
    enum="ResourceHasClient">
  <owner>clamy@chromium.org</owner>
  <summary>
    Whether the resource in the cache is being used by at least one client (live
    resource) or not (dead resource) upon a cache hit.
  </summary>
</histogram>

<histogram name="WebCore.ResourceFetcher.ResourceTypeUponCacheHit"
    enum="ResourceType">
  <owner>clamy@chromium.org</owner>
  <summary>
    The type of the resource (e.g. image, script...) upon a cache hit.
  </summary>
</histogram>

<histogram name="WebCore.ResourceFetcher.RevalidateCount">
  <owner>clamy@chromium.org</owner>
  <summary>
    Number of dead resources that needed to be revalidated by the
    ResourceFetcher over its lifetime.
  </summary>
</histogram>

<histogram name="WebCore.ScriptedIdleTaskController.IdleCallbackDeadline"
    units="ms">
  <owner>rmcilroy@chromium.org</owner>
  <summary>
    The amount of time allotted to a requestIdleCallback callback, i.e., the
    difference between the time when it is called and when its deadline expires.
  </summary>
</histogram>

<histogram name="WebCore.ScriptedIdleTaskController.IdleCallbackOverrun"
    units="ms">
  <owner>rmcilroy@chromium.org</owner>
  <summary>
    The amount of time by which a requestIdleCallback callback overran its
    deadline. Callbacks which don't overrun their deadline will report an
    overrun of 0.
  </summary>
</histogram>

<histogram name="WebCore.Scripts.Async.NotStreamingReason"
    enum="NotStreamingReason">
  <owner>marja@chromium.org</owner>
  <summary>Reason for not streaming an async script.</summary>
</histogram>

<histogram name="WebCore.Scripts.Async.StartedStreaming" enum="BooleanStreamed">
  <owner>marja@chromium.org</owner>
  <summary>Whether an async script was streamed or not.</summary>
</histogram>

<histogram name="WebCore.Scripts.Deferred.NotStreamingReason"
    enum="NotStreamingReason">
  <owner>marja@chromium.org</owner>
  <summary>Reason for not streaming a deferred script.</summary>
</histogram>

<histogram name="WebCore.Scripts.Deferred.StartedStreaming"
    enum="BooleanStreamed">
  <owner>marja@chromium.org</owner>
  <summary>Whether a deferred script was streamed or not.</summary>
</histogram>

<histogram name="WebCore.Scripts.ParsingBlocking.AlreadyLoaded"
    enum="BooleanLoaded">
  <obsolete>
    Deprecated as this data was needed for streaming investigations, no longer
    needed.
  </obsolete>
  <owner>marja@chromium.org</owner>
  <summary>
    Whether a parsing blocking script was already preloaded from the net or the
    cache by the time it was needed.
  </summary>
</histogram>

<histogram name="WebCore.Scripts.ParsingBlocking.NotStreamingReason"
    enum="NotStreamingReason">
  <owner>marja@chromium.org</owner>
  <summary>Reason for not streaming a parsing blocking script.</summary>
</histogram>

<histogram name="WebCore.Scripts.ParsingBlocking.StartedStreaming"
    enum="BooleanStreamed">
  <owner>marja@chromium.org</owner>
  <summary>Whether a parsing blocking script was streamed or not.</summary>
</histogram>

<histogram name="WebCore.Scripts.ParsingBlocking.TimeBetweenLoadedAndCompiled"
    units="ms">
  <obsolete>
    Deprecated as this data was needed for streaming investigations, no longer
    needed.
  </obsolete>
  <owner>marja@chromium.org</owner>
  <summary>
    Time between the events &quot;script is loaded&quot; and &quot;script is
    compiled&quot; for parsing blocking scripts.
  </summary>
</histogram>

<histogram name="WebCore.V8DOMWindowShell.createContext.IsolatedWorld"
    units="ms">
  <obsolete>
    Deprecated 05/2013, we no longer have the code that uses this metric.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Duration of time taken to create a V8 Context for an isolated world.
  </summary>
</histogram>

<histogram name="WebCore.V8DOMWindowShell.createContext.MainWorld" units="ms">
  <obsolete>
    Deprecated 05/2013, we no longer have the code that uses this metric.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Duration of time taken to create a V8 Context for the main world.
  </summary>
</histogram>

<histogram name="WebCore.WebSocket.HandshakeResult"
    enum="WebSocketHandshakeResult">
  <owner>yhirano@chromium.org</owner>
  <owner>ricea@chromium.org</owner>
  <owner>tyoshino@chromium.org</owner>
  <summary>
    Count the number of WebSocket handshake for each result. Use this histogram
    as a baseline for investigating feature usage counters.
  </summary>
</histogram>

<histogram name="WebCore.WebSocket.PerMessageDeflateContextTakeOverMode"
    enum="WebSocketPerMessageDeflateContextTakeOverMode">
  <owner>yhirano@chromium.org</owner>
  <owner>ricea@chromium.org</owner>
  <owner>tyoshino@chromium.org</owner>
  <summary>
    Count the number of WebSockets that accepted permessage-deflate extension
    for each context take over mode. Used by the old Blink-based WebSocket
    implementation.
  </summary>
</histogram>

<histogram name="WebCore.WebSocket.ReceiveType" enum="WebSocketReceiveType">
  <owner>yhirano@chromium.org</owner>
  <owner>ricea@chromium.org</owner>
  <owner>tyoshino@chromium.org</owner>
  <summary>
    Count the number of messages for each message type and set binary type.
  </summary>
</histogram>

<histogram name="WebCore.WebSocket.SendType" enum="WebSocketSendType">
  <owner>yhirano@chromium.org</owner>
  <owner>ricea@chromium.org</owner>
  <owner>tyoshino@chromium.org</owner>
  <summary>
    Count the number of send() method calls on WebSockets for each argument
    type.
  </summary>
</histogram>

<histogram name="WebCore.XHR.send.ArrayBufferOrView"
    enum="XMLHttpRequestSendArrayBufferOrView">
  <obsolete>
    Deprecated as of 7/2014. This histogram was used to determine when it would
    be ok to remove the deprecated XMLHttpRequest.send(ArrayBuffer) overload.
    The support for ArrayBuffer was un-deprecated in the WHATWG spec for XHR,
    and subsequently un-deprecated in Blink.
  </obsolete>
  <owner>tyoshino@chromium.org</owner>
  <owner>costan@gmail.com</owner>
  <summary>
    Count the number of XHR.send() calls for each argument type to see when we
    can deprecate the ArrayBuffer type support.
  </summary>
</histogram>

<histogram name="WebFont.BlankTextShownTime" units="ms">
  <owner>kenjibaheux@chromium.org</owner>
  <owner>ksakamoto@chromium.org</owner>
  <summary>
    A histogram tracking the time we spent showing blank text because a web font
    wasn't available by the time we needed it. Measured once per @font-face that
    ended up showing blank text.
  </summary>
</histogram>

<histogram name="WebFont.CacheHit" enum="WebFontCacheHit">
  <owner>hajimehoshi@chromium.org</owner>
  <owner>kenjibaheux@chromium.org</owner>
  <owner>kouhei@chromium.org</owner>
  <owner>ksakamoto@chromium.org</owner>
  <summary>
    Recorded upon web fonts load. Counts the number of times web font is loaded
    from cache (disk cache or memory cache), fetched over network, or served
    from data URL.
  </summary>
</histogram>

<histogram name="WebFont.CORSSuccess" enum="BooleanSuccess">
  <owner>bashi@chromium.org</owner>
  <owner>kenjibaheux@chromium.org</owner>
  <summary>The success or failure of web fonts CORS-enabled fetching.</summary>
</histogram>

<histogram name="WebFont.DecodeSpeed" units="KB/s">
  <owner>kenjibaheux@chromium.org</owner>
  <owner>ksakamoto@chromium.org</owner>
  <summary>
    Uncompressed font image size divided by the duration of time OTS takes to
    decode the font image, in kilobytes per second.
  </summary>
</histogram>

<histogram name="WebFont.DiskCache.EntryAge.Evict" units="hours">
  <owner>kenjibaheux@chromium.org</owner>
  <owner>ksakamoto@chromium.org</owner>
  <summary>
    Recorded upon an eviction of a cache entry for a font in Google Fonts.
    Records the age of the cache entry.
  </summary>
</histogram>

<histogram name="WebFont.DiskCache.EntryAge.Hit" units="hours">
  <owner>kenjibaheux@chromium.org</owner>
  <owner>ksakamoto@chromium.org</owner>
  <summary>
    Recorded upon a cache hit for a font in Google Fonts. Records the age of the
    cache entry.
  </summary>
</histogram>

<histogram name="WebFont.DiskCache.ReuseCount.Evict">
  <owner>kenjibaheux@chromium.org</owner>
  <owner>ksakamoto@chromium.org</owner>
  <summary>
    When a cache entry for a font in Google Fonts is evicted, records the reuse
    count of the cache entry.
  </summary>
</histogram>

<histogram name="WebFont.DiskCache.ReuseCount.Hit">
  <owner>kenjibaheux@chromium.org</owner>
  <owner>ksakamoto@chromium.org</owner>
  <summary>
    Recorded upon a cache hit for a font in Google Fonts. Records the reuse
    count of the cache entry.
  </summary>
</histogram>

<histogram name="WebFont.DiskCacheHit" enum="WebFontDiskCacheHit">
  <owner>kenjibaheux@chromium.org</owner>
  <owner>ksakamoto@chromium.org</owner>
  <summary>
    Whether the font was in the cache or not. &quot;Previously in the
    cache&quot; means there was an evicted entry for the font in the cache.
    Recorded upon a disk cache query for a font in Google Fonts.
  </summary>
</histogram>

<histogram name="WebFont.DownloadTime.0.Under10KB" units="ms">
  <owner>kenjibaheux@chromium.org</owner>
  <owner>ksakamoto@chromium.org</owner>
  <summary>
    The time it takes for a webfont download to finish, for webfonts of under
    10KB.
  </summary>
</histogram>

<histogram name="WebFont.DownloadTime.1.10KBTo50KB" units="ms">
  <owner>kenjibaheux@chromium.org</owner>
  <owner>ksakamoto@chromium.org</owner>
  <summary>
    The time it takes for a webfont download to finish, for webfonts of
    10KB-50KB.
  </summary>
</histogram>

<histogram name="WebFont.DownloadTime.2.50KBTo100KB" units="ms">
  <owner>kenjibaheux@chromium.org</owner>
  <owner>ksakamoto@chromium.org</owner>
  <summary>
    The time it takes for a webfont download to finish, for webfonts of
    50KB-100KB.
  </summary>
</histogram>

<histogram name="WebFont.DownloadTime.3.100KBTo1MB" units="ms">
  <owner>kenjibaheux@chromium.org</owner>
  <owner>ksakamoto@chromium.org</owner>
  <summary>
    The time it takes for a webfont download to finish, for webfonts of
    100KB-1MB.
  </summary>
</histogram>

<histogram name="WebFont.DownloadTime.4.Over1MB" units="ms">
  <owner>kenjibaheux@chromium.org</owner>
  <owner>ksakamoto@chromium.org</owner>
  <summary>
    The time it takes for a webfont download to finish, for webfonts of over
    1MB.
  </summary>
</histogram>

<histogram name="WebFont.DownloadTime.LoadError" units="ms">
  <owner>kenjibaheux@chromium.org</owner>
  <owner>ksakamoto@chromium.org</owner>
  <summary>
    The time taken for a webfont download that failed. Includes aborted
    requests.
  </summary>
</histogram>

<histogram name="WebFont.FontDisplayValue" enum="FontDisplayValue">
  <owner>kenjibaheux@chromium.org</owner>
  <owner>ksakamoto@chromium.org</owner>
  <summary>
    The value of font-display @font-face descriptor. Counted only when
    explicitly specified in the @font-face rule.
  </summary>
</histogram>

<histogram name="WebFont.HadBlankText" enum="BooleanHadBlankText">
  <owner>kenjibaheux@chromium.org</owner>
  <owner>ksakamoto@chromium.org</owner>
  <summary>
    This metrics is logged when a page that use web fonts is loaded. The value
    is whether we had to wait on at least one web font and ended up showing
    blank text, or not.
  </summary>
</histogram>

<histogram name="WebFont.InterventionResult" enum="WebFontInterventionResult">
  <owner>toyoshim@chromium.org</owner>
  <owner>kenjibaheux@chromium.org</owner>
  <summary>
    For each WebFont load attempt, records whether User Agent Intervention was
    triggered, and whether the request (would have) timed out or not. The
    intervention takes adaptive behaviors to handle loading timeouts to improve
    user experiences on slow networks.
  </summary>
</histogram>

<histogram name="WebFont.LayoutLatency" units="ms">
  <obsolete>
    Renamed to WebFont.StyleRecalcToDownloadLatency for clarity.
  </obsolete>
  <owner>kenjibaheux@chromium.org</owner>
  <owner>ksakamoto@chromium.org</owner>
  <summary>
    The time from when the webfont was referenced by a calculated style for the
    first time to the start of the font download.
  </summary>
</histogram>

<histogram name="WebFont.LoadTime.0.Under10KB" units="ms">
  <obsolete>
    Deprecated as of 8/2013, replaced by WebFont.DownloadTime.0.Under10KB.
  </obsolete>
  <owner>kenjibaheux@chromium.org</owner>
  <owner>ksakamoto@chromium.org</owner>
  <summary>
    The time it takes for a webfont download to finish, for webfonts of under
    10KB.
  </summary>
</histogram>

<histogram name="WebFont.LoadTime.1.10KBTo50KB" units="ms">
  <obsolete>
    Deprecated as of 8/2013, replaced by WebFont.DownloadTime.1.10KBTo50KB.
  </obsolete>
  <owner>kenjibaheux@chromium.org</owner>
  <owner>ksakamoto@chromium.org</owner>
  <summary>
    The time it takes for a webfont download to finish, for webfonts of
    10KB-50KB.
  </summary>
</histogram>

<histogram name="WebFont.LoadTime.2.50KBTo100KB" units="ms">
  <obsolete>
    Deprecated as of 8/2013, replaced by WebFont.DownloadTime.2.50KBTo100KB.
  </obsolete>
  <owner>kenjibaheux@chromium.org</owner>
  <owner>ksakamoto@chromium.org</owner>
  <summary>
    The time it takes for a webfont download to finish, for webfonts of
    50KB-100KB.
  </summary>
</histogram>

<histogram name="WebFont.LoadTime.3.100KBTo1MB" units="ms">
  <obsolete>
    Deprecated as of 8/2013, replaced by WebFont.DownloadTime.3.100KBTo1MB.
  </obsolete>
  <owner>kenjibaheux@chromium.org</owner>
  <owner>ksakamoto@chromium.org</owner>
  <summary>
    The time it takes for a webfont download to finish, for webfonts of
    100KB-1MB.
  </summary>
</histogram>

<histogram name="WebFont.LoadTime.4.Over1MB" units="ms">
  <obsolete>
    Deprecated as of 8/2013, replaced by WebFont.DownloadTime.4.Over1MB.
  </obsolete>
  <owner>kenjibaheux@chromium.org</owner>
  <owner>ksakamoto@chromium.org</owner>
  <summary>
    The time it takes for a webfont download to finish, for webfonts of over
    1MB.
  </summary>
</histogram>

<histogram name="WebFont.LoadTime.LoadError" units="ms">
  <obsolete>
    Deprecated as of 8/2013, replaced by WebFont.DownloadTime.LoadError.
  </obsolete>
  <owner>kenjibaheux@chromium.org</owner>
  <owner>ksakamoto@chromium.org</owner>
  <summary>
    The time taken for a webfont download that failed. Includes aborted
    requests.
  </summary>
</histogram>

<histogram name="WebFont.LocalFontUsed" enum="BooleanUsage">
  <owner>hajimehoshi@chromium.org</owner>
  <owner>kenjibaheux@chromium.org</owner>
  <owner>kouhei@chromium.org</owner>
  <owner>ksakamoto@chromium.org</owner>
  <summary>
    Whether a locallly installed font is actually used when @font-face had local
    sources.
  </summary>
</histogram>

<histogram name="WebFont.PackageFormat" enum="WebFontPackageFormat">
  <owner>kenjibaheux@chromium.org</owner>
  <owner>ksakamoto@chromium.org</owner>
  <summary>
    The packaging format of the font file (e.g. SFNT, WOFF ...) upon a webfont
    load.
  </summary>
</histogram>

<histogram name="WebFont.Resource.StyleRecalcToDownloadLatency" units="ms">
  <obsolete>
    Deprecated 11/2013. No longer tracked.
  </obsolete>
  <owner>kenjibaheux@chromium.org</owner>
  <owner>ksakamoto@chromium.org</owner>
  <summary>
    The time from when the webfont was referenced by a calculated style for the
    first time to the start of the font download. Recorded at most once for each
    FontResource object (not recorded if the font is retrieved from the memory
    cache).
  </summary>
</histogram>

<histogram name="WebFont.Resource.UsageType" enum="WebFontUsageType">
  <obsolete>
    Deprecated 11/2013. No longer tracked.
  </obsolete>
  <owner>kenjibaheux@chromium.org</owner>
  <owner>ksakamoto@chromium.org</owner>
  <summary>
    For each webfont, this records (a) if the font was 'styled', i.e. referenced
    by a calculated style for a RenderText before the font data was used, and
    (b) if the font was actually used or not, i.e. the renderer requested the
    font data or not. (A Font can be used without being styled, for example when
    drawn by a Canvas 2D Context.) This is recorded upon a download request of a
    webfont, or destruction of a FontResource object. Recorded at most once for
    each FontResource object in the renderer's memory cahce.
  </summary>
</histogram>

<histogram name="WebFont.StyleRecalcToDownloadLatency" units="ms">
  <obsolete>
    Deprecated as of 9/2013, replaced by
    WebFont.Resource.StyleRecalcToDownloadLatency.
  </obsolete>
  <owner>kenjibaheux@chromium.org</owner>
  <owner>ksakamoto@chromium.org</owner>
  <summary>
    The time from when the webfont was referenced by a calculated style for the
    first time to the start of the font download.
  </summary>
</histogram>

<histogram name="WebFont.UsageType" enum="WebFontUsageType">
  <obsolete>
    Deprecated as of 9/2013, replaced by WebFont.Resource.UsageType.
  </obsolete>
  <owner>kenjibaheux@chromium.org</owner>
  <owner>ksakamoto@chromium.org</owner>
  <summary>
    For each webfont, this records (a) if the font was 'styled', i.e. referenced
    by a calculated style for a RenderText before the font data was used, and
    (b) if the font was actually used or not, i.e. the renderer requested the
    font data or not. (A Font can be used without being styled, for example when
    drawn by a Canvas 2D Context.) This is recorded upon a download request of a
    webfont, or destruction of a CSSFontFaceSource object. Recorded at most once
    for each url() source of @font-face CSS rule.
  </summary>
</histogram>

<histogram name="WebFont.WebFontsInPage">
  <owner>kenjibaheux@chromium.org</owner>
  <owner>ksakamoto@chromium.org</owner>
  <summary>
    The number of webfonts used in a page. This is recorded when the first
    layout is done, and so will not count webfonts dynamically loaded by
    scripts.
  </summary>
</histogram>

<histogram name="WebHistory.LocalResultMissingOnServer" units="%">
  <owner>zea@chromium.org</owner>
  <summary>
    Percentage of results that are present locally but are not returned by the
    web history API call. Recorded every time a signed-in user visits the
    chrome://history page and the results from the web history are received.
  </summary>
</histogram>

<histogram name="WebHistory.OAuthTokenCompletion" enum="BooleanSuccess">
  <owner>zea@chromium.org</owner>
  <summary>
    Whether getting the OAuth token was successful for a web history query. On
    visits to the chrome://history page this token is obtained and then used to
    get the user's synced web history.
  </summary>
</histogram>

<histogram name="WebHistory.OAuthTokenResponseCode" units="code">
  <owner>zea@chromium.org</owner>
  <summary>
    HTTP Response code returned by the server when trying to fetch the OAuth
    token for a web history query.
  </summary>
</histogram>

<histogram name="WebHistory.QueryCompletion" enum="WebHistoryStatus">
  <owner>zea@chromium.org</owner>
  <summary>
    Whether the web history API call was successful. Every time a signed-in user
    visits the chrome://history page this query is executed to get the user's
    synced web history. If successful, the local and remote results are merged
    and shown in the history page.
  </summary>
</histogram>

<histogram name="WebHistory.ResponseTime" units="ms">
  <owner>zea@chromium.org</owner>
  <summary>
    Time it took for the web history to reply. Recorded when the web history API
    call triggered by visiting chrome://history receives the data, measuring how
    much time it took for the server to reply.
  </summary>
</histogram>

<histogram name="WebRTC.AecDelayBasedQuality" enum="DelayBasedEchoQuality">
  <owner>bjornv@chromium.org</owner>
  <summary>
    Captures if the estimated delay between rendered and captured audio is out
    of bounds which can cause the Echo Cancellation to fail. This is logged
    roughly once every 5 seconds. The values are logged in four buckets
    reflecting how well the Echo Cancellation likely performs based on the
    estimated delay.
  </summary>
</histogram>

<histogram name="WebRTC.ApplicationMaxConsecutiveBytesDiscard">
  <obsolete>
    Deprecated as of 12/2014, replaced by
    WebRTC.ApplicationMaxConsecutiveBytesDiscard.v2.
  </obsolete>
  <owner>guoweis@chromium.org</owner>
  <summary>
    The maximum consecutive discarded bytes caused by not enough buffer
    available in WebRTC's socket implementation.  This happens when WebRTC
    IpcPacketSocket's throttling mechanism kicks in.
  </summary>
</histogram>

<histogram name="WebRTC.ApplicationMaxConsecutiveBytesDiscard.v2">
  <owner>guoweis@chromium.org</owner>
  <summary>
    The maximum consecutive discarded bytes caused by not enough buffer
    available in WebRTC's socket implementation.  This happens when WebRTC
    IpcPacketSocket's throttling mechanism kicks in. The maximum bucket is
    expanded from previous version to provide more insight when upper layer
    feeds a lot of packets.
  </summary>
</histogram>

<histogram name="WebRTC.ApplicationPercentPacketsDiscarded" units="%">
  <owner>guoweis@chromium.org</owner>
  <summary>
    The percentage of packets discarded by WebRTC's socket layer due to
    EWOULDBLOCKs when WebRTC IpcPacketSocket's throttling mechanism kicks in.
  </summary>
</histogram>

<histogram name="WebRTC.Audio.AecSystemDelayJump" units="ms">
  <owner>bjornv@chromium.org</owner>
  <summary>
    The AEC in WebRTC keeps a buffer to mimic the audio buffers in the lower
    layers. This histogram logs a sudden positive jump in buffer size. Since we
    detect jumps in the capture thread, only positive values are feasible. Note
    that the difference in milliseconds is logged and not the actual AEC system
    delay value. Sampled every time the AEC system delay changes more than 50
    milliseconds.
  </summary>
</histogram>

<histogram name="WebRTC.Audio.AverageExcessBufferDelayMs" units="ms">
  <owner>hlundin@chromium.org</owner>
  <summary>
    Measures the average waiting time in the buffer for each packet. The waiting
    time is the time elapsed from the packet arrives until it is decoded. The
    metric is calculated as the average over one minute, and is logged at the
    end of each such interval. A well tuned target buffer level should lead to a
    low value.
  </summary>
</histogram>

<histogram name="WebRTC.Audio.DelayedPacketOutageEventMs" units="ms">
  <owner>hlundin@chromium.org</owner>
  <summary>
    Measures the duration of each packet loss concealment (a.k.a. expand) event
    that is not followed by a merge operation. The outage is measured in
    milliseconds, with a range between 0 and 2000 ms. This gives an indication
    of how well the jitter buffer's level adaptation is working. If the chosen
    target level is too low, this value will increase.
  </summary>
</histogram>

<histogram name="WebRTC.Audio.DelayedPacketOutageEventsPerMinute"
    units="events/minute">
  <owner>hlundin@chromium.org</owner>
  <summary>
    Counts the number of delayed packet outage events per minute. The range is
    between 0 and 100 (corresponds to more 1.6 events per second). See
    WebRTC.Audio.DelayedPacketOutageEventMs for the definition of a delayed
    packet outage event, and the interpretation of such events.
  </summary>
</histogram>

<histogram name="WebRTC.Audio.Encoder.CodecType" enum="WebRtcAudioCodecs">
  <owner>aleloi@chromium.org</owner>
  <summary>
    Histogram of audio codec usage. Every sample corresponds to 5 seconds of
    encoding with that codec.
  </summary>
</histogram>

<histogram name="WebRTC.Audio.NumOfAecSystemDelayJumps" units="jumps">
  <owner>bjornv@chromium.org</owner>
  <summary>
    Number of triggered WebRTC.Audio.AecSystemDelayJump during a call. This is
    recorded when a WebRTC based call has ended. AecSystemDelayJump can be
    triggered when, for example, the capture thread is stalled, which can harm
    the AEC. NumOfAecSystemDelayJumps shows how often this occurs in general as
    well as during a call.
  </summary>
</histogram>

<histogram name="WebRTC.Audio.NumOfPlatformReportedStreamDelayJumps"
    units="jumps">
  <owner>bjornv@chromium.org</owner>
  <summary>
    Number of triggered WebRTC.Audio.PlatformReportedStreamDelayJump during a
    call. This is recorded when a WebRTC based call has ended.
    PlatformReportedStreamDelayJump can be triggered when, for example, the
    capture thread is stalled, which can harm the AEC.
    NumOfPlatformReportedStreamDelayJumps shows how often this occurs in general
    as well as during a call.
  </summary>
</histogram>

<histogram name="WebRTC.Audio.PlatformReportedStreamDelayJump" units="ms">
  <owner>bjornv@chromium.org</owner>
  <summary>
    The difference in stream delay reported to WebRTC by Chrome. Since we detect
    jumps in the capture thread, only positive values are feasible. Note that
    the difference in milliseconds is logged and not the actual stream delay
    value. Sampled every time the stream delay changes more than 50
    milliseconds.
  </summary>
</histogram>

<histogram name="WebRTC.Audio.TargetBitrateInKbps" units="kbps">
  <owner>hlundin@chromium.org</owner>
  <summary>
    The target bitrate in kbps that the audio codec should try to produce on
    average. Sampled every time the rate is updated.
  </summary>
</histogram>

<histogram name="WebRTC.AudioCaptureTime" units="ms">
  <obsolete>
    Removed from code 2014/2/25.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>Duration in milliseconds of WebRTC audio capture session.</summary>
</histogram>

<histogram name="WebRTC.AudioInputChannelLayout" enum="ChannelLayout">
  <owner>henrika@chromium.org</owner>
  <summary>Audio input channel layout in WebRTC.</summary>
</histogram>

<histogram name="WebRTC.AudioInputFramesPerBuffer" enum="AudioFramesPerBuffer">
  <obsolete>
    No longer exists in the code as of 2014/2/25.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>Size of WebRTC audio input buffers (in audio frames).</summary>
</histogram>

<histogram name="WebRTC.AudioInputFramesPerBufferUnexpected"
    units="audio frames">
  <obsolete>
    No longer exists in the code as of 2014/2/25.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Size of WebRTC audio input buffers (atypical values, in audio frames).
  </summary>
</histogram>

<histogram name="WebRTC.AudioInputSampleRate" enum="AudioSampleRate">
  <owner>henrika@chromium.org</owner>
  <summary>Audio input sample rate for WebRTC (in Hz).</summary>
</histogram>

<histogram name="WebRTC.AudioInputSampleRateUnexpected" units="Hz">
  <owner>henrika@chromium.org</owner>
  <summary>
    Audio input sample rate for WebRTC (atypical values, in Hz).
  </summary>
</histogram>

<histogram name="WebRTC.AudioOutputChannelLayout" enum="ChannelLayout">
  <obsolete>
    Removed from code on 2014/2/25.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>Audio output channel layout in WebRTC.</summary>
</histogram>

<histogram name="WebRTC.AudioOutputFramesPerBuffer" enum="AudioFramesPerBuffer">
  <owner>henrika@chromium.org</owner>
  <summary>Size of WebRTC audio output buffers (in audio frames).</summary>
</histogram>

<histogram name="WebRTC.AudioOutputFramesPerBufferUnexpected"
    units="audio frames">
  <owner>henrika@chromium.org</owner>
  <summary>
    Size of WebRTC audio output buffers (atypical values, in audio frames).
  </summary>
</histogram>

<histogram name="WebRTC.AudioOutputSampleRate" enum="AudioSampleRate">
  <owner>henrika@chromium.org</owner>
  <summary>Audio output sample rate for WebRTC (in Hz).</summary>
</histogram>

<histogram name="WebRTC.AudioOutputSampleRateUnexpected" units="Hz">
  <owner>henrika@chromium.org</owner>
  <summary>
    Audio output sample rate for WebRTC (atypical values, in Hz).
  </summary>
</histogram>

<histogram name="WebRTC.AudioRenderTime" units="ms">
  <obsolete>
    Removed from code 2014/2/25.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>Duration in milliseconds of WebRTC audio render session.</summary>
</histogram>

<histogram name="WebRTC.AudioRenderTimes" units="ms">
  <owner>henrika@chromium.org</owner>
  <summary>
    Measures the time spent in WebRtcAudioRenderer::SourceCallback. Sampled 10
    times per second.
  </summary>
</histogram>

<histogram name="WebRTC.BWE.InitialBandwidthEstimate" units="kbps">
  <owner>holmer@chromium.org</owner>
  <summary>The bandwidth estimate 2 seconds into a WebRTC call.</summary>
</histogram>

<histogram name="WebRTC.BWE.InitiallyLostPackets" units="packets">
  <owner>holmer@chromium.org</owner>
  <summary>
    The number of video packets lost durig the first 2 seconds in a WebRTC call.
  </summary>
</histogram>

<histogram name="WebRTC.BWE.InitialRtt" units="ms">
  <owner>holmer@chromium.org</owner>
  <summary>
    The round-trip time as measured 2 seconds into a WebRTC call.
  </summary>
</histogram>

<histogram name="WebRTC.BWE.InitialVsConvergedDiff" units="kbps">
  <owner>holmer@chromium.org</owner>
  <summary>
    The difference between the bandwidth estimate at 2 seconds and 20 seconds
    into a WebRTC call, with a min at 0, which is supposed to capture the how
    much the initial bandwidth estimate overshot the actual bandwidth available.
  </summary>
</histogram>

<histogram name="WebRTC.BWE.RampUpTimeTo1000kbpsInMs" units="ms">
  <owner>holmer@chromium.org</owner>
  <summary>
    The time it takes the estimated bandwidth to reach 1000 kbps from the first
    RTCP packet received. Used to measure the bandwidth ramp-up time.
  </summary>
</histogram>

<histogram name="WebRTC.BWE.RampUpTimeTo2000kbpsInMs" units="ms">
  <owner>holmer@chromium.org</owner>
  <summary>
    The time it takes the estimated bandwidth to reach 2000 kbps from the first
    RTCP packet received. Used to measure the bandwidth ramp-up time.
  </summary>
</histogram>

<histogram name="WebRTC.BWE.RampUpTimeTo500kbpsInMs" units="ms">
  <owner>holmer@chromium.org</owner>
  <summary>
    The time it takes the estimated bandwidth to reach 500 kbps from the first
    RTCP packet received. Used to measure the bandwidth ramp-up time.
  </summary>
</histogram>

<histogram name="WebRTC.Call.AudioBitrateReceivedInKbps" units="kbps">
  <owner>holmer@chromium.org</owner>
  <summary>
    Average audio bitrate received during a call, counted from first packet
    received until Call instance is destroyed. Only mesured for calls that are
    at least 10 seconds long.
  </summary>
</histogram>

<histogram name="WebRTC.Call.BitrateReceivedInKbps" units="kbps">
  <owner>holmer@chromium.org</owner>
  <summary>
    Average total bitrate received during a call (audio + video + RTCP), counted
    from first packet received until Call instance is destroyed. Only mesured
    for calls that are at least 10 seconds long.
  </summary>
</histogram>

<histogram name="WebRTC.Call.EstimatedSendBitrateInKbps" units="kbps">
  <owner>holmer@chromium.org</owner>
  <summary>
    Average estimated send bitrate during a call, counted from first packet sent
    until Call instance is destroyed. Only mesured for calls that are at least
    10 seconds long.
  </summary>
</histogram>

<histogram name="WebRTC.Call.PacerBitrateInKbps" units="kbps">
  <owner>holmer@chromium.org</owner>
  <summary>
    Average pacer bitrate during a call, counted from first packet sent until
    Call instance is destroyed. Only mesured for calls that are at least 10
    seconds long.
  </summary>
</histogram>

<histogram name="WebRTC.Call.RtcpBitrateReceivedInBps" units="bits/s">
  <owner>holmer@chromium.org</owner>
  <summary>
    Average RTCP bitrate received during a call, counted from first packet
    received until Call instance is destroyed. Only mesured for calls that are
    at least 10 seconds long.
  </summary>
</histogram>

<histogram name="WebRTC.Call.VideoBitrateReceivedInKbps" units="kbps">
  <owner>holmer@chromium.org</owner>
  <summary>
    Average video bitrate received during a call, counted from first packet
    received until Call instance is destroyed. Only mesured for calls that are
    at least 10 seconds long.
  </summary>
</histogram>

<histogram name="WebRTC.DataChannelCounters" enum="DataChannelCounters">
  <owner>perkj@chromium.org</owner>
  <summary>
    Counters on creation, opening, and a few main attributes of data channels.
  </summary>
</histogram>

<histogram name="WebRTC.DataChannelMaxRetransmits">
  <owner>perkj@chromium.org</owner>
  <summary>
    The maximum number of retransmissions that are attempted in unreliable mode.
    It is set to the value used in the configuration when a RTCDataChannel is
    created.
  </summary>
</histogram>

<histogram name="WebRTC.DataChannelMaxRetransmitTime" units="ms">
  <owner>perkj@chromium.org</owner>
  <summary>
    The length of the time window during which transmissions and retransmissions
    may occur in unreliable mode. It is set to the value used in the
    configuration when a RTCDataChannel is created.
  </summary>
</histogram>

<histogram name="WebRTC.DesktopCaptureCounters" enum="DesktopCaptureCounters">
  <owner>jiayl@chromium.org</owner>
  <summary>
    Counters on creation of DesktopCaptureDevice and the first capture call.
  </summary>
</histogram>

<histogram name="WebRTC.NAT.Metrics" enum="NatTypeCounters">
  <owner>guoweis@chromium.org</owner>
  <summary>
    Counters on various types of NAT observed. This is logged once per session.
  </summary>
</histogram>

<histogram name="WebRTC.NumDataChannelsPerPeerConnection">
  <owner>perkj@chromium.org</owner>
  <summary>
    Number of data channels created per PeerConnection. Sample added to the
    histogram when the PeerConnection is destroyed. Note that this is done
    purely on the renderer side, so no sample will be generated when the
    renderer process is destroyed (as in the fast shutdown path for the
    renderer) before the PeerConnection is destroyed.
  </summary>
</histogram>

<histogram name="WebRTC.PeerConnection.CandidatePairType"
    enum="IceCandidatePairTypes">
  <owner>guoweis@chromium.org</owner>
  <summary>
    Counters of various ICE Endpoint types. These values are logged for the
    first selected candidate pair of a PeerConnection.
  </summary>
</histogram>

<histogram name="WebRTC.PeerConnection.ConnectionState"
    enum="IceConnectionStates">
  <owner>guoweis@chromium.org</owner>
  <summary>
    Counters of ICE Connection states. These values are logged when the
    PeerConnection gets into that state for the first time or after the ICE
    restart.
  </summary>
</histogram>

<histogram name="WebRTC.PeerConnection.IPMetrics" enum="PeerConnectionCounters">
  <owner>mallinath@chromium.org</owner>
  <summary>
    Counters on IPv4 and IPv6 usage in PeerConnection. These values are logged
    once per PeerConnection.
  </summary>
</histogram>

<histogram name="WebRTC.PeerConnection.IPPermissionStatus"
    enum="IPPermissionStatus">
  <owner>guoweis@chromium.org</owner>
  <summary>
    Whether the permission to collect the local IP addresses in WebRTC has been
    requested and/or granted. This is collected the first time when networks
    updated event is reported or if never reported, during the destruction phase
    of a call.
  </summary>
</histogram>

<histogram name="WebRTC.PeerConnection.IPv4Interfaces">
  <owner>mallinath@chromium.org</owner>
  <summary>
    Number of IPv4 network interfaces discovered in a PeerConnection Session.
  </summary>
</histogram>

<histogram name="WebRTC.PeerConnection.IPv4LocalCandidates">
  <owner>guoweis@chromium.org</owner>
  <summary>
    Number of IPv4 local Candidates gathered in a PeerConnection Session once
    the ICE address gathering process reaches the Completed status. To avoid
    miscounting, this only includes the first m line's first component.
  </summary>
</histogram>

<histogram name="WebRTC.PeerConnection.IPv6Interfaces">
  <owner>mallinath@chromium.org</owner>
  <summary>
    Number of IPv6 network interfaces discovered in a PeerConnection Session.
  </summary>
</histogram>

<histogram name="WebRTC.PeerConnection.IPv6LocalCandidates">
  <owner>guoweis@chromium.org</owner>
  <summary>
    Number of IPv6 local Candidates gathered in a PeerConnection Session once
    the ICE address gathering process reaches the Completed status. To avoid
    miscounting, this only includes the first m line's first component.
  </summary>
</histogram>

<histogram name="WebRTC.PeerConnection.RtcpMux" enum="PeerConnectionRtcpMux">
  <owner>pthatcher@chromium.org</owner>
  <summary>
    Whether RTCP-mux is used for the PeerConnection (both the local and remote
    description enable RTCP-mux).  Recorded after SetLocalDescription and
    SetRemoteDescription are called, once per PeerConnection.
  </summary>
</histogram>

<histogram name="WebRTC.PeerConnection.SrtpCryptoSuite"
    enum="DTLS_SRTPCryptoSuite">
  <owner>guoweis@chromium.org</owner>
  <summary>
    Counters on the type of SRTP crypto suites used by WebRTC. This is collected
    whenever the transport signals the OnCompleted event.
  </summary>
</histogram>

<histogram name="WebRTC.PeerConnection.SslCipherSuite" enum="SSLCipherSuite">
  <owner>guoweis@chromium.org</owner>
  <summary>
    Counters on the type of SSL cipher suites used by WebRTC. This is collected
    whenever the transport signals the OnCompleted event.
  </summary>
</histogram>

<histogram name="WebRTC.PeerConnection.TimeToConnect" units="ms">
  <owner>mallinath@chromium.org</owner>
  <summary>Time to setup a peer to peer call with PeerConnection.</summary>
</histogram>

<histogram name="WebRTC.PeerConnection.TimeToNetworkUpdated" units="ms">
  <owner>guoweis@chromium.org</owner>
  <summary>
    Time to receive the first SignalNetworksChanged from the request to start
    updating network in PeerConnection.
  </summary>
</histogram>

<histogram name="WebRTC.ReceivedAudioTrackDuration" units="ms">
  <owner>perkj@chromium.org</owner>
  <summary>
    Durations of audio tracks received over a PeerConnection. The stopwatch
    starts when the track first becomes connected, and ends when it is
    disconnected or very soon thereafter.
  </summary>
</histogram>

<histogram name="WebRTC.ReceivedVideoTrackDuration" units="ms">
  <owner>perkj@chromium.org</owner>
  <summary>
    Durations of video tracks received over a PeerConnection. The stopwatch
    starts when the track first becomes connected, and ends when it is
    disconnected or very soon thereafter.
  </summary>
</histogram>

<histogram name="WebRTC.ReliableDataChannelMessageSize" units="bytes">
  <owner>perkj@chromium.org</owner>
  <summary>
    Sizes of messages sent over reliable data channels. The size of an
    individual message is added to the histogram as a sample immediately when a
    message is sent.
  </summary>
</histogram>

<histogram name="WebRTC.ScreenCaptureTime" units="ms">
  <owner>jiayl@chromium.org</owner>
  <summary>Time for capturing one frame in screen capturing.</summary>
</histogram>

<histogram name="WebRTC.SentAudioTrackDuration" units="ms">
  <owner>perkj@chromium.org</owner>
  <summary>
    Durations of audio tracks sent over a PeerConnection. The stopwatch starts
    when the track first becomes connected, and ends when it is disconnected or
    very soon thereafter.
  </summary>
</histogram>

<histogram name="WebRTC.SentVideoTrackDuration" units="ms">
  <owner>perkj@chromium.org</owner>
  <summary>
    Durations of video tracks sent over a PeerConnection. The stopwatch starts
    when the track first becomes connected, and ends when it is disconnected or
    very soon thereafter.
  </summary>
</histogram>

<histogram name="WebRTC.Stun.BatchSuccessPercent" units="%">
  <owner>guoweis@chromium.org</owner>
  <summary>
    For clients using a shared source port per STUN binding request toward the
    specified servers, success rate for requests which received a response with
    various intervals between requests. Only the first instance of renderers
    will conduct the trial and log this result. The STUN binding requests are
    grouped into multiple batches and the success rate is calculated for an
    individual batch.
  </summary>
</histogram>

<histogram name="WebRTC.Stun.ResponseLatency" units="ms">
  <owner>guoweis@chromium.org</owner>
  <summary>
    For clients using a shared source port per STUN binding request, average RTT
    for requests which received a response with various intervals between
    requests. Only the first instance of renderers will conduct the trial and
    log this result.
  </summary>
</histogram>

<histogram name="WebRTC.Stun.SuccessPercent" units="%">
  <owner>guoweis@chromium.org</owner>
  <summary>
    For clients using a shared source port per STUN binding request, success
    rate for requests which received a response with various intervals between
    requests. Only the first instance of renderers will conduct the trial and
    log this result.
  </summary>
</histogram>

<histogram name="WebRTC.SystemMaxConsecutiveBytesDelayed">
  <owner>guoweis@chromium.org</owner>
  <summary>
    The maximum of consecutive delayed bytes caused by EWOULDBLOCKs from system.
    This happens when system can't send any packet synchronously at that moment.
  </summary>
</histogram>

<histogram name="WebRTC.SystemPercentPacketsDelayed" units="%">
  <owner>guoweis@chromium.org</owner>
  <summary>
    The percentage of packets delayed due to ERR_IO_PENDING from system in a
    WebRTC socket. This happens when system can't send any packet synchronously
    at that moment.
  </summary>
</histogram>

<histogram name="WebRTC.SystemSendPacketDuration" units="ms">
  <owner>guoweis@chromium.org</owner>
  <summary>
    The duration that it takes to send out a packet in system layer. This
    includes both the queuing time (under the condition when socket returns
    EWOULDBLOCK from system) as well as the time system takes to finish the
    asynchronous send. For UDP, it's the time from P2PSocketHostUdp::Send to
    P2PSocketHostUdp::HandleSendResult. Tcp part is to be implemented.
  </summary>
</histogram>

<histogram name="WebRTC.UnreliableDataChannelMessageSize" units="bytes">
  <owner>perkj@chromium.org</owner>
  <summary>
    Sizes of messages sent over unreliable data channels. The size of an
    individual message is added to the histogram as a sample immediately when a
    message is sent.
  </summary>
</histogram>

<histogram name="WebRTC.UserMediaRequest.NoResultState"
    enum="MediaStreamRequestState">
  <owner>andresp@chromium.org</owner>
  <summary>
    The state of a UserMediaRequest when it gets destroyed before having a
    result.

    Note: &quot;Explicitly Cancelled&quot; means
    MediaStreamImpl::cancelUserMediaRequest was called and not necessarily that
    the user cancelled. Those are likely tracked as UserMediaRequest with a
    result of permission denied.
  </summary>
</histogram>

<histogram name="WebRTC.UserMediaRequest.Result"
    enum="MediaStreamRequestResult">
  <owner>andresp@chromium.org</owner>
  <summary>
    Counters for UserMediaRequests results such as failure reasons.
  </summary>
</histogram>

<histogram name="WebRTC.Video.AverageRoundTripTimeInMilliseconds" units="ms">
  <owner>holmer@chromium.org</owner>
  <summary>
    The average round-trip time of a WebRTC call in milliseconds. Recorded when
    a stream is removed.
  </summary>
</histogram>

<histogram name="WebRTC.Video.AVSyncOffsetInMs" units="ms">
  <owner>asapersson@chromium.org</owner>
  <summary>
    The absolute value of the sync offset between a rendered video frame and the
    latest played audio frame is measured per video frame. The average offset
    per received video stream is recorded when a stream is removed.
  </summary>
</histogram>

<histogram name="WebRTC.Video.BandwidthLimitedResolutionInPercent" units="%">
  <owner>asapersson@chromium.org</owner>
  <summary>
    Percentage of sent frames that are limited in resolution due to bandwidth
    for a sent video stream. Recorded when a stream is removed.
  </summary>
</histogram>

<histogram name="WebRTC.Video.BandwidthLimitedResolutionsDisabled"
    units="disabled resolutions">
  <owner>asapersson@chromium.org</owner>
  <summary>
    For frames that are limited in resolution due to bandwidth, the average
    number of disabled resolutions is recorded for a sent video stream. Recorded
    when a stream is removed.
  </summary>
</histogram>

<histogram name="WebRTC.Video.BitrateReceivedInKbps" units="kbps">
  <owner>asapersson@chromium.org</owner>
  <summary>
    The number of received bits per second for a received video stream. Recorded
    when a stream is removed. The total number of bytes is divided by the time
    the video stream exists.
  </summary>
</histogram>

<histogram name="WebRTC.Video.BitrateSentInKbps" units="kbps">
  <owner>asapersson@chromium.org</owner>
  <summary>
    The number of sent bits per second for a sent video stream. Recorded when a
    stream is removed. The total number of bytes is divided by the time the
    video stream exists.
  </summary>
</histogram>

<histogram name="WebRTC.Video.CompleteFramesReceivedPerSecond" units="fps">
  <owner>asapersson@chromium.org</owner>
  <summary>
    The number of complete frames received per second for a received video
    stream. Recorded when a stream is removed. The total number of frames is
    divided by the time the video stream exists.
  </summary>
</histogram>

<histogram name="WebRTC.Video.CurrentDelayInMs" units="ms">
  <owner>asapersson@chromium.org</owner>
  <summary>
    Average current delay for a received video stream. This is the actual delay
    imposed on frames (where the goal is to reach the target delay (see
    WebRTC.Video.TargetDelayInMs)). Recorded when a stream is removed.
  </summary>
</histogram>

<histogram name="WebRTC.Video.Decoded.Vp8.Qp" units="qp value">
  <owner>asapersson@chromium.org</owner>
  <summary>
    The average QP (quantizer value) per frame for a received VP8 video stream.
    Recorded when a stream is removed.
  </summary>
</histogram>

<histogram name="WebRTC.Video.DecodedFramesPerSecond" units="fps">
  <owner>asapersson@chromium.org</owner>
  <summary>
    The number of decoded frames per second for a received video stream.
    Recorded when a stream is removed. The total number of frames is divided by
    the time the video stream exists.
  </summary>
</histogram>

<histogram name="WebRTC.Video.DecodeTimeInMs" units="ms">
  <owner>asapersson@chromium.org</owner>
  <summary>
    The average decode time per frame for a received video stream. Recorded when
    a stream is removed.
  </summary>
</histogram>

<histogram name="WebRTC.Video.DelayedFramesToRenderer" units="%">
  <owner>asapersson@chromium.org</owner>
  <summary>
    Percentage of delayed frames to renderer for a received video stream.
    Recorded when a stream is removed.
  </summary>
</histogram>

<histogram name="WebRTC.Video.DelayedFramesToRenderer_AvgDelayInMs" units="ms">
  <owner>asapersson@chromium.org</owner>
  <summary>
    The average delay of delayed frames to renderer for a received video stream.
    Recorded when a stream is removed.
  </summary>
</histogram>

<histogram name="WebRTC.Video.DiscardedPacketsInPercent" units="%">
  <owner>asapersson@chromium.org</owner>
  <summary>
    Percentage of discarded packets by the jitter buffer due to arriving too
    late for a received video stream. Recorded when a stream is removed.
  </summary>
</histogram>

<histogram name="WebRTC.Video.DuplicatedPacketsInPercent" units="%">
  <owner>asapersson@chromium.org</owner>
  <summary>
    Percentage of duplicated packets in the jitter buffer for a received video
    stream. Recorded when a stream is removed.
  </summary>
</histogram>

<histogram name="WebRTC.Video.Encoded.Qp" units="qp value">
  <owner>asapersson@chromium.org</owner>
  <summary>
    The average QP (quantizer value) per frame for a sent video stream. Recorded
    when a stream is removed.
  </summary>
</histogram>

<histogram name="WebRTC.Video.Encoder.CodecType" enum="WebRtcVideoCodecs">
  <owner>asapersson@chromium.org</owner>
  <summary>
    Configured video codec for a sent video stream. Recorded when a
    VideoSendStream is created.
  </summary>
</histogram>

<histogram name="WebRTC.Video.EncodeTimeInMs" units="ms">
  <owner>asapersson@chromium.org</owner>
  <summary>
    The average encode time per frame for a sent video stream. Recorded when a
    stream is removed.
  </summary>
</histogram>

<histogram name="WebRTC.Video.FecBitrateReceivedInKbps" units="kbps">
  <owner>asapersson@chromium.org</owner>
  <summary>
    The number of received FEC bits per second for a received video stream.
    Recorded when a stream is removed. The total number of bytes is divided by
    the time the video stream exists.
  </summary>
</histogram>

<histogram name="WebRTC.Video.FecBitrateSentInKbps" units="kbps">
  <owner>asapersson@chromium.org</owner>
  <summary>
    The number of sent FEC bits per second for a sent video stream. Recorded
    when a stream is removed. The total number of bytes is divided by the time
    the video stream exists.
  </summary>
</histogram>

<histogram name="WebRTC.Video.FirPacketsReceivedPerMinute"
    units="packets/minute">
  <owner>asapersson@chromium.org</owner>
  <summary>
    The number of received RTCP FIR packets per minute for a sent video stream.
    Recorded when a stream is removed. The total number of packets is divided by
    the time the video stream exists.
  </summary>
</histogram>

<histogram name="WebRTC.Video.FirPacketsSentPerMinute" units="packets/minute">
  <owner>asapersson@chromium.org</owner>
  <summary>
    The number of sent RTCP FIR packets per minute for a received video stream.
    Recorded when a stream is removed. The total number of packets is divided by
    the time the video stream exists.
  </summary>
</histogram>

<histogram name="WebRTC.Video.H264DecoderImpl.Event"
    enum="WebRtcH264DecoderImplEvent">
  <owner>hbos@chromium.org</owner>
  <summary>
    The number of |H264DecoderImpl| events, such as an initialization or
    decoding error, that have occurred. At most one Init and one Error is
    reported per |H264DecoderImpl| instance. This is to avoid the same event
    from being reported multiple times (e.g. if there is an error you might
    re-initialize or get a decode error every frame which would otherwise
    pollute the data).
  </summary>
</histogram>

<histogram name="WebRTC.Video.H264EncoderImpl.Event"
    enum="WebRtcH264EncoderImplEvent">
  <owner>hbos@chromium.org</owner>
  <summary>
    The number of |H264EncoderImpl| events, such as an initialization or
    encoding error, that have occurred. At most one Init and one Error is
    reported per |H264EncoderImpl| instance. This is to avoid the same event
    from being reported multiple times (e.g. if there is an error you might
    re-initialize or get an encode error every frame which would otherwise
    pollute the data).
  </summary>
</histogram>

<histogram name="WebRTC.Video.InputFramesPerSecond" units="fps">
  <owner>asapersson@chromium.org</owner>
  <summary>
    The number of incoming frames per second for a sent video stream. Recorded
    when a stream is removed. The total number of frames is divided by the time
    the video stream exists.
  </summary>
</histogram>

<histogram name="WebRTC.Video.InputHeightInPixels" units="pixels">
  <owner>asapersson@chromium.org</owner>
  <summary>
    The average input height per frame (for incoming frames to video engine) for
    a sent video stream. Recorded when a stream is removed.
  </summary>
</histogram>

<histogram name="WebRTC.Video.InputWidthInPixels" units="pixels">
  <owner>asapersson@chromium.org</owner>
  <summary>
    The average input width per frame (for incoming frames to video engine) for
    a sent video stream. Recorded when a stream is removed.
  </summary>
</histogram>

<histogram name="WebRTC.Video.JitterBufferDelayInMs" units="ms">
  <owner>asapersson@chromium.org</owner>
  <summary>
    Average jitter buffer delay for a received video stream. Recorded when a
    stream is removed.
  </summary>
</histogram>

<histogram name="WebRTC.Video.KeyFramesReceivedInPermille" units="permille">
  <owner>asapersson@chromium.org</owner>
  <summary>
    Permille of frames that are key frames for a received video stream. Recorded
    when a stream is removed.
  </summary>
</histogram>

<histogram name="WebRTC.Video.KeyFramesSentInPermille" units="permille">
  <owner>asapersson@chromium.org</owner>
  <summary>
    Permille of frames that are key frames for a sent video stream. Recorded
    when a stream is removed.
  </summary>
</histogram>

<histogram name="WebRTC.Video.MediaBitrateReceivedInKbps" units="kbps">
  <owner>asapersson@chromium.org</owner>
  <summary>
    The number of received media payload bits per second for a received video
    stream. Recorded when a stream is removed. The total number of bytes is
    divided by the time the video stream exists.
  </summary>
</histogram>

<histogram name="WebRTC.Video.MediaBitrateSentInKbps" units="kbps">
  <owner>asapersson@chromium.org</owner>
  <summary>
    The number of sent media payload bits per second for a sent video stream.
    Recorded when a stream is removed. The total number of bytes is divided by
    the time the video stream exists.
  </summary>
</histogram>

<histogram name="WebRTC.Video.NackPacketsReceivedPerMinute"
    units="packets/minute">
  <owner>asapersson@chromium.org</owner>
  <summary>
    The number of received RTCP NACK packets per minute for a sent video stream.
    Recorded when a stream is removed. The total number of packets is divided by
    the time the video stream exists.
  </summary>
</histogram>

<histogram name="WebRTC.Video.NackPacketsSentPerMinute" units="packets/minute">
  <owner>asapersson@chromium.org</owner>
  <summary>
    The number of sent RTCP NACK packets per minute for a received video stream.
    Recorded when a stream is removed. The total number of packets is divided by
    the time the video stream exists.
  </summary>
</histogram>

<histogram name="WebRTC.Video.OnewayDelayInMs" units="ms">
  <owner>asapersson@chromium.org</owner>
  <summary>
    Average delay (network delay (rtt/2) + jitter delay + decode time + render
    delay) for a received video stream. Recorded when a stream is removed.
  </summary>
</histogram>

<histogram name="WebRTC.Video.PaddingBitrateReceivedInKbps" units="kbps">
  <owner>asapersson@chromium.org</owner>
  <summary>
    The number of received padding bits per second for a received video stream.
    Recorded when a stream is removed. The total number of bytes is divided by
    the time the video stream exists.
  </summary>
</histogram>

<histogram name="WebRTC.Video.PaddingBitrateSentInKbps" units="kbps">
  <owner>asapersson@chromium.org</owner>
  <summary>
    The number of sent padding bits per second for a sent video stream. Recorded
    when a stream is removed. The total number of bytes is divided by the time
    the video stream exists.
  </summary>
</histogram>

<histogram name="WebRTC.Video.PliPacketsReceivedPerMinute"
    units="packets/minute">
  <owner>asapersson@chromium.org</owner>
  <summary>
    The number of received RTCP PLI packets per minute for a sent video stream.
    Recorded when a stream is removed. The total number of packets is divided by
    the time the video stream exists.
  </summary>
</histogram>

<histogram name="WebRTC.Video.PliPacketsSentPerMinute" units="packets/minute">
  <owner>asapersson@chromium.org</owner>
  <summary>
    The number of sent RTCP PLI packets per minute for a received video stream.
    Recorded when a stream is removed. The total number of packets is divided by
    the time the video stream exists.
  </summary>
</histogram>

<histogram name="WebRTC.Video.QualityLimitedResolutionDownscales"
    units="downscales">
  <owner>asapersson@chromium.org</owner>
  <summary>
    For frames that are downscaled in resolution due to quality, the average
    number of downscales is recorded for a sent video stream. Recorded when a
    stream is removed.
  </summary>
</histogram>

<histogram name="WebRTC.Video.QualityLimitedResolutionInPercent" units="%">
  <owner>asapersson@chromium.org</owner>
  <summary>
    Percentage of sent frames that are downscaled in resolution due to quality
    for a sent video stream. Recorded when a stream is removed.
  </summary>
</histogram>

<histogram name="WebRTC.Video.ReceivedFecPacketsInPercent" units="%">
  <owner>asapersson@chromium.org</owner>
  <summary>
    Percentage of received FEC packets for a received video stream. Recorded
    when a stream is removed.
  </summary>
</histogram>

<histogram name="WebRTC.Video.ReceivedHeightInPixels" units="pixels">
  <owner>asapersson@chromium.org</owner>
  <summary>
    The average received height per frame for a received video stream. Recorded
    when a stream is removed.
  </summary>
</histogram>

<histogram name="WebRTC.Video.ReceivedPacketsLostInPercent" units="%">
  <owner>asapersson@chromium.org</owner>
  <summary>
    Percentage of received packets lost for a received video stream. Recorded
    when a stream is removed.
  </summary>
</histogram>

<histogram name="WebRTC.Video.ReceivedWidthInPixels" units="pixels">
  <owner>asapersson@chromium.org</owner>
  <summary>
    The average received width per frame for a received video stream. Recorded
    when a stream is removed.
  </summary>
</histogram>

<histogram name="WebRTC.Video.RecoveredMediaPacketsInPercentOfFec" units="%">
  <owner>asapersson@chromium.org</owner>
  <summary>
    Percentage of recovered media packets from FEC packets for a received video
    stream. Recorded when a stream is removed.
  </summary>
</histogram>

<histogram name="WebRTC.Video.RenderFramesPerSecond" units="fps">
  <owner>asapersson@chromium.org</owner>
  <summary>
    The number of sent frames to the renderer per second for a received video
    stream. Recorded when a stream is removed. The total number of frames is
    divided by the time the video stream exists.
  </summary>
</histogram>

<histogram name="WebRTC.Video.RenderSqrtPixelsPerSecond" units="pps">
  <owner>asapersson@chromium.org</owner>
  <summary>
    The number of pixels (sqrt(width*height)) of sent frames to the renderer per
    second for a received video stream. Recorded when a stream is removed. The
    total number of pixels is divided by the time the video stream exists.
  </summary>
</histogram>

<histogram name="WebRTC.Video.RetransmittedBitrateReceivedInKbps" units="kbps">
  <owner>asapersson@chromium.org</owner>
  <summary>
    The number of retransmitted bits per second for a received video stream.
    Recorded when a stream is removed. The total number of bytes is divided by
    the time the video stream exists.
  </summary>
</histogram>

<histogram name="WebRTC.Video.RetransmittedBitrateSentInKbps" units="kbps">
  <owner>asapersson@chromium.org</owner>
  <summary>
    The number of retransmitted bits per second for a sent video stream.
    Recorded when a stream is removed. The total number of bytes is divided by
    the time the video stream exists.
  </summary>
</histogram>

<histogram name="WebRTC.Video.RtxBitrateReceivedInKbps" units="kbps">
  <owner>asapersson@chromium.org</owner>
  <summary>
    The number of received bits over RTX per second for a received video stream.
    Recorded when a stream is removed. The total number of bytes is divided by
    the time the video stream exists.
  </summary>
</histogram>

<histogram name="WebRTC.Video.RtxBitrateSentInKbps" units="kbps">
  <owner>asapersson@chromium.org</owner>
  <summary>
    The number of sent bits over RTX per second for a sent video stream.
    Recorded when a stream is removed. The total number of bytes is divided by
    the time the video stream exists.
  </summary>
</histogram>

<histogram name="WebRTC.Video.Screenshare.BandwidthLimitedResolutionInPercent"
    units="%">
  <owner>sprang@chromium.org</owner>
  <summary>
    Percentage of sent frames that are limited in resolution due to bandwidth
    for a sent (screen content) video stream. Recorded when a stream is removed.
  </summary>
</histogram>

<histogram name="WebRTC.Video.Screenshare.BandwidthLimitedResolutionsDisabled"
    units="disabled resolutions">
  <owner>sprang@chromium.org</owner>
  <summary>
    For frames that are limited in resolution due to bandwidth, the average
    number of disabled resolutions is recorded for a sent (screen content) video
    stream. Recorded when a stream is removed.
  </summary>
</histogram>

<histogram name="WebRTC.Video.Screenshare.BitrateSentInKbps" units="kbps">
  <owner>sprang@chromium.org</owner>
  <summary>
    The number of sent bits per second for a sent screenshare stream. Recorded
    when a stream is removed. The total number of bytes is divided by the time
    the video stream exists.
  </summary>
</histogram>

<histogram name="WebRTC.Video.Screenshare.EncodeTimeInMs" units="ms">
  <owner>sprang@chromium.org</owner>
  <summary>
    The average encode time per frame for a sent (screen content) video stream.
    Recorded when a stream is removed.
  </summary>
</histogram>

<histogram name="WebRTC.Video.Screenshare.FecBitrateSentInKbps" units="kbps">
  <owner>sprang@chromium.org</owner>
  <summary>
    The number of sent FEC bits per second for a sent screenshare stream.
    Recorded when a stream is removed. The total number of bytes is divided by
    the time the video stream exists.
  </summary>
</histogram>

<histogram name="WebRTC.Video.Screenshare.FirPacketsReceivedPerMinute"
    units="packets/minute">
  <owner>sprang@chromium.org</owner>
  <summary>
    The number of received RTCP FIR packets per minute for a sent screenshare
    stream. Recorded when a stream is removed. The total number of packets is
    divided by the time the video stream exists.
  </summary>
</histogram>

<histogram name="WebRTC.Video.Screenshare.FramesPerDrop"
    units="sent/dropped ratio">
  <owner>sprang@chromium.org</owner>
  <summary>
    Ratio of sent frames to dropped frames at the encoder. The value is reported
    when a stream is removed and is calculated as the total number frames sent
    divided by the number of dropped frames.
  </summary>
</histogram>

<histogram name="WebRTC.Video.Screenshare.FramesPerOvershoot"
    units="sent/overshoot ratio">
  <owner>sprang@chromium.org</owner>
  <summary>
    Ratio of sent frames to number of re-encoded frames (due to target bitrate
    overshoot). The value is reported when a stream is removed and is calculated
    as the total number frames sent divided by the number of re-encoded frames.
  </summary>
</histogram>

<histogram name="WebRTC.Video.Screenshare.InputFramesPerSecond" units="fps">
  <owner>asapersson@chromium.org</owner>
  <summary>
    The number of incoming frames per second for a sent (screen content) video
    stream. Recorded when a stream is removed. The total number of frames is
    divided by the time the video stream exists.
  </summary>
</histogram>

<histogram name="WebRTC.Video.Screenshare.InputHeightInPixels" units="pixels">
  <owner>sprang@chromium.org</owner>
  <summary>
    The average input height per frame (for incoming frames to video engine) for
    a sent (screen content) video stream. Recorded when a stream is removed.
  </summary>
</histogram>

<histogram name="WebRTC.Video.Screenshare.InputWidthInPixels" units="pixels">
  <owner>sprang@chromium.org</owner>
  <summary>
    The average input width per frame (for incoming frames to video engine) for
    a sent (screen content) video stream. Recorded when a stream is removed.
  </summary>
</histogram>

<histogram name="WebRTC.Video.Screenshare.KeyFramesSentInPermille"
    units="permille">
  <owner>sprang@chromium.org</owner>
  <summary>
    Permille of frames that are key frames for a sent (screen content) video
    stream. Recorded when a stream is removed.
  </summary>
</histogram>

<histogram name="WebRTC.Video.Screenshare.Layer0">
  <owner>sprang@chromium.org</owner>
  <summary>
    Stats for the lower layer (TL0) of a screenshare stream in conference mode.
  </summary>
</histogram>

<histogram name="WebRTC.Video.Screenshare.Layer1">
  <owner>sprang@chromium.org</owner>
  <summary>
    Stats for the higher layer (TL1) of a screenshare stream in conference mode.
  </summary>
</histogram>

<histogram name="WebRTC.Video.Screenshare.MediaBitrateSentInKbps" units="kbps">
  <owner>sprang@chromium.org</owner>
  <summary>
    The number of sent media payload bits per second for a sent screenshare
    stream. Recorded when a stream is removed. The total number of bytes is
    divided by the time the video stream exists.
  </summary>
</histogram>

<histogram name="WebRTC.Video.Screenshare.NackPacketsReceivedPerMinute"
    units="packets/minute">
  <owner>sprang@chromium.org</owner>
  <summary>
    The number of received RTCP NACK packets per minute for a sent screenshare
    stream. Recorded when a stream is removed. The total number of packets is
    divided by the time the video stream exists.
  </summary>
</histogram>

<histogram name="WebRTC.Video.Screenshare.PaddingBitrateSentInKbps"
    units="kbps">
  <owner>sprang@chromium.org</owner>
  <summary>
    The number of sent padding bits per second for a sent screenshare stream.
    Recorded when a stream is removed. The total number of bytes is divided by
    the time the video stream exists.
  </summary>
</histogram>

<histogram name="WebRTC.Video.Screenshare.PliPacketsReceivedPerMinute"
    units="packets/minute">
  <owner>sprang@chromium.org</owner>
  <summary>
    The number of received RTCP PLI packets per minute for a sent screenshare
    stream. Recorded when a stream is removed. The total number of packets is
    divided by the time the video stream exists.
  </summary>
</histogram>

<histogram name="WebRTC.Video.Screenshare.QualityLimitedResolutionDownscales"
    units="downscales">
  <owner>sprang@chromium.org</owner>
  <summary>
    For frames that are downscaled in resolution due to quality, the average
    number of downscales is recorded for a sent (screen content) video stream.
    Recorded when a stream is removed.
  </summary>
</histogram>

<histogram name="WebRTC.Video.Screenshare.QualityLimitedResolutionInPercent"
    units="%">
  <owner>sprang@chromium.org</owner>
  <summary>
    Percentage of sent frames that are downscaled in resolution due to quality
    for a sent (screen content) video stream. Recorded when a stream is removed.
  </summary>
</histogram>

<histogram name="WebRTC.Video.Screenshare.RetransmittedBitrateSentInKbps"
    units="kbps">
  <owner>sprang@chromium.org</owner>
  <summary>
    The number of retransmitted bits per second for a sent screenshare stream.
    Recorded when a stream is removed. The total number of bytes is divided by
    the time the video stream exists.
  </summary>
</histogram>

<histogram name="WebRTC.Video.Screenshare.RtxBitrateSentInKbps" units="kbps">
  <owner>sprang@chromium.org</owner>
  <summary>
    The number of sent bits over RTX per second for a sent screenshare stream.
    Recorded when a stream is removed. The total number of bytes is divided by
    the time the video stream exists.
  </summary>
</histogram>

<histogram name="WebRTC.Video.Screenshare.SendSideDelayInMs" units="ms">
  <owner>sprang@chromium.org</owner>
  <summary>
    The average delay (of average delays) of sent packets for a sent (screen
    content) video stream. Recorded when a stream is removed. The delay is
    measured from a frame is input to video engine until a packet is sent to the
    network. For each sent packet, the average delay of all sent packets over
    the last second is reported. The average of these reported delays is
    recorded.
  </summary>
</histogram>

<histogram name="WebRTC.Video.Screenshare.SendSideDelayMaxInMs" units="ms">
  <owner>sprang@chromium.org</owner>
  <summary>
    The average delay (of max delays) of sent packets for a sent (screen
    content) video stream. Recorded when a stream is removed. The delay is
    measured from a frame is input to video engine until a packet is sent to the
    network. For each sent packet, the maximum delay of all sent packets over
    the last second is reported. The average of these reported delays is
    recorded.
  </summary>
</histogram>

<histogram name="WebRTC.Video.Screenshare.SentFramesPerSecond" units="fps">
  <owner>sprang@chromium.org</owner>
  <summary>
    The number of sent frames per second for a sent (screen content) video
    stream. Recorded when a stream is removed. The total number of frames is
    divided by the time the video stream exists.
  </summary>
</histogram>

<histogram name="WebRTC.Video.Screenshare.SentHeightInPixels" units="pixels">
  <owner>sprang@chromium.org</owner>
  <summary>
    The average sent height per frame for a sent (screen content) video stream.
    Recorded when a stream is removed.
  </summary>
</histogram>

<histogram name="WebRTC.Video.Screenshare.SentPacketsLostInPercent" units="%">
  <owner>sprang@chromium.org</owner>
  <summary>
    Percentage of sent packets lost for a sent screenshare stream. Recorded when
    a stream is removed.
  </summary>
</histogram>

<histogram name="WebRTC.Video.Screenshare.SentWidthInPixels" units="pixels">
  <owner>sprang@chromium.org</owner>
  <summary>
    The average sent width per frame for a sent (screen content) video stream.
    Recorded when a stream is removed.
  </summary>
</histogram>

<histogram name="WebRTC.Video.Screenshare.UniqueNackRequestsReceivedInPercent"
    units="%">
  <owner>sprang@chromium.org</owner>
  <summary>
    Percentage of unique RTCP NACK requests that are received in response to a
    sent screenshare stream. Recorded when a stream is removed.
  </summary>
</histogram>

<histogram name="WebRTC.Video.SendDelayInMs" units="ms">
  <owner>asapersson@chromium.org</owner>
  <summary>
    The average send delay of sent packets for a sent video stream. Recorded
    when a stream is removed. The delay is measured from a packet is sent to the
    transport until leaving the socket.
  </summary>
</histogram>

<histogram name="WebRTC.Video.SendSideDelayInMs" units="ms">
  <owner>asapersson@chromium.org</owner>
  <summary>
    The average delay (of average delays) of sent packets for a sent video
    stream. Recorded when a stream is removed. The delay is measured from a
    frame is input to video engine until a packet is sent to the network. For
    each sent packet, the average delay of all sent packets over the last second
    is reported. The average of these reported delays is recorded.
  </summary>
</histogram>

<histogram name="WebRTC.Video.SendSideDelayMaxInMs" units="ms">
  <owner>asapersson@chromium.org</owner>
  <summary>
    The average delay (of max delays) of sent packets for a sent video stream.
    Recorded when a stream is removed. The delay is measured from a frame is
    input to video engine until a packet is sent to the network. For each sent
    packet, the maximum delay of all sent packets over the last second is
    reported. The average of these reported delays is recorded.
  </summary>
</histogram>

<histogram name="WebRTC.Video.SentFramesPerSecond" units="fps">
  <owner>asapersson@chromium.org</owner>
  <summary>
    The number of sent frames per second for a sent video stream. Recorded when
    a stream is removed. The total number of frames is divided by the time the
    video stream exists.
  </summary>
</histogram>

<histogram name="WebRTC.Video.SentHeightInPixels" units="pixels">
  <owner>asapersson@chromium.org</owner>
  <summary>
    The average sent height per frame for a sent video stream. Recorded when a
    stream is removed.
  </summary>
</histogram>

<histogram name="WebRTC.Video.SentPacketsLostInPercent" units="%">
  <owner>asapersson@chromium.org</owner>
  <summary>
    Percentage of sent packets lost for a sent video stream. Recorded when a
    stream is removed.
  </summary>
</histogram>

<histogram name="WebRTC.Video.SentWidthInPixels" units="pixels">
  <owner>asapersson@chromium.org</owner>
  <summary>
    The average sent width per frame for a sent video stream. Recorded when a
    stream is removed.
  </summary>
</histogram>

<histogram name="WebRTC.Video.TargetDelayInMs" units="ms">
  <owner>asapersson@chromium.org</owner>
  <summary>
    Average target delay (jitter delay + decode time + render delay) for a
    received video stream. Recorded when a stream is removed.
  </summary>
</histogram>

<histogram name="WebRTC.Video.UniqueNackRequestsReceivedInPercent" units="%">
  <owner>asapersson@chromium.org</owner>
  <summary>
    Percentage of unique RTCP NACK requests that are received in response to a
    sent video stream. Recorded when a stream is removed.
  </summary>
</histogram>

<histogram name="WebRTC.Video.UniqueNackRequestsSentInPercent" units="%">
  <owner>asapersson@chromium.org</owner>
  <summary>
    Percentage of unique RTCP NACK requests that are sent in response to a
    received video stream. Recorded when a stream is removed.
  </summary>
</histogram>

<histogram name="WebRTC.webkitApiCount" enum="JavaScriptAPIName">
  <owner>perkj@chromium.org</owner>
  <owner>mcasas@chromium.org</owner>
  <owner>emircan@chromium.org</owner>
  <summary>Counts number of calls to WebRTC APIs from JavaScript.</summary>
</histogram>

<histogram name="WebRTC.webkitApiCountPerSession" enum="JavaScriptAPIName">
  <owner>perkj@chromium.org</owner>
  <summary>
    Counts the number of calls to WebRTC APIs from JavaScript once per session.
    A session is a crude estimate since its implemented as the lifetime of the
    render process that called the WebRTC API.
  </summary>
</histogram>

<histogram name="WebRTC.webkitApiCountUniqueByOrigin" enum="JavaScriptAPIName">
  <obsolete>
    Deprecated as of r253828 (27 Feb 2014).
  </obsolete>
  <owner>tommi@chromium.org</owner>
  <summary>
    Counts number of calls to WebRTC APIs from JavaScript, once per origin per
    renderer process.
  </summary>
</histogram>

<histogram name="WebRTC.WindowCaptureTime" units="ms">
  <owner>jiayl@chromium.org</owner>
  <summary>Time for capturing one frame in window capturing.</summary>
</histogram>

<histogram name="WebsiteSettings.Action" enum="WebsiteSettingsAction">
  <owner>lgarron@chromium.org</owner>
  <summary>
    Tracks actions with the website setting (a.k.a. page info / origin info)
    bubble, such as opening it up or clicking on the Connection tab.
  </summary>
</histogram>

<histogram name="WebsiteSettings.Action.HttpsUrl" enum="WebsiteSettingsAction">
  <owner>lgarron@chromium.org</owner>
  <summary>
    Tracks WebsiteSettings actions that take place on an HTTPS URL. This
    completely disregards security status.
  </summary>
</histogram>

<histogram name="WebsiteSettings.Menu.PermissionChanged" enum="ContentType">
  <owner>miguelg@chromium.org</owner>
  <owner>finnur@chromium.org</owner>
  <summary>
    Count of how often a specific content type (permission) is changed using the
    content settings menu.
  </summary>
</histogram>

<histogram name="WebsiteSettings.Menu.PermissionChanged.Allowed"
    enum="ContentType">
  <owner>miguelg@chromium.org</owner>
  <owner>finnur@chromium.org</owner>
  <summary>
    Count of how often a specific content type (permission) is set to 'Allowed'
    using the content settings menu.
  </summary>
</histogram>

<histogram name="WebsiteSettings.Menu.PermissionChanged.Blocked"
    enum="ContentType">
  <owner>miguelg@chromium.org</owner>
  <owner>finnur@chromium.org</owner>
  <summary>
    Count of how often a specific content type (permission) is set to 'Blocked'
    using the content settings menu.
  </summary>
</histogram>

<histogram name="WebsiteSettings.Menu.PermissionChanged.Reset"
    enum="ContentType">
  <owner>miguelg@chromium.org</owner>
  <owner>finnur@chromium.org</owner>
  <summary>
    Count of how often a specific content type (permission) is reset to the
    default value using the content settings menu.
  </summary>
</histogram>

<histogram name="WebsiteSettings.OriginInfo.PermissionChanged"
    enum="ContentType">
  <owner>sashab@chromium.org</owner>
  <owner>felt@chromium.org</owner>
  <summary>
    Count of how often a specific content type (permission) is changed using the
    Origin Info dialog.
  </summary>
</histogram>

<histogram name="WebsiteSettings.OriginInfo.PermissionChanged.Allowed"
    enum="ContentType">
  <owner>sashab@chromium.org</owner>
  <owner>felt@chromium.org</owner>
  <summary>
    Count of how often a specific content type (permission) is set to 'Allowed'
    using the Origin Info dialog.
  </summary>
</histogram>

<histogram name="WebsiteSettings.OriginInfo.PermissionChanged.Blocked"
    enum="ContentType">
  <owner>sashab@chromium.org</owner>
  <owner>felt@chromium.org</owner>
  <summary>
    Count of how often a specific content type (permission) is set to 'Blocked'
    using the Origin Info dialog.
  </summary>
</histogram>

<histogram name="WebsiteSettings.PermissionChanged" enum="ContentType">
  <obsolete>
    Deprecated 12/2014 in Issue 433776, and replaced by
    WebsiteSettings.OriginInfo.PermissionChanged.
  </obsolete>
  <owner>lgarron@chromium.org</owner>
  <owner>sashab@chromium.org</owner>
  <summary>
    Count of how often a specific content type (permission) is changed using the
    Website Settings UI.
  </summary>
</histogram>

<histogram name="websql.Async.OpenTime.Error" units="ms">
  <owner>cmumford@chromium.org</owner>
  <summary>
    The time required to try (and fail) to open a Web SQL database.
  </summary>
</histogram>

<histogram name="websql.Async.OpenTime.Success" units="ms">
  <owner>cmumford@chromium.org</owner>
  <summary>The time required to successfully open a Web SQL database.</summary>
</histogram>

<histogram name="websql.OpenDatabase" enum="BooleanSecure">
  <owner>michaeln@chromium.org</owner>
  <summary>
    Counts the number of WebSQL databases opened for secure vs insecure origins.
  </summary>
</histogram>

<histogram name="Webstore.ExtensionInstallResult" enum="BooleanSuccess">
  <owner>jackhou@chromium.org</owner>
  <summary>
    The success or failure of all extension installs from the webstore. This
    includes those initiated by sync.
  </summary>
</histogram>

<histogram name="WebstoreWidgetApp.Close" enum="SuggestAppsDialogCloseReason">
  <owner>joshwoodward@google.com</owner>
  <summary>
    Webstore Widget app: the reason why the suggest apps dialog was closed.
  </summary>
</histogram>

<histogram name="WebstoreWidgetApp.Install" enum="SuggestAppsDialogInstall">
  <owner>joshwoodward@google.com</owner>
  <summary>
    Webstore Widget app: whether the Webstore item user selected was
    successfully installed or not.
  </summary>
</histogram>

<histogram name="WebstoreWidgetApp.Load" enum="SuggestAppsDialogLoad">
  <owner>joshwoodward@google.com</owner>
  <summary>
    Webstore Widget app: whether the initialization of the dialog succeeded or
    not.
  </summary>
</histogram>

<histogram name="WebstoreWidgetApp.LoadTime" units="ms">
  <owner>joshwoodward@google.com</owner>
  <summary>
    Webstore Widget app: time to load the widget contained in the app. Measured
    between the moment window appears and the moment all the contents in the app
    including the Chrome Webstore widget are ready.
  </summary>
</histogram>

<histogram name="WebUI.CreatedForUrl" enum="WebUIUrlHashes">
  <owner>dbeam@chromium.org</owner>
  <summary>URLs for which Chrome creates WebUIControllers.</summary>
</histogram>

<histogram name="WebUsb.ChooserClosed" enum="WebUsbChooserClosed">
  <owner>reillyg@chromium.org</owner>
  <owner>juncai@chromium.org</owner>
  <summary>
    Records the reason why the WebUSB device chooser was closed.
  </summary>
</histogram>

<histogram name="WebUsb.NotificationClosed" enum="WebUsbNotificationClosed">
  <owner>reillyg@chromium.org</owner>
  <owner>juncai@chromium.org</owner>
  <summary>
    Records the reason why the &quot;WebUSB device detected&quot; notification
    was dismissed.
  </summary>
</histogram>

<histogram name="WebUsb.PermissionRevoked" enum="WebUsbPermissionRevoked">
  <owner>reillyg@chromium.org</owner>
  <owner>juncai@chromium.org</owner>
  <summary>
    Records when the user revokes permission for an origin to connect to a USB
    device using the WebUSB API.
  </summary>
</histogram>

<histogram name="Win8.PageLoad" enum="Win8PageLoadType">
  <owner>zturner@chromium.org</owner>
  <summary>
    Count of page loads in each of the 2 different environments (metro/desktop)
    on Windows 8.
  </summary>
</histogram>

<histogram name="WindowManager.AppWindowCountPerLoad">
  <owner>kuscher@chromium.org</owner>
  <summary>
    The number of app windows open when a load completes. This includes windows
    opened by an app shortcut, or apps opened in a popup. This only counts v1
    apps.
  </summary>
</histogram>

<histogram name="WindowManager.PanelWindowCountPerLoad">
  <obsolete>
    Deprecated 4/2013. No longer tracked.
  </obsolete>
  <owner>kuscher@chromium.org</owner>
  <summary>
    The number of panel windows open when a load completes. Panels are windows
    docked to the bottom of the OS desktop, which are visible to the user even
    while the user is interacting with other applications.
  </summary>
</histogram>

<histogram name="WindowManager.PopUpWindowCountPerLoad">
  <owner>kuscher@chromium.org</owner>
  <summary>
    The number of popup windows open when a load completes. Popup windows only
    have one content area (no multiple tabs) and a stripped down toolbar
    consisting only of a read-only address bar.
  </summary>
</histogram>

<histogram name="WindowManager.TabbedWindowCountPerLoad">
  <owner>kuscher@chromium.org</owner>
  <summary>
    The number of tabbed windows open when a load completes. A tabbed window is
    a normal browser window which can have one or more tabs.
  </summary>
</histogram>

<histogram name="Windows.GetVersionExVersion" enum="WindowsVersion">
  <owner>scottmg@chromium.org</owner>
  <summary>
    The Windows version (base::win::Version) as reported by GetVersionEx(). This
    is queried shortly after startup.
  </summary>
</histogram>

<histogram name="Windows.InCompatibilityMode" enum="BooleanCompatibilityMode">
  <owner>scottmg@chromium.org</owner>
  <summary>
    A boolean used to indicate when the Windows version reported by
    GetVersionEx() and the Windows version reported by VerQueryValue() on
    kernel32 do not match. This is queried shortly after startup.
  </summary>
</histogram>

<histogram name="Windows.Kernel32Version" enum="WindowsVersion">
  <owner>scottmg@chromium.org</owner>
  <summary>
    The Windows version (base::win::Version) as reported by VeryQueryValue() on
    kernel32.dll. This is queried shortly after startup.
  </summary>
</histogram>

<histogram name="Windows.Tablet" enum="BooleanTablet">
  <owner>zturner@chromium.org</owner>
  <summary>Count of browser launches from a Windows tablet pc.</summary>
</histogram>

<histogram name="Windows.Win32kRendererLockdown" enum="BooleanEnabled">
  <owner>wfh@chromium.org</owner>
  <summary>
    Count of browser launches where Win32k renderer lockdown is enabled.
  </summary>
</histogram>

<histogram name="WinJumplist.Action" enum="WinJumplistCategory">
  <owner>noms@chromium.org</owner>
  <summary>The type of category clicked in the Windows Jumplist</summary>
</histogram>

<histogram name="WinTimeTicks.FailedToChangeCores" enum="WindowsVersion">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Incremented each time the TimeTicks field trial runs on a machine with
    multiple cores, but failed to change thread affinity. Broken down by Windows
    version.
  </summary>
</histogram>

<histogram name="WinTimeTicks.MinResolutionNanoseconds" units="nanoseconds">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The smallest non-zero delta reported by subsequent calls to
    QueryPerformanceCounter.
  </summary>
</histogram>

<histogram name="WinTimeTicks.NonStopTsc">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    True if the CPU's timestamp counter ticks at a constant rate regardless of
    CPU frequency.
  </summary>
</histogram>

<histogram name="WinTimeTicks.TickedBackwards" enum="WindowsVersion">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The number of times the TimeTicks field trial failed because
    QueryPerformanceCounter ticked backwards. Broken down by Windows version.
  </summary>
</histogram>

<histogram name="WinTimeTicks.VersionSuccessful" enum="WindowsVersion">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The number of times the TimeTicks field trial succeeded. Broken down by
    Windows version.
  </summary>
</histogram>

<histogram name="WinTimeTicks.VersionTotal" enum="WindowsVersion">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The number of times the TimeTicks field trial ran for comparison with
    WinTimeTicks.VersionSuccess. Broken down by Windows version.
  </summary>
</histogram>

<histogram name="WrenchMenu.MenuAction" enum="WrenchMenuAction">
  <owner>ainslie@chromium.org</owner>
  <owner>edwardjung@chromium.org</owner>
  <summary>Number of times that each menu item is clicked.</summary>
</histogram>

<histogram name="WrenchMenu.OpeningAnimationFrameTimes" units="ms">
  <owner>kkimlabs@chromium.org</owner>
  <summary>
    Frame times of the Android wrench menu opening animation. For example, if
    the menu opening animation runs exactly at 60fps for a second, then each
    frame time is 16ms, and a total of 60 values of 16ms are recorded. If the
    animation is janky, we will see values greater than 16ms in the histogram.
  </summary>
</histogram>

<histogram name="WrenchMenu.RecentTabsSubMenu" enum="RecentTabsAction">
  <owner>rpop@chromium.org</owner>
  <summary>
    The number of times each tab or window restore option in the Recent Tabs
    submenu is clicked.
  </summary>
</histogram>

<histogram name="WrenchMenu.TimeToAction">
  <owner>ainslie@chromium.org</owner>
  <owner>edwardjung@chromium.org</owner>
  <summary>
    The time a user takes to select a menu item after opening the menu.
  </summary>
</histogram>

<histogram name="WrenchMenu.TouchDuration" units="ms">
  <owner>kkimlabs@chromium.org</owner>
  <summary>
    Time difference between touch down and touch up on Android wrench button.
  </summary>
</histogram>

<histogram name="ZeroSuggest.AllResults">
  <owner>hfung@chromium.org</owner>
  <summary>
    The number of results (either query or URL) from ZeroSuggest. This is set
    every time a successful response from ZeroSuggest is recieved, which can be
    every time the user focuses on the omnibox.
  </summary>
</histogram>

<histogram name="ZeroSuggest.QueryResults">
  <owner>hfung@chromium.org</owner>
  <summary>
    The number of query results returned from ZeroSuggest. This is set every
    time a successful response from ZeroSuggest is recieved, which can be every
    time the user focuses on the omnibox.
  </summary>
</histogram>

<histogram name="ZeroSuggest.URLResults">
  <owner>hfung@chromium.org</owner>
  <summary>
    The number of URL results returned from ZeroSuggest. This is set every time
    a successful response from ZeroSuggest is recieved, which can be every time
    the user focuses on the omnibox.
  </summary>
</histogram>

</histograms>

<!-- Enum types -->

<enums>

<enum name="Abandoned" type="int">
  <int value="0" label="Finished"/>
  <int value="1" label="Abandoned"/>
</enum>

<enum name="AbandonType" type="int">
  <int value="0" label="Not abandoned"/>
  <int value="1" label="FinishDoc missing"/>
  <int value="2" label="FinishAllLoads missing"/>
  <int value="3" label="FinishAllLoads+FinishDoc missing"/>
  <int value="4" label="LoadEventStart missing"/>
  <int value="5" label="LoadEventStart+FinishDoc missing"/>
  <int value="6" label="LoadEventStart+FinishAllLoads missing"/>
  <int value="7" label="LoadEventStart+FinishAllLoads+FinishDoc missing"/>
  <int value="8" label="LoadEventEnd missing"/>
  <int value="9" label="LoadEventEnd+FinishDoc missing"/>
  <int value="10" label="LoadEventEnd+FinishAllLoads missing"/>
  <int value="11" label="LoadEventEnd+FinishAllLoads+FinishDoc missing"/>
  <int value="12" label="LoadEventEnd+LoadEventStart missing"/>
  <int value="13" label="LoadEventEnd+LoadEventStart+FinishDoc missing"/>
  <int value="14" label="LoadEventEnd+LoadEventStart+FinishAllLoads missing"/>
  <int value="15"
      label="LoadEventEnd+LoadEventStart+FinishAllLoads+FinishDoc missing"/>
</enum>

<enum name="AcceleratedFixedRootBackground" type="int">
  <int value="0" label="ScrolledMainFrame"/>
  <int value="1" label="ScrolledMainFrameWithAcceleratedFixedRootBackground"/>
  <int value="2" label="ScrolledMainFrameWithUnacceleratedFixedRootBackground"/>
</enum>

<enum name="AccountChooserDismissalReason" type="int">
  <int value="0" label="Canceled"/>
  <int value="1" label="Credential chosen"/>
</enum>

<enum name="ActionAfterDoubleTap" type="int">
  <int value="0" label="Navigated Back"/>
  <int value="1" label="Stopped Navigation"/>
  <int value="2" label="No Action"/>
</enum>

<enum name="ActionUponResourceRequest" type="int">
  <int value="0" label="Load resource"/>
  <int value="1" label="Revalidate resource"/>
  <int value="2" label="Use resource from cache"/>
</enum>

<enum name="ActiveWindowShowType" type="int">
  <int value="0" label="No Active Window"/>
  <int value="1" label="Other"/>
  <int value="2" label="Maximized"/>
  <int value="3" label="Fullscreen"/>
  <int value="4" label="Snapped"/>
  <int value="5" label="Docked"/>
</enum>

<enum name="AddressFamily" type="int">
  <int value="0" label="Unspecified"/>
  <int value="1" label="IPv4"/>
  <int value="2" label="IPv6"/>
</enum>

<enum name="AddSearchProvider" type="int">
  <int value="0" label="window.external.AddSearchProvider was called"/>
  <int value="1" label="A confirmation dialog was shown"/>
  <int value="2" label="The user added a search engine via the dialog"/>
  <int value="3"
      label="The user saw the dialog but closed it without adding an engine"/>
</enum>

<enum name="AffiliationFetchResult" type="int">
  <int value="0" label="Success"/>
  <int value="1" label="Network/server error"/>
  <int value="2" label="Malformed response"/>
</enum>

<enum name="AlternateProtocolUsage" type="int">
  <int value="0" label="ALTERNATE_PROTOCOL_USAGE_NO_RACE"/>
  <int value="1" label="ALTERNATE_PROTOCOL_USAGE_WON_RACE"/>
  <int value="2" label="ALTERNATE_PROTOCOL_USAGE_LOST_RACE"/>
  <int value="3" label="ALTERNATE_PROTOCOL_USAGE_MAPPING_MISSING"/>
  <int value="4" label="ALTERNATE_PROTOCOL_USAGE_BROKEN"/>
</enum>

<enum name="AndroidActivityId" type="int">
  <int value="1" label="Unknown"/>
  <int value="2" label="Main"/>
  <int value="3" label="Preferences"/>
  <int value="4" label="WebappActivity"/>
  <int value="5" label="FullScreenActivity"/>
</enum>

<enum name="AndroidActivityStopReason" type="int">
  <int value="0" label="Unknown"/>
  <int value="1" label="Chrome sent to background by system back">
    The user pressed the system back button, sending Chrome to the background.
  </int>
  <int value="2" label="Return button closed app">
    The user hit the return UI button to close the tab and return to the
    previous app.
  </int>
  <int value="3" label="Immediately launched child CustomTabActivity">
    The Activity immediately launched a CustomTabActivity on top of itself.
  </int>
  <int value="4" label="Child CustomTabActivity closed itself">
    The child CustomTabActivity was closed by the user, so this Activity sent
    itself to the background to return the user to the previous app.
  </int>
  <int value="5" label="Another Chrome Activity took focus">
    Another of Chrome's Activities (e.g. Settings or Bookmarks) launched and
    took focus.
  </int>
</enum>

<enum name="AndroidActivitySystemBackAction" type="int">
  <int value="0" label="Nothing happened"/>
  <int value="1"
      label="The foreground tab contained a help article and was closed"/>
  <int value="2"
      label="Chrome was minimized and the foreground tab was kept open"/>
  <int value="3"
      label="Chrome was minimized and the foreground tab was closed"/>
  <int value="4"
      label="The foreground tab was closed, but Chrome stayed visible"/>
  <int value="5" label="Error: No tab is currently being displayed"/>
  <int value="6" label="User exited the tab switcher"/>
  <int value="7" label="User exited fullscreen mode"/>
  <int value="8" label="User navigated backward in the tab's history"/>
</enum>

<enum name="AndroidArmFpu" type="int">
  <int value="0" label="No NEON support"/>
  <int value="1" label="NEON support"/>
</enum>

<enum name="AndroidEvictionReason" type="int">
  <int value="0" label="TabUnusedTooLong"/>
  <int value="1" label="TabUnusedInSession"/>
  <int value="2" label="LimitOfActiveTabs"/>
  <int value="3" label="EvictNTabs"/>
  <int value="4" label="EvictAll"/>
</enum>

<enum name="AndroidGATTConnectionErrorCodes" type="int">
  <summary>
    This list includes all errors from the Bluetooth Specification Version 4.2
    [Vol 2, Part D] as well as an error from Android's BluetoothGatt (0x101
    GATT_FAILURE) and an error from Bluedroid's gatt_api.h (0x100 L2CAP
    connection cancelled).
  </summary>
  <int value="0" label="0x00 Success"/>
  <int value="1" label="0x01 Unknown HCI Command"/>
  <int value="2" label="0x02 Unknown Connection Identifier"/>
  <int value="3" label="0x03 Hardware Failure"/>
  <int value="4" label="0x04 Page Timeout"/>
  <int value="5" label="0x05 Authentication Failure"/>
  <int value="6" label="0x06 PIN or Key Missing"/>
  <int value="7" label="0x07 Memory Capacity Exceeded"/>
  <int value="8" label="0x08 Connection Timeout"/>
  <int value="9" label="0x09 Connection Limit Exceeded"/>
  <int value="10"
      label="0x0A Synchronous Connection Limit To A Device Exceeded"/>
  <int value="11" label="0x0B ACL Connection Already Exists"/>
  <int value="12" label="0x0C Command Disallowed"/>
  <int value="13" label="0x0D Connection Rejected due to Limited Resources"/>
  <int value="14" label="0x0E Connection Rejected Due To Security Reasons"/>
  <int value="15" label="0x0F Connection Rejected due to Unacceptable BD_ADDR"/>
  <int value="16" label="0x10 Connection Accept Timeout Exceeded"/>
  <int value="17" label="0x11 Unsupported Feature or Parameter Value"/>
  <int value="18" label="0x12 Invalid HCI Command Parameters"/>
  <int value="19" label="0x13 Remote User Terminated Connection"/>
  <int value="20"
      label="0x14 Remote Device Terminated Connection due to Low Resources"/>
  <int value="21"
      label="0x15 Remote Device Terminated Connection due to Power Off"/>
  <int value="22" label="0x16 Connection Terminated By Local Host"/>
  <int value="23" label="0x17 Repeated Attempts"/>
  <int value="24" label="0x18 Pairing Not Allowed"/>
  <int value="25" label="0x19 Unknown LMP PDU"/>
  <int value="26"
      label="0x1A Unsupported Remote Feature / Unsupported LMP Feature"/>
  <int value="27" label="0x1B SCO Offset Rejected"/>
  <int value="28" label="0x1C SCO Interval Rejected"/>
  <int value="29" label="0x1D SCO Air Mode Rejected"/>
  <int value="30" label="0x1E Invalid LMP Parameters / Invalid LL Parameters"/>
  <int value="31" label="0x1F Unspecified Error"/>
  <int value="32"
      label="0x20 Unsupported LMP Parameter Value / Unsupported LL Parameter
             Value"/>
  <int value="33" label="0x21 Role Change Not Allowed"/>
  <int value="34" label="0x22 LMP Response Timeout / LL Response Timeout"/>
  <int value="35" label="0x23 LMP Error Transaction Collision"/>
  <int value="36" label="0x24 LMP PDU Not Allowed"/>
  <int value="37" label="0x25 Encryption Mode Not Acceptable"/>
  <int value="38" label="0x26 Link Key cannot be Changed"/>
  <int value="39" label="0x27 Requested QoS Not Supported"/>
  <int value="40" label="0x28 Instant Passed"/>
  <int value="41" label="0x29 Pairing With Unit Key Not Supported"/>
  <int value="42" label="0x2A Different Transaction Collision"/>
  <int value="43" label="0x2B Reserved"/>
  <int value="44" label="0x2C QoS Unacceptable Parameter"/>
  <int value="45" label="0x2D QoS Rejected"/>
  <int value="46" label="0x2E Channel Classification Not Supported"/>
  <int value="47" label="0x2F Insufficient Security"/>
  <int value="48" label="0x30 Parameter Out Of Mandatory Range"/>
  <int value="49" label="0x31 Reserved"/>
  <int value="50" label="0x32 Role Switch Pending"/>
  <int value="51" label="0x33 Reserved"/>
  <int value="52" label="0x34 Reserved Slot Violation"/>
  <int value="53" label="0x35 Role Switch Failed"/>
  <int value="54" label="0x36 Extended Inquiry Response Too Large"/>
  <int value="55" label="0x37 Secure Simple Pairing Not Supported By Host"/>
  <int value="56" label="0x38 Host Busy - Pairing"/>
  <int value="57"
      label="0x39 Connection Rejected due to No Suitable Channel Found"/>
  <int value="58" label="0x3A Controller Busy"/>
  <int value="59" label="0x3B Unacceptable Connection Parameters"/>
  <int value="60" label="0x3C Directed Advertising Timeout"/>
  <int value="61" label="0x3D Connection Terminated due to MIC Failure"/>
  <int value="62" label="0x3E Connection Failed to be Established"/>
  <int value="63" label="0x3F MAC Connection Failed"/>
  <int value="64"
      label="0x40 Coarse Clock Adjustment Rejected but Will Try to Adjust
             Using Clock Dragging"/>
  <int value="256" label="0x100 Bluedroid L2CAP connection cancelled"/>
  <int value="257" label="0x101 Android GATT Failure"/>
</enum>

<enum name="AndroidKernelVersion" type="int">
  <int value="131078" label="2.6"/>
  <int value="196608" label="3.0"/>
  <int value="196609" label="3.1"/>
  <int value="196610" label="3.2"/>
  <int value="196611" label="3.3"/>
  <int value="196612" label="3.4"/>
  <int value="196613" label="3.5"/>
  <int value="196614" label="3.6"/>
  <int value="196615" label="3.7"/>
  <int value="196616" label="3.8"/>
  <int value="196618" label="3.10"/>
  <int value="196619" label="3.11"/>
  <int value="196620" label="3.12"/>
  <int value="196621" label="3.13"/>
  <int value="196622" label="3.14"/>
  <int value="196625" label="3.17"/>
  <int value="196626" label="3.18"/>
  <int value="196627" label="3.19"/>
  <int value="262144" label="4.0"/>
  <int value="262145" label="4.1"/>
  <int value="262154" label="4.10"/>
</enum>

<enum name="AndroidMemoryNotificationBackground" type="int">
  <int value="0" label="TrimMemoryUiHidden"/>
  <int value="1" label="TrimMemoryBackground"/>
  <int value="2" label="TrimMemoryModerate"/>
  <int value="3" label="TrimMemoryComplete"/>
</enum>

<enum name="AndroidMemoryNotificationForeground" type="int">
  <int value="0" label="TrimMemoryRunningModerate"/>
  <int value="1" label="TrimMemoryRunningLow"/>
  <int value="2" label="TrimMemoryRunningCritical"/>
  <int value="3" label="LowMemory"/>
</enum>

<enum name="AndroidSeccompSandboxStatus" type="int">
  <int value="0" label="Not Supported"/>
  <int value="1" label="Detection Failed"/>
  <int value="2" label="Feature Disabled"/>
  <int value="3" label="Feature Enabled"/>
  <int value="4" label="Sandbox Engaged"/>
</enum>

<enum name="AndroidSeccompStatus" type="int">
  <int value="0" label="Detection Failed"/>
  <int value="1" label="Not Supported"/>
  <int value="2" label="Supported"/>
</enum>

<enum name="AndroidSigninPromoAction" type="int">
  <int value="0" label="Promo enabled">
    The Android signin promo was enabled to show on next startup.
  </int>
  <int value="1" label="Promo shown">The Android signin promo was shown.</int>
  <int value="2" label="Promo declined">
    User declined the Android signin promo.
  </int>
  <int value="3" label="Promo accepted">
    User completed signin through the Android signin promo flow successfully.
  </int>
  <int value="4" label="Promo accepted with advanced settings">
    User completed signin through the Android signin promo flow successfully and
    chose to configure sync settings.
  </int>
</enum>

<enum name="AndroidTabCloseUndoToastEvent" type="int">
  <int value="0" label="Undo Shown (Cold)"/>
  <int value="1" label="Undo Shown (Warm)"/>
  <int value="2" label="Undo Pressed"/>
  <int value="3" label="Undos Dismissed (Timeout) (Deprecated)"/>
  <int value="4" label="Undos Dismissed (Action) (Deprecated)"/>
</enum>

<enum name="AppBannersDismissEvent" type="int">
  <int value="41" label="Error/unknown reason for dismissal"/>
  <int value="42" label="User opened the application after installing it"/>
  <int value="43" label="User clicked on the banner"/>
  <int value="44" label="(Obsolete) User swiped the banner away"/>
  <int value="45" label="User hit the X button"/>
  <int value="46" label="User began app install, but it didn't finish in time"/>
  <int value="47" label="Banner was dismissed for any reason"/>
</enum>

<enum name="AppBannersDisplayEvent" type="int">
  <int value="1" label="Banner was requested by the site"/>
  <int value="2" label="User previously blocked the same banner"/>
  <int value="3" label="User blocked too many other banners from the site"/>
  <int value="4" label="Banner created"/>
  <int value="5" label="User already installed the app"/>
  <int value="6" label="User ignored the banner last time"/>
  <int value="7" label="Manifest lacks a service worker"/>
  <int value="8" label="Site hasn't been visited frequently enough"/>
  <int value="9" label="Native app banner was requested by the site"/>
  <int value="10" label="Web app banner was requested by the site"/>
  <int value="11" label="Native app banner created"/>
  <int value="12" label="Web app banner created"/>
</enum>

<enum name="AppBannersInstallEvent" type="int">
  <int value="21" label="(Native app) User triggered the app install dialog"/>
  <int value="22" label="(Native app) User began installing the app"/>
  <int value="23"
      label="(Native app) User waited for the app to finish installing"/>
  <int value="24" label="(Web app) User installed a web app"/>
</enum>

<enum name="AppBannersUserResponse" type="int">
  <int value="1" label="Native app banner was accepted by the user"/>
  <int value="2" label="Web app banner was accepted by the user"/>
  <int value="3" label="Native app banner was dismissed by the user"/>
  <int value="4" label="Web app banner was dismissed by the user"/>
  <int value="5" label="Native app banner was ignored by the user"/>
  <int value="6" label="Web app banner was ignored by the user"/>
</enum>

<enum name="AppCacheCheckResponseResult" type="int">
  <int value="0" label="OK"/>
  <int value="1" label="Manifest obsolete"/>
  <int value="2" label="Response obsolete"/>
  <int value="3" label="Entry not found"/>
  <int value="4" label="Read headers error"/>
  <int value="5" label="Read data error"/>
  <int value="6" label="Unexpected size"/>
  <int value="7" label="Check canceled"/>
</enum>

<enum name="AppCacheErrorSite" type="int">
  <summary>Identifies the point of failure, see sources.</summary>
</enum>

<enum name="AppCacheInitResult" type="int">
  <int value="0" label="OK"/>
  <int value="1" label="SQL Database Error"/>
  <int value="2" label="Disk Cache Error"/>
</enum>

<enum name="AppCacheUpdateJobResult" type="int">
  <int value="0" label="OK"/>
  <int value="1" label="SQL Database Error"/>
  <int value="2" label="Disk Cache Error"/>
  <int value="3" label="Quota Error"/>
  <int value="4" label="Redirect Error"/>
  <int value="5" label="Manifest Error"/>
  <int value="6" label="Network Error"/>
  <int value="7" label="Server Error"/>
  <int value="8" label="Cancelled"/>
  <int value="9" label="Security Error"/>
</enum>

<enum name="AppInfoDialogLaunchOrigin" type="int">
  <int value="0" label="App List context menu"/>
  <int value="1" label="Extensions page"/>
  <int value="2" label="Apps Page context menu"/>
</enum>

<enum name="AppLaunch" type="int">
  <int value="0" label="NTP_APPS_MAXIMIZED"/>
  <int value="1" label="NTP_APPS_COLLAPSED"/>
  <int value="2" label="NTP_APPS_MENU"/>
  <int value="3" label="NTP_MOST_VISITED"/>
  <int value="4" label="NTP_RECENTLY_CLOSED"/>
  <int value="5" label="BOOKMARK_BAR"/>
  <int value="6" label="CONTENT_NAVIGATION"/>
  <int value="7" label="SESSION_RESTORE"/>
  <int value="8" label="AUTOLAUNCH"/>
  <int value="9" label="OMNIBOX_APP"/>
  <int value="10" label="OMNIBOX_LOCATION"/>
  <int value="11" label="OMNIBOX_INSTANT"/>
  <int value="12" label="EXTENSION_API"/>
  <int value="13" label="CMD_LINE_APP"/>
  <int value="14" label="CMD_LINE_URL"/>
  <int value="15" label="NTP_WEBSTORE"/>
  <int value="16" label="NTP_APP_RE_ENABLE"/>
  <int value="17" label="CMD_LINE_APP_LEGACY"/>
  <int value="18" label="NTP_WEBSTORE_FOOTER"/>
  <int value="19" label="NTP_WEBSTORE_PLUS_ICON"/>
  <int value="20" label="APP_LIST_MAIN"/>
  <int value="21" label="APP_LIST_SEARCH"/>
  <int value="22" label="APP_LIST_MAIN_CHROME"/>
  <int value="23" label="APP_LIST_MAIN_WEBSTORE"/>
  <int value="24" label="APP_LIST_SEARCH_CHROME"/>
  <int value="25" label="APP_LIST_SEARCH_WEBSTORE"/>
</enum>

<enum name="AppLaunchContainer" type="int">
  <int value="0" label="LAUNCH_CONTAINER_WINDOW"/>
  <int value="1" label="LAUNCH_CONTAINER_PANEL"/>
  <int value="2" label="LAUNCH_CONTAINER_TAB"/>
  <int value="3" label="LAUNCH_CONTAINER_NONE (v2 packaged apps)"/>
</enum>

<enum name="AppLauncherPromo" type="int">
  <int value="0" label="Already installed"/>
  <int value="1" label="Shown"/>
  <int value="2" label="Dismissed"/>
  <int value="3" label="Learn more"/>
</enum>

<enum name="AppLaunchSource" type="int">
  <int value="0" label="SOURCE_UNTRACKED"/>
  <int value="1" label="SOURCE_APP_LAUNCHER"/>
  <int value="2" label="SOURCE_NEW_TAB_PAGE"/>
  <int value="3" label="SOURCE_RELOAD"/>
  <int value="4" label="SOURCE_RESTART"/>
  <int value="5" label="SOURCE_LOAD_AND_LAUNCH"/>
  <int value="6" label="SOURCE_COMMAND_LINE"/>
  <int value="7" label="SOURCE_FILE_HANDLER"/>
  <int value="8" label="SOURCE_URL_HANDLER"/>
  <int value="9" label="SOURCE_SYSTEM_TRAY"/>
  <int value="10" label="SOURCE_ABOUT_PAGE"/>
  <int value="11" label="SOURCE_KEYBOARD"/>
  <int value="12" label="SOURCE_EXTENSIONS_PAGE"/>
  <int value="13" label="SOURCE_MANAGEMENT_API"/>
  <int value="14" label="SOURCE_EPHEMERAL_APP_DEPRECATED"/>
  <int value="15" label="SOURCE_BACKGROUND"/>
  <int value="16" label="SOURCE_KIOSK"/>
  <int value="17" label="SOURCE_CHROME_INTERNAL"/>
  <int value="18" label="SOURCE_TEST"/>
</enum>

<enum name="AppleScriptCommandEvents" type="int">
  <int value="0" label="Tab Close"/>
  <int value="1" label="Tab Copy"/>
  <int value="2" label="Tab Cut"/>
  <int value="3" label="Tab Execute Javascript"/>
  <int value="4" label="Tab Go Back"/>
  <int value="5" label="Tab Go Forward"/>
  <int value="6" label="Tab Paste"/>
  <int value="7" label="Tab Print"/>
  <int value="8" label="Tab Redo"/>
  <int value="9" label="Tab Reload"/>
  <int value="10" label="Tab Save"/>
  <int value="11" label="Tab Select All"/>
  <int value="12" label="Tab Stop"/>
  <int value="13" label="Tab Undo"/>
  <int value="14" label="Tab View Source"/>
  <int value="15" label="Window Close"/>
  <int value="16" label="Window Enter Presentation Mode"/>
  <int value="17" label="Window Exit Presentation Mode"/>
</enum>

<enum name="AppListDoodleAction" type="int">
  <int value="0" label="DOODLE_SHOWN"/>
  <int value="1" label="DOODLE_CLICKED"/>
</enum>

<enum name="AppListEnableSource" type="int">
  <int value="0" label="Not enabled (should never be recorded)"/>
  <int value="1" label="Packaged app installed from Web Store"/>
  <int value="2" label="Clicked app launcher link from the Web Store"/>
  <int value="3" label="Command line flag"/>
  <int value="4" label="Chrome reinstalled over old, enabled profile"/>
  <int value="5" label="Second packaged app installed without showing"/>
</enum>

<enum name="AppListPage" type="int">
  <int value="0" label="APPS"/>
  <int value="1" label="SEARCH_RESULTS"/>
  <int value="2" label="START"/>
  <int value="3" label="CUSTOM_LAUNCHER_PAGE"/>
</enum>

<enum name="AppListSearchResult" type="int">
  <int value="0" label="OMNIBOX"/>
  <int value="1" label="APP"/>
  <int value="2" label="WEBSTORE"/>
  <int value="3" label="SEARCH_WEBSTORE"/>
  <int value="4" label="SEARCH_PEOPLE"/>
  <int value="5" label="SUGGESTION"/>
  <int value="6" label="LAUNCHER_SEARCH_PROVIDER"/>
</enum>

<enum name="AppListSearchResultDisplayType" type="int">
  <int value="0" label="NONE"/>
  <int value="1" label="LIST"/>
  <int value="2" label="TILE"/>
  <int value="3" label="RECOMMENDATION"/>
</enum>

<enum name="AppLoadedInTabSource" type="int">
  <int value="0" label="SOURCE_APP"/>
  <int value="1" label="SOURCE_BACKGROUND_PAGE"/>
</enum>

<enum name="AppLocation" type="int">
  <int value="0" label="Invalid location"/>
  <int value="1" label="Internal extension"/>
  <int value="2" label="Internal extension (loaded via prefs)"/>
  <int value="3" label="Internal extension (loaded via the registry)"/>
  <int value="4" label="Unpacked extension"/>
  <int value="5" label="Component app"/>
  <int value="6" label="External extension (downloaded via prefs)"/>
  <int value="7" label="External extension (downloaded via admin policies)"/>
  <int value="8" label="Command-line extension"/>
  <int value="9" label="External extension (loaded via prefs and cached)"/>
  <int value="10" label="Component app (downloaded)"/>
</enum>

<enum name="AppPromoAction" type="int">
  <int value="0" label="PROMO_LAUNCH_APP"/>
  <int value="1" label="PROMO_LAUNCH_WEB_STORE"/>
  <int value="2" label="PROMO_CLOSE"/>
  <int value="3" label="PROMO_EXPIRE"/>
  <int value="4" label="PROMO_SEEN"/>
</enum>

<enum name="AppsPageDragSource" type="int">
  <int value="0" label="Same apps pane"/>
  <int value="1" label="Different apps pane"/>
  <int value="2" label="Most visited pane"/>
  <int value="3" label="Bookmarks pane"/>
  <int value="4" label="Outside of NTP (e.g. bookmarks bar)"/>
</enum>

<enum name="ArcOptInAction" type="int">
  <summary>Defines Arc OptIn actions</summary>
  <int value="0" label="Opted In"/>
  <int value="1" label="Opted Out"/>
  <int value="2" label="Notification accepted"/>
  <int value="3" label="Notification declined"/>
  <int value="4" label="Notification timed out"/>
  <int value="5" label="Retry after OptIn failure"/>
</enum>

<enum name="ArcOptInCancel" type="int">
  <summary>Defines Arc OptIn cancel reason</summary>
  <int value="0" label="Canceled by user"/>
  <int value="1" label="Unclassified failure"/>
  <int value="2" label="Network failure"/>
  <int value="3" label="GMS Services are not available"/>
  <int value="4" label="Bad authentication returned by server"/>
  <int value="5" label="GMS Core is not available"/>
  <int value="6" label="Cloud provision flow failed"/>
</enum>

<enum name="AsyncDNSConfigParsePosix" type="int">
  <int value="0" label="OK"/>
  <int value="1" label="RES_INIT_FAILED"/>
  <int value="2" label="RES_INIT_UNSET"/>
  <int value="3" label="BAD_ADDRESS"/>
  <int value="4" label="BAD_EXT_STRUCT"/>
  <int value="5" label="NULL_ADDRESS"/>
  <int value="6" label="NO_NAMESERVERS"/>
  <int value="7" label="MISSING_OPTIONS"/>
  <int value="8" label="UNHANDLED_OPTIONS"/>
</enum>

<enum name="AsyncDNSConfigParseWin" type="int">
  <int value="0" label="OK"/>
  <int value="1" label="READ_IPHELPER"/>
  <int value="2" label="READ_POLICY_SEARCHLIST"/>
  <int value="3" label="READ_TCPIP_SEARCHLIST"/>
  <int value="4" label="READ_DOMAIN"/>
  <int value="5" label="READ_POLICY_DEVOLUTION"/>
  <int value="6" label="READ_DNSCACHE_DEVOLUTION"/>
  <int value="7" label="READ_TCPIP_DEVOLUTION"/>
  <int value="8" label="READ_APPEND_MULTILABEL"/>
  <int value="9" label="READ_PRIMARY_SUFFIX"/>
  <int value="10" label="BAD_ADDRESS"/>
  <int value="11" label="NO_NAMESERVERS"/>
  <int value="12" label="UNHANDLED_OPTIONS"/>
</enum>

<enum name="AsyncDNSHostsParseWin" type="int">
  <int value="0" label="OK"/>
  <int value="1" label="UNREADABLE_HOSTS_FILE"/>
  <int value="2" label="COMPUTER_NAME_FAILED"/>
  <int value="3" label="IPHELPER_FAILED"/>
  <int value="4" label="BAD_ADDRESS"/>
</enum>

<enum name="AsyncDNSNameServersType" type="int">
  <summary>Type of nameservers in the DNS config.</summary>
  <int value="0" label="NONE">No nameservers configured.</int>
  <int value="1" label="GOOGLE_PUBLIC_DNS">
    All nameservers are Google Public DNS servers.
  </int>
  <int value="2" label="PUBLIC">
    All nameservers have public IP addresses (and aren't Google Public DNS
    servers).
  </int>
  <int value="3" label="PRIVATE">
    All nameservers have private IP addresses (loopback, link-local, or RFC
    1918).
  </int>
  <int value="4" label="MIXED">
    Nameservers are a mix of types (Google Public DNS, public, private).
  </int>
</enum>

<enum name="AsyncDNSParseResult" type="int">
  <summary>Results of DnsResponse::ParseToAddressList.</summary>
  <int value="0" label="SUCCESS"/>
  <int value="1" label="MALFORMED_RESPONSE"/>
  <int value="2" label="MALFORMED_CNAME"/>
  <int value="3" label="NAME_MISMATCH"/>
  <int value="4" label="SIZE_MISMATCH"/>
  <int value="5" label="CNAME_AFTER_ADDRESS"/>
  <int value="6" label="ADDRESS_TTL_MISMATCH"/>
  <int value="7" label="NO_ADDRESSES"/>
</enum>

<enum name="AsyncDNSPrefDefaultSource" type="int">
  <int value="0" label="PLATFORM"/>
  <int value="1" label="FIELD_TRIAL"/>
  <int value="2" label="HARD_CODED_DEFAULT"/>
</enum>

<enum name="AsyncDNSPrefSource" type="int">
  <int value="0" label="MANAGED_PREF"/>
  <int value="1" label="SUPERVISED_PREF"/>
  <int value="2" label="EXTENSION_PREF"/>
  <int value="3" label="COMMAND_LINE_PREF"/>
  <int value="4" label="USER_PREF"/>
  <int value="5" label="RECOMMENDED_PREF"/>
  <int value="6" label="DEFAULT_PREF"/>
  <int value="7" label="UNKNOWN_PREF"/>
</enum>

<enum name="AsyncDNSResolveStatus" type="int">
  <int value="0" label="DNS_SUCCESS">Succeeded with async DNS.</int>
  <int value="1" label="PROC_SUCCESS">
    Succeeded with getaddrinfo after async DNS failed.
  </int>
  <int value="2" label="FAIL">Both async DNS and getaddrinfo failed.</int>
  <int value="3" label="SUSPECT_NETBIOS">
    Same as PROC_SUCCESS except the hostname fits NetBIOS name criteria.
  </int>
</enum>

<enum name="AsyncDNSWatchStatus" type="int">
  <int value="0" label="STARTED">Started.</int>
  <int value="1" label="FAILED_TO_START_CONFIG">
    Failed to start watching config.
  </int>
  <int value="2" label="FAILED_TO_START_HOSTS">
    Failed to start watching HOSTS.
  </int>
  <int value="3" label="FAILED_CONFIG">Failed during watching config.</int>
  <int value="4" label="FAILED_HOSTS">Failed during watching HOSTS.</int>
</enum>

<enum name="AsyncRevalidationResult" type="int">
  <int value="0" label="LOADED">A new entry was stored in the cache.</int>
  <int value="1" label="REVALIDATED">
    The existing cache entry was revalidated.
  </int>
  <int value="2" label="NET_ERROR">
    An error occurred before a response was received.
  </int>
  <int value="3" label="READ_ERROR">
    An error occurred while reading the response body.
  </int>
  <int value="4" label="GOT_REDIRECT">A redirect response was received.</int>
  <int value="5" label="AUTH_FAILED">
    A request for authentication was received, and no cached credentials were
    available.
  </int>
  <int value="6" label="RESPONSE_TIMEOUT">
    Timed out before a response was received.
  </int>
  <int value="7" label="BODY_TIMEOUT">
    Timed out while reading the response body.
  </int>
</enum>

<enum name="AudioCodec" type="int">
  <int value="0" label="kUnknownAudioCodec"/>
  <int value="1" label="kCodecAAC"/>
  <int value="2" label="kCodecMP3"/>
  <int value="3" label="kCodecPCM"/>
  <int value="4" label="kCodecVorbis"/>
  <int value="5" label="kCodecFLAC"/>
  <int value="6" label="kCodecAMR_NB"/>
  <int value="7" label="kCodecAMR_WB"/>
  <int value="8" label="kCodecPCM_MULAW"/>
  <int value="9" label="kCodecGSM_MS"/>
  <int value="10" label="kCodecPCM_S16BE"/>
  <int value="11" label="kCodecPCM_S24BE"/>
  <int value="12" label="kCodecOpus"/>
  <int value="13" label="kCodecEAC3"/>
  <int value="14" label="kCodecPCM_ALAW"/>
  <int value="15" label="kCodecALAC"/>
  <int value="16" label="kCodecAC3"/>
</enum>

<enum name="AudioDevicePropertyResult" type="int">
  <int value="0" label="Other"/>
  <int value="1" label="Device has changed"/>
  <int value="2" label="IO stopped abnormally"/>
  <int value="3" label="Hog mode"/>
  <int value="4" label="Buffer frame size"/>
  <int value="5" label="Buffer frame size range"/>
  <int value="6" label="Stream configuration"/>
  <int value="7" label="Actual sample rate"/>
  <int value="8" label="Nominal sample rate"/>
  <int value="9" label="Device is running somewhere"/>
  <int value="10" label="Device is running"/>
  <int value="11" label="Device is alive"/>
  <int value="12" label="Stream physical format"/>
  <int value="13" label="Jack is connected"/>
  <int value="14" label="Processor overload"/>
  <int value="15" label="Data sources"/>
  <int value="16" label="Data source"/>
  <int value="17" label="Volume decibels"/>
  <int value="18" label="Volume scalar"/>
  <int value="19" label="Mute"/>
  <int value="20" label="Plugin"/>
  <int value="21" label="Uses variable buffer fram sizes"/>
  <int value="22" label="IO cycle usage"/>
  <int value="23" label="IO proc stream usage"/>
  <int value="24" label="Configuration application"/>
  <int value="25" label="Device UID"/>
  <int value="26" label="Mode UID"/>
  <int value="27" label="Transport type"/>
  <int value="28" label="Related devices"/>
  <int value="29" label="Clock domain"/>
  <int value="30" label="Device can be default device"/>
  <int value="31" label="Device can be default system device"/>
  <int value="32" label="Latency"/>
  <int value="33" label="Streams"/>
  <int value="34" label="Control list"/>
  <int value="35" label="Safety offset"/>
  <int value="36" label="Available nominal sample rates"/>
  <int value="37" label="Icon"/>
  <int value="38" label="Is hidden"/>
  <int value="39" label="Preferred channels for stereo"/>
  <int value="40" label="Preferred channel layout"/>
  <int value="41" label="Volume range decibels"/>
  <int value="42" label="Volume scalar to decibels"/>
  <int value="43" label="Volume decibel to scalar"/>
  <int value="44" label="Stereo pan"/>
  <int value="45" label="Stereo pan channels"/>
  <int value="46" label="Solo"/>
  <int value="47" label="Phantom power"/>
  <int value="48" label="Phase invert"/>
  <int value="49" label="Clip light"/>
  <int value="50" label="Talkback"/>
  <int value="51" label="Listenback"/>
  <int value="52" label="Clock source"/>
  <int value="53" label="Clock sources"/>
  <int value="54" label="Sub mute"/>
</enum>

<enum name="AudioFramesPerBuffer" type="int">
  <int value="0" label="k160"/>
  <int value="1" label="k320"/>
  <int value="2" label="k440"/>
  <int value="3" label="k480"/>
  <int value="4" label="k640"/>
  <int value="5" label="k880"/>
  <int value="6" label="k960"/>
  <int value="7" label="k1440"/>
  <int value="8" label="k1920"/>
</enum>

<enum name="AudioGlitchResult" type="int">
  <int value="0" label="No audio glitches"/>
  <int value="1" label="Audio glitches"/>
</enum>

<enum name="AudioInputSilenceReport" type="int">
  <int value="0" label="No measurement"/>
  <int value="1" label="Only audio"/>
  <int value="2" label="Only silence"/>
  <int value="3" label="Audio and silence"/>
</enum>

<enum name="AudioRendererEvents" type="int">
  <int value="0" label="Initialized"/>
  <int value="1" label="Runtime error"/>
</enum>

<enum name="AudioSampleFormat" type="int">
  <int value="0" label="Unknown"/>
  <int value="1" label="Unsigned 8-bit"/>
  <int value="2" label="Signed 16-bit"/>
  <int value="3" label="Signed 32-bit"/>
  <int value="4" label="Float 32-bit"/>
  <int value="5" label="Signed 16-bit planar"/>
  <int value="6" label="Float 32-bit planar"/>
</enum>

<enum name="AudioSampleRate" type="int">
  <int value="0" label="8 kHz"/>
  <int value="1" label="16 kHz"/>
  <int value="2" label="32 kHz"/>
  <int value="3" label="48 kHz"/>
  <int value="4" label="96 kHz"/>
  <int value="5" label="11.025 kHz"/>
  <int value="6" label="22.05 kHz"/>
  <int value="7" label="44.1 kHz"/>
  <int value="8" label="88.2 kHz"/>
  <int value="9" label="176.4 kHz"/>
  <int value="10" label="192 kHz"/>
  <int value="11" label="24 kHz"/>
  <int value="12" label="384 kHz"/>
</enum>

<enum name="AudioThreadStatus" type="int">
  <int value="0" label="None"/>
  <int value="1" label="Started"/>
  <int value="2" label="Hung"/>
  <int value="3" label="Recovered"/>
</enum>

<enum name="AudioTrackProcessingStates" type="int">
  <int value="0" label="Enabled"/>
  <int value="1" label="Disabled"/>
  <int value="2" label="Processing in WebRTC"/>
</enum>

<enum name="AutocheckoutBubble" type="int">
  <obsolete>
    Deprecated as of 8/2013.
  </obsolete>
  <int value="0" label="Created"/>
  <int value="1" label="Accepted"/>
  <int value="2" label="Dismissed"/>
  <int value="3" label="Ignored"/>
  <int value="4" label="Could be displayed"/>
</enum>

<enum name="AutocheckoutBuyFlow" type="int">
  <obsolete>
    Deprecated as of 8/2013.
  </obsolete>
  <int value="0" label="Started"/>
  <int value="1" label="Success"/>
  <int value="2" label="Missing field mappings"/>
  <int value="3" label="Missing advance element"/>
  <int value="4" label="Cannot proceed"/>
</enum>

<enum name="AutofillCardUploadDecision" type="int">
  <obsolete>
    Deprecated as of 2/2016, replaced by AutofillCardUploadDecisionExpanded.
  </obsolete>
  <int value="0" label="Upload offered"/>
  <int value="1" label="Upload not offered, no CVC detected"/>
  <int value="2" label="Upload not offered, no valid address available"/>
  <int value="3" label="Upload not offered, get upload details RPC failed"/>
</enum>

<enum name="AutofillCardUploadDecisionExpanded" type="int">
  <int value="0" label="Upload offered"/>
  <int value="1" label="Upload not offered, no CVC detected"/>
  <int value="2" label="Upload not offered, no address available"/>
  <int value="3" label="Upload not offered, no name available"/>
  <int value="4"
      label="Upload not offered, addresses had conflicting zip codes"/>
  <int value="5" label="Upload not offered, no zip code available"/>
  <int value="6" label="Upload not offered, get upload details RPC failed"/>
  <int value="7"
      label="Upload not offered, card and/or addresses had conflicting names"/>
</enum>

<enum name="AutofillCreditCardInfoBar" type="int">
  <int value="0" label="Shown"/>
  <int value="1" label="Accepted"/>
  <int value="2" label="Denied"/>
  <int value="3" label="Ignored"/>
</enum>

<enum name="AutofillDeveloperEngagement" type="int">
  <int value="0" label="Fillable form parsed"/>
  <int value="1" label="Includes type hints"/>
</enum>

<enum name="AutofillDialogDismissalState" type="int">
  <int value="0" label="Submitted, existing data (deprecated)"/>
  <int value="1" label="Submitted, saved to Wallet"/>
  <int value="2" label="Submitted, saved locally"/>
  <int value="3" label="Submitted, no save"/>
  <int value="4" label="Canceled, no edits"/>
  <int value="5" label="Canceled, no invalid fields"/>
  <int value="6" label="Canceled, 1+ invalid fields"/>
  <int value="7" label="Canceled during sign-in"/>
  <int value="8" label="Submitted, existing data came from Wallet"/>
  <int value="9" label="Submitted, existing data came from Autofill"/>
</enum>

<enum name="AutofillDialogInitialUserState" type="int">
  <int value="0" label="Not signed in, no Autofill"/>
  <int value="1" label="Not signed in, has Autofill"/>
  <int value="2" label="Signed in, no Wallet, no Autofill"/>
  <int value="3" label="Signed in, no Wallet, has Autofill"/>
  <int value="4" label="Signed in, has Wallet, no Autofill"/>
  <int value="5" label="Signed in, ha Wallet, has Autofill"/>
</enum>

<enum name="AutofillDialogPopupEvent" type="int">
  <int value="0" label="Popup shown"/>
  <int value="1" label="Form Autofilled"/>
</enum>

<enum name="AutofillDialogSecurity" type="int">
  <int value="0" label="Baseline: Dialog shown"/>
  <int value="1" label="Credit card over HTTP"/>
  <int value="2" label="Cross-origin frame"/>
</enum>

<enum name="AutofillDialogUiEvents" type="int">
  <int value="0" label="Dialog shown"/>
  <int value="1" label="Dialog submitted"/>
  <int value="2" label="Dialog canceled"/>
  <int value="3"
      label="Account switched: Wallet-&gt;Autofill (M35+: user actions only)"/>
  <int value="4" label="Account switched: Autofill-&gt;Wallet"/>
  <int value="5" label="Account switched: Wallet-&gt;Wallet"/>
  <int value="6" label="Sign-in UI shown"/>
  <int value="7" label="Selected different email suggestion"/>
  <int value="8" label="Selected different billing suggestion"/>
  <int value="9" label="Selected different cc+billing suggestion"/>
  <int value="10" label="Selected different shipping suggestion"/>
  <int value="11" label="Selected different cc suggestion"/>
  <int value="12" label="Showed edit UI for email"/>
  <int value="13" label="Showed edit UI for billing"/>
  <int value="14" label="Showed edit UI for cc+billing"/>
  <int value="15" label="Showed edit UI for shipping"/>
  <int value="16" label="Showed edit UI for cc"/>
  <int value="17" label="Selected 'Add email' suggestion"/>
  <int value="18" label="Selected 'Add billing' suggestion"/>
  <int value="19" label="Selected 'Add cc+billing' suggestion"/>
  <int value="20" label="Selected 'Add shipping' suggestion"/>
  <int value="21" label="Selected 'Add cc' suggestion"/>
  <int value="22" label="Account switched: Wallet account added (multilogin)"/>
</enum>

<enum name="AutofillExperimentId" type="int">
  <int value="0" label="No Experiment"/>
  <int value="1" label="Unknown"/>
  <int value="2" label="ar06"/>
  <int value="3" label="ar1"/>
  <int value="4" label="ar2"/>
  <int value="5" label="ar4"/>
  <int value="6" label="ar05wlr15"/>
  <int value="7" label="ar05wlr25"/>
  <int value="8" label="ar05wlr25fs5"/>
  <int value="9" label="tbar1"/>
  <int value="10" label="ar04wr3fs4"/>
  <int value="11" label="No Server Response"/>
  <int value="12" label="fp05"/>
  <int value="13" label="fp025"/>
  <int value="14" label="fp05cc03"/>
  <int value="15" label="fp05cco03"/>
  <int value="16" label="fp05cco03cstd"/>
  <int value="17" label="fp05cc03e1"/>
</enum>

<enum name="AutofillFormEvent" type="int">
  <int value="0" label="Interacted (once)"/>
  <int value="1" label="Suggestions shown"/>
  <int value="2" label="Suggestions shown (once)"/>
  <int value="3" label="Local suggestion filled"/>
  <int value="4" label="Server suggestion filled"/>
  <int value="5" label="Masked server card suggestion filled"/>
  <int value="6" label="Local suggestion filled (once)"/>
  <int value="7" label="Server suggestion filled (once)"/>
  <int value="8" label="Masked server card suggestion filled (once)"/>
  <int value="9" label="Submitted with no suggestion filled (once)"/>
  <int value="10" label="Submitted with local suggestion filled (once)"/>
  <int value="11" label="Submitted with server suggestion filled (once)"/>
  <int value="12"
      label="Submitted with masked server card suggestion filled (once)"/>
  <int value="13" label="Masked server card suggestion selected">
    The user selected a masked server card that triggered an unmask attempt.
  </int>
  <int value="14" label="Masked server card suggestion selected (once)">
    The user selected a masked server card that triggered an unmask attempt at
    least once.
  </int>
  <int value="15"
      label="About to be submitted with no suggestion filled (once)"/>
  <int value="16"
      label="About to be submitted with local suggestion filled (once)"/>
  <int value="17"
      label="About to be submitted with server suggestion filled (once)"/>
  <int value="18"
      label="About to be submitted with masked server card suggestion filled
             (once)"/>
</enum>

<enum name="AutofillFormSubmittedState" type="int">
  <int value="0" label="Non fillable form or new data"/>
  <int value="1" label="Fillable form, autofilled all"/>
  <int value="2" label="Fillable form, autofilled some"/>
  <int value="3" label="Fillable form, autofilled none, did show suggestions"/>
  <int value="4"
      label="Fillable form, autofilled none, did not show suggestions"/>
</enum>

<enum name="AutofillGetRealPanResult" type="int">
  <int value="0" label="Success"/>
  <int value="1" label="Retriable failure"/>
  <int value="2" label="Non retriable failure"/>
  <int value="3" label="Network error"/>
</enum>

<enum name="AutofillKeyboardAccessoryButtonsIOS" type="int">
  <int value="0" label="Forms loaded"/>
  <int value="1" label="Submitted form"/>
  <int value="2" label="Close button pressed"/>
  <int value="3" label="Close button pressed (once)"/>
  <int value="4" label="Next button pressed"/>
  <int value="5" label="Next button pressed (once)"/>
  <int value="6" label="Previous button pressed"/>
  <int value="7" label="Previous button pressed (once)"/>
</enum>

<enum name="AutofillMacAddressBook" type="int">
  <int value="0" label="Showed popup entry"/>
  <int value="1" label="Selected popup entry"/>
</enum>

<enum name="AutofillProfileAction" type="int">
  <int value="0" label="Existing profile used"/>
  <int value="1" label="Existing profile updated"/>
  <int value="2" label="New profile created"/>
</enum>

<enum name="AutofillQuality" type="int">
  <int value="0" label="Submitted"/>
  <int value="1" label="Autofilled"/>
  <int value="2" label="Autofill failed"/>
  <int value="3" label="Heuristic Unknown"/>
  <int value="4" label="Heuristic Match"/>
  <int value="5" label="Heuristic Mismatch"/>
  <int value="6" label="Server Unknown"/>
  <int value="7" label="Server Match"/>
  <int value="8" label="Server Mismatch"/>
</enum>

<enum name="AutofillQueryResult" type="int">
  <int value="0" label="Sent"/>
  <int value="1" label="Received"/>
  <int value="2" label="Parsed"/>
  <int value="3" label="Response matches local"/>
  <int value="4" label="Response improves local (nonempty)"/>
  <int value="5" label="Response improves local (empty)"/>
</enum>

<enum name="AutofillSaveCreditCardPrompt" type="int">
  <int value="0" label="Show requested"/>
  <int value="1" label="Shown"/>
  <int value="2" label="Ended, invalid legal message"/>
  <int value="3" label="Ended, user explicitly accepted prompt"/>
  <int value="4" label="Ended, user explicitly denied prompt"/>
  <int value="5" label="Ended, navigated away from page while prompt showing"/>
  <int value="6" label="Ended, navigated away from page while prompt hidden"/>
  <int value="7" label="Dismissed, user clicked Learn More link"/>
  <int value="8" label="Dismissed, user clicked a legal message link"/>
</enum>

<enum name="AutofillScanCreditCardPrompt" type="int">
  <int value="0" label="Scan card shown"/>
  <int value="1" label="Scan card selected"/>
  <int value="2" label="Some other item selected"/>
</enum>

<enum name="AutofillTypeQuality" type="int">
  <int value="0" label="Unknown"/>
  <int value="1" label="Match"/>
  <int value="2" label="Mismatch"/>
</enum>

<enum name="AutofillTypeQualityByFieldType" type="int">
  <int value="0" label="Ambiguous, Unknown"/>
  <int value="1" label="Ambiguous, Match"/>
  <int value="2" label="Ambiguous, Mismatch"/>
  <int value="3" label="Name, Unknown"/>
  <int value="4" label="Name, Match"/>
  <int value="5" label="Name, Mismatch"/>
  <int value="6" label="Company, Unknown"/>
  <int value="7" label="Company, Match"/>
  <int value="8" label="Company, Mismatch"/>
  <int value="9" label="Addr. line 1, Unknown"/>
  <int value="10" label="Addr. line 1, Match"/>
  <int value="11" label="Addr. line 1, Mismatch"/>
  <int value="12" label="Addr. line 2, Unknown"/>
  <int value="13" label="Addr. line 2, Match"/>
  <int value="14" label="Addr. line 2, Mismatch"/>
  <int value="15" label="City, Unknown"/>
  <int value="16" label="City, Match"/>
  <int value="17" label="City, Mismatch"/>
  <int value="18" label="State, Unknown"/>
  <int value="19" label="State, Match"/>
  <int value="20" label="State, Mismatch"/>
  <int value="21" label="ZIP code, Unknown"/>
  <int value="22" label="ZIP code, Match"/>
  <int value="23" label="ZIP code, Mismatch"/>
  <int value="24" label="Country, Unknown"/>
  <int value="25" label="Country, Match"/>
  <int value="26" label="Country, Mismatch"/>
  <int value="27" label="Phone, Unknown"/>
  <int value="28" label="Phone, Match"/>
  <int value="29" label="Phone, Mismatch"/>
  <int value="30" label="Fax, Unknown"/>
  <int value="31" label="Fax, Match"/>
  <int value="32" label="Fax, Mismatch"/>
  <int value="33" label="Email, Unknown"/>
  <int value="34" label="Email, Match"/>
  <int value="35" label="Email, Mismatch"/>
  <int value="36" label="Credit card: name, Unknown"/>
  <int value="37" label="Credit card: name, Match"/>
  <int value="38" label="Credit card: name, Mismatch"/>
  <int value="39" label="Credit card: number, Unknown"/>
  <int value="40" label="Credit card: number, Match"/>
  <int value="41" label="Credit card: number, Mismatch"/>
  <int value="42" label="Credit card: date, Unknown"/>
  <int value="43" label="Credit card: date, Match"/>
  <int value="44" label="Credit card: date, Mismatch"/>
  <int value="45" label="Credit card: type, Unknown"/>
  <int value="46" label="Credit card: type, Match"/>
  <int value="47" label="Credit card: type, Mismatch"/>
  <int value="48" label="Password, Unknown"/>
  <int value="49" label="Password, Match"/>
  <int value="50" label="Password, Mismatch"/>
  <int value="51" label="Addr. line 3, Unknown"/>
  <int value="52" label="Addr. line 3, Match"/>
  <int value="53" label="Addr. line 3, Mismatch"/>
  <int value="54" label="Username, Unknown"/>
  <int value="55" label="Username, Match"/>
  <int value="56" label="Username, Mismatch"/>
</enum>

<enum name="AutofillUnmaskPromptEvent" type="int">
  <int value="0" label="Shown"/>
  <int value="1" label="Closed with no attempts"/>
  <int value="2" label="Closed, retriable failure"/>
  <int value="3" label="Closed, non retriable failure"/>
  <int value="4" label="Closed, success w/ 0 failures">
    Closed with successful unmask on the first attempt.
  </int>
  <int value="5" label="Closed, success w/ 1+ failures">
    Closed with successful unmask after failed attempts.
  </int>
  <int value="6" label="Card saved locally"/>
  <int value="7" label="Did opt in of local save"/>
  <int value="8" label="Local save stayed disabled"/>
  <int value="9" label="Did opt out of local save"/>
  <int value="10" label="Local save stayed enabled"/>
  <int value="11" label="Closed, abandon unmasking"/>
</enum>

<enum name="AutofillUserHappiness" type="int">
  <int value="0" label="Forms loaded"/>
  <int value="1" label="Deprecated 1"/>
  <int value="2" label="Deprecated 2"/>
  <int value="3" label="Deprecated 3"/>
  <int value="4" label="Deprecated 4"/>
  <int value="5" label="User did type"/>
  <int value="6" label="Suggestions shown"/>
  <int value="7" label="Suggestions shown (once)"/>
  <int value="8" label="User did autofill"/>
  <int value="9" label="User did autofill (once)"/>
  <int value="10" label="User edited autofilled field"/>
  <int value="11" label="User edited autofilled field (once)"/>
</enum>

<enum name="AutoLaunchState" type="int">
  <int value="0" label="AUTO_LAUNCH_NONE"/>
  <int value="1" label="AUTO_LAUNCH_BACKGROUND"/>
  <int value="2" label="[Deprecated] AUTO_LAUNCH_FOREGROUND"/>
  <int value="3" label="[Deprecated] AUTO_LAUNCH_FOREGROUND_USELESS"/>
</enum>

<enum name="AutoSigninFirstRun" type="int">
  <int value="0" label="No action"/>
  <int value="1" label="Turn off"/>
  <int value="2" label="Ok, got it"/>
</enum>

<enum name="BackgroundModeMenuItem" type="int">
  <int value="0" label="About"/>
  <int value="1" label="Task manager"/>
  <int value="2" label="Background client"/>
  <int value="3" label="Let run in background"/>
  <int value="4" label="Exit"/>
</enum>

<enum name="BackgroundSyncResultPattern" type="int">
  <int value="0" label="Success Foreground"/>
  <int value="1" label="Success Background"/>
  <int value="2" label="Failed Foreground"/>
  <int value="3" label="Failed Background"/>
</enum>

<enum name="BackgroundSyncStatus" type="int">
  <int value="0" label="Action completed successfully"/>
  <int value="1" label="Back-end error"/>
  <int value="2" label="Registration was not found"/>
  <int value="3" label="No active service worker"/>
  <int value="4" label="Action not allowed"/>
  <int value="5" label="Permission denied"/>
</enum>

<enum name="BackgroundTracingState" type="int">
  <int value="0" label="Scenario activation requested"/>
  <int value="1" label="Scenario successfully activated"/>
  <int value="2" label="Trace recording enabled"/>
  <int value="3" label="Running preemptive scenario triggered"/>
  <int value="4" label="Running reactive scenario triggered"/>
  <int value="5" label="Trace finalization allowed"/>
  <int value="6" label="Trace finalization disallowed"/>
  <int value="7" label="Trace finalization started"/>
  <int value="8" label="Trace finalization complete"/>
  <int value="9" label="Scenario activation failed due to lowres clock"/>
</enum>

<enum name="BackingStoreResults" type="int">
  <int value="0" label="Unused"/>
  <int value="1" label="Success"/>
  <int value="2" label="Failure"/>
</enum>

<enum name="BadMessageReasonChrome" type="int">
<!-- Generated from chrome/browser/bad_message.h -->

  <int value="0" label="WRLHH_LOGGING_STOPPED_BAD_STATE"/>
</enum>

<enum name="BadMessageReasonContent" type="int">
<!-- Generated from content/browser/bad_message.h -->

  <int value="0" label="NC_IN_PAGE_NAVIGATION"/>
  <int value="1" label="RFH_CAN_COMMIT_URL_BLOCKED"/>
  <int value="2" label="RFH_CAN_ACCESS_FILES_OF_PAGE_STATE"/>
  <int value="3" label="RFH_SANDBOX_FLAGS"/>
  <int value="4" label="RFH_NO_PROXY_TO_PARENT"/>
  <int value="5" label="RPH_DESERIALIZATION_FAILED"/>
  <int value="6" label="RVH_CAN_ACCESS_FILES_OF_PAGE_STATE"/>
  <int value="7" label="RVH_FILE_CHOOSER_PATH"/>
  <int value="8" label="RWH_SYNTHETIC_GESTURE"/>
  <int value="9" label="RWH_FOCUS"/>
  <int value="10" label="RWH_BLUR"/>
  <int value="11" label="RWH_SHARED_BITMAP"/>
  <int value="12" label="RWH_BAD_ACK_MESSAGE"/>
  <int value="13" label="RWHVA_SHARED_MEMORY"/>
  <int value="14" label="SERVICE_WORKER_BAD_URL"/>
  <int value="15" label="WC_INVALID_FRAME_SOURCE"/>
  <int value="16" label="RWHVM_UNEXPECTED_FRAME_TYPE"/>
  <int value="17" label="RFPH_DETACH"/>
  <int value="18" label="DFH_BAD_EMBEDDER_MESSAGE"/>
  <int value="19" label="NC_AUTO_SUBFRAME"/>
  <int value="20" label="CSDH_NOT_RECOGNIZED"/>
  <int value="21" label="DSMF_OPEN_STORAGE"/>
  <int value="22" label="DSMF_LOAD_STORAGE"/>
  <int value="23" label="DBMF_INVALID_ORIGIN_ON_OPEN"/>
  <int value="24" label="DBMF_DB_NOT_OPEN_ON_MODIFY"/>
  <int value="25" label="DBMF_DB_NOT_OPEN_ON_CLOSE"/>
  <int value="26" label="DBMF_INVALID_ORIGIN_ON_SQLITE_ERROR"/>
  <int value="27" label="RDH_INVALID_PRIORITY"/>
  <int value="28" label="RDH_REQUEST_NOT_TRANSFERRING"/>
  <int value="29" label="RDH_BAD_DOWNLOAD"/>
  <int value="30" label="NMF_NO_PERMISSION_SHOW"/>
  <int value="31" label="NMF_NO_PERMISSION_CLOSE"/>
  <int value="32" label="NMF_NO_PERMISSION_VERIFY"/>
  <int value="33" label="MH_INVALID_MIDI_PORT"/>
  <int value="34" label="MH_SYS_EX_PERMISSION"/>
  <int value="35" label="ACDH_REGISTER"/>
  <int value="36" label="ACDH_UNREGISTER"/>
  <int value="37" label="ACDH_SET_SPAWNING"/>
  <int value="38" label="ACDH_SELECT_CACHE"/>
  <int value="39" label="ACDH_SELECT_CACHE_FOR_WORKER"/>
  <int value="40" label="ACDH_SELECT_CACHE_FOR_SHARED_WORKER"/>
  <int value="41" label="ACDH_MARK_AS_FOREIGN_ENTRY"/>
  <int value="42" label="ACDH_PENDING_REPLY_IN_GET_STATUS"/>
  <int value="43" label="ACDH_GET_STATUS"/>
  <int value="44" label="ACDH_PENDING_REPLY_IN_START_UPDATE"/>
  <int value="45" label="ACDH_START_UPDATE"/>
  <int value="46" label="ACDH_PENDING_REPLY_IN_SWAP_CACHE"/>
  <int value="47" label="ACDH_SWAP_CACHE"/>
  <int value="48" label="SWDH_NOT_HANDLED"/>
  <int value="49" label="SWDH_REGISTER_BAD_URL"/>
  <int value="50" label="SWDH_REGISTER_NO_HOST"/>
  <int value="51" label="SWDH_REGISTER_CANNOT"/>
  <int value="52" label="SWDH_UNREGISTER_BAD_URL"/>
  <int value="53" label="SWDH_UNREGISTER_NO_HOST"/>
  <int value="54" label="SWDH_UNREGISTER_CANNOT"/>
  <int value="55" label="SWDH_GET_REGISTRATION_BAD_URL"/>
  <int value="56" label="SWDH_GET_REGISTRATION_NO_HOST"/>
  <int value="57" label="SWDH_GET_REGISTRATION_CANNOT"/>
  <int value="58" label="SWDH_GET_REGISTRATION_FOR_READY_NO_HOST"/>
  <int value="59" label="SWDH_GET_REGISTRATION_FOR_READY_ALREADY_IN_PROGRESS"/>
  <int value="60" label="SWDH_POST_MESSAGE"/>
  <int value="61" label="SWDH_PROVIDER_CREATED_NO_HOST"/>
  <int value="62" label="SWDH_PROVIDER_DESTROYED_NO_HOST"/>
  <int value="63" label="SWDH_SET_HOSTED_VERSION_NO_HOST"/>
  <int value="64" label="SWDH_SET_HOSTED_VERSION"/>
  <int value="65" label="SWDH_WORKER_SCRIPT_LOAD_NO_HOST"/>
  <int value="66" label="SWDH_INCREMENT_WORKER_BAD_HANDLE"/>
  <int value="67" label="SWDH_DECREMENT_WORKER_BAD_HANDLE"/>
  <int value="68" label="SWDH_INCREMENT_REGISTRATION_BAD_HANDLE"/>
  <int value="69" label="SWDH_DECREMENT_REGISTRATION_BAD_HANDLE"/>
  <int value="70" label="SWDH_TERMINATE_BAD_HANDLE"/>
  <int value="71" label="FAMF_APPEND_ITEM_TO_BLOB"/>
  <int value="72" label="FAMF_APPEND_SHARED_MEMORY_TO_BLOB"/>
  <int value="73" label="FAMF_MALFORMED_STREAM_URL"/>
  <int value="74" label="FAMF_APPEND_ITEM_TO_STREAM"/>
  <int value="75" label="FAMF_APPEND_SHARED_MEMORY_TO_STREAM"/>
  <int value="76" label="IDBDH_CAN_READ_FILE"/>
  <int value="77" label="IDBDH_GET_OR_TERMINATE"/>
  <int value="78" label="RFMF_SET_COOKIE_BAD_ORIGIN"/>
  <int value="79" label="RFMF_GET_COOKIES_BAD_ORIGIN"/>
  <int value="80" label="SWDH_GET_REGISTRATIONS_NO_HOST"/>
  <int value="81" label="SWDH_GET_REGISTRATIONS_INVALID_ORIGIN"/>
  <int value="82" label="ARH_UNAUTHORIZED_URL"/>
  <int value="83" label="BDH_INVALID_SERVICE_ID"/>
  <int value="84" label="RFH_COMMIT_DESERIALIZATION_FAILED"/>
  <int value="85" label="BDH_INVALID_CHARACTERISTIC_ID"/>
  <int value="86" label="SWDH_UPDATE_NO_HOST"/>
  <int value="87" label="SWDH_UPDATE_BAD_REGISTRATION_ID"/>
  <int value="88" label="SWDH_UPDATE_CANNOT"/>
  <int value="89" label="SWDH_UNREGISTER_BAD_REGISTRATION_ID"/>
  <int value="90" label="BDH_INVALID_WRITE_VALUE_LENGTH"/>
  <int value="91" label="WC_MEMORY_CACHE_RESOURCE_BAD_SECURITY_INFO"/>
  <int value="92" label="WC_RENDERER_DID_NAVIGATE_BAD_SECURITY_INFO"/>
  <int value="93" label="OBSOLETE_BDH_DUPLICATE_REQUEST_DEVICE_ID"/>
  <int value="94" label="CSDH_INVALID_ORIGIN"/>
  <int value="95" label="RDH_ILLEGAL_ORIGIN"/>
  <int value="96" label="RDH_UNAUTHORIZED_HEADER_REQUEST"/>
  <int value="97" label="RDH_INVALID_URL"/>
  <int value="98" label="BDH_CHARACTERISTIC_ALREADY_SUBSCRIBED"/>
  <int value="99" label="RFH_OWNER_PROPERTY"/>
  <int value="100" label="BDH_EMPTY_OR_INVALID_FILTERS"/>
  <int value="101" label="WC_CONTENT_WITH_CERT_ERRORS_BAD_SECURITY_INFO"/>
  <int value="102" label="RFMF_RENDERER_FAKED_ITS_OWN_DEATH"/>
  <int value="103" label="DWNLD_INVALID_SAVABLE_RESOURCE_LINKS_RESPONSE"/>
  <int value="104" label="DWNLD_INVALID_SERIALIZE_AS_MHTML_RESPONSE"/>
  <int value="105" label="BDH_DEVICE_NOT_ALLOWED_FOR_ORIGIN"/>
  <int value="106" label="ACI_WRONG_STORAGE_PARTITION"/>
  <int value="107" label="RDHI_WRONG_STORAGE_PARTITION"/>
  <int value="108" label="RDH_INVALID_REQUEST_ID"/>
  <int value="109" label="BDH_SERVICE_NOT_ALLOWED_FOR_ORIGIN"/>
  <int value="110" label="WSH_SEND_BLOB_DURING_BLOB_SEND"/>
  <int value="111" label="WSH_SEND_FRAME_DURING_BLOB_SEND"/>
  <int value="112" label="RFH_UNEXPECTED_LOAD_START"/>
  <int value="113" label="NMF_INVALID_ARGUMENT"/>
  <int value="114" label="RFH_INVALID_ORIGIN_ON_COMMIT"/>
  <int value="115" label="BDH_UUID_REGISTERED"/>
  <int value="116" label="BDH_CONSTRUCTION_FAILED"/>
  <int value="117" label="BDH_INVALID_REFCOUNT_OPERATION"/>
  <int value="118" label="BDH_INVALID_URL_OPERATION"/>
  <int value="119" label="IDBDH_INVALID_ORIGIN"/>
  <int value="120" label="RFH_FAIL_PROVISIONAL_LOAD_NO_HANDLE"/>
  <int value="121" label="RFH_FAIL_PROVISIONAL_LOAD_NO_ERROR"/>
  <int value="122" label="NI_IN_PAGE_NAVIGATION"/>
</enum>

<enum name="BadMessageReasonExtensions" type="int">
<!-- Generated from extensions/browser/bad_message.h -->

  <int value="0" label="EOG_BAD_ORIGIN"/>
  <int value="1" label="EVG_BAD_ORIGIN"/>
  <int value="2" label="BH_BLOB_NOT_OWNED"/>
  <int value="3" label="EH_BAD_EVENT_ID"/>
  <int value="4" label="AVG_BAD_INST_ID"/>
  <int value="5" label="AVG_BAD_EXT_ID"/>
  <int value="6" label="AVG_NULL_AVG"/>
</enum>

<enum name="BadMessageReasonNaCl" type="int">
<!-- Generated from components/nacl/browser/bad_message.h -->

  <int value="0" label="NFH_OPEN_EXECUTABLE_BAD_ROUTING_ID"/>
  <int value="1" label="NHMF_LAUNCH_CONTINUATION_BAD_ROUTING_ID"/>
  <int value="2" label="NHMF_GET_NEXE_FD_BAD_URL"/>
</enum>

<enum name="BadMessageReasonPasswordManager" type="int">
<!-- Generated from components/password_manager/content/browser/bad_message.h -->

  <int value="1" label="CPMD_BAD_ORIGIN_FORMS_PARSED"/>
  <int value="2" label="CPMD_BAD_ORIGIN_FORMS_RENDERED"/>
  <int value="3" label="CPMD_BAD_ORIGIN_FORM_SUBMITTED"/>
  <int value="4" label="CPMD_BAD_ORIGIN_FOCUSED_PASSWORD_FORM_FOUND"/>
  <int value="5" label="CPMD_BAD_ORIGIN_IN_PAGE_NAVIGATION"/>
  <int value="6" label="CPMD_BAD_ORIGIN_PASSWORD_NO_LONGER_GENERATED"/>
  <int value="7" label="CPMD_BAD_ORIGIN_PRESAVE_GENERATED_PASSWORD"/>
</enum>

<enum name="BadSyncDataReason" type="int">
  <int value="0" label="Bad extension ID"/>
  <int value="1" label="Bad version"/>
  <int value="2" label="Bad update URL"/>
  <int value="3" label="No ExtensionSpecifics"/>
  <int value="4" label="Bad disable reasons"/>
</enum>

<enum name="BaseRelocationType" type="int">
  <int value="0" label="IMAGE_REL_BASED_ABSOLUTE"/>
  <int value="1" label="IMAGE_REL_BASED_HIGH"/>
  <int value="2" label="IMAGE_REL_BASED_LOW"/>
  <int value="3" label="IMAGE_REL_BASED_HIGHLOW"/>
  <int value="4" label="IMAGE_REL_BASED_HIGHADJ"/>
  <int value="5" label="IMAGE_REL_BASED_MACHINE_SPECIFIC_5"/>
  <int value="6" label="IMAGE_REL_BASED_RESERVED"/>
  <int value="7" label="IMAGE_REL_BASED_MACHINE_SPECIFIC_7"/>
  <int value="8" label="IMAGE_REL_BASED_MACHINE_SPECIFIC_8"/>
  <int value="9" label="IMAGE_REL_BASED_MACHINE_SPECIFIC_9"/>
  <int value="10" label="IMAGE_REL_BASED_DIR64"/>
</enum>

<enum name="BatteryInfoSampleResult" type="int">
  <int value="0" label="Read"/>
  <int value="1" label="Good"/>
  <int value="2" label="Bad"/>
</enum>

<enum name="BatteryStatusNumberBatteries" type="int">
  <int value="5" label="5+"/>
</enum>

<enum name="BatteryStatusNumberBatteriesWin" type="int">
  <int value="0" label="Unknown"/>
  <int value="1" label="0"/>
  <int value="2" label="1+"/>
</enum>

<enum name="BlacklistedVideoCaptureDeviceNames" type="int">
  <int value="0" label="Google GTalk Camera Adapter"/>
  <int value="1" label="IP Camera"/>
  <int value="2" label="Cyberlink YouCam Webcam Splitter"/>
  <int value="3" label="EpocCam Smartphone Wireless Camera"/>
</enum>

<enum name="BlacklistSetup" type="int">
  <int value="0" label="Blacklist enabled"/>
  <int value="1" label="Blacklist ran successfully."/>
  <int value="2" label="Blacklist failed."/>
  <int value="3" label="Blacklist thunk setup failed."/>
  <int value="4" label="Blacklist interception failed."/>
  <int value="5" label="Blacklist disabled."/>
</enum>

<enum name="BlobBrokenReason" type="int">
  <int value="0" label="Unknown"/>
  <int value="1" label="There is not enough memory to store this blob"/>
  <int value="2" label="File write failed"/>
  <int value="3" label="Source died in transit"/>
  <int value="4" label="Blob dereferenced while building"/>
  <int value="5" label="Referenced blob broken"/>
</enum>

<enum name="BluetoothAvailability" type="int">
  <int value="0" label="Unexpected error"/>
  <int value="1" label="Not available"/>
  <int value="2" label="Available without LE"/>
  <int value="3" label="Available with LE"/>
  <int value="4" label="Available unknown LE"/>
</enum>

<enum name="BluetoothDiscoveryOutcomes" type="int">
  <int value="0" label="Success"/>
  <int value="1"
      label="Unknown error; used when we could add code to get more detail"/>
  <int value="2" label="Function not implemented on this platform"/>
  <int value="3" label="Adapter not present"/>
  <int value="4" label="Adapter removed since call chain started"/>
  <int value="5" label="Discovery session not active"/>
  <int value="6"
      label="Attempted to remove a discovery session with another pending
             request"/>
  <int value="7"
      label="Active BluetoothDiscoverySession wasn't found in
             BluetoothAdapter"/>
  <int value="8" label="Failed without a more specific reason"/>
  <int value="9" label="(BlueZ) DBus failed to find the adapter"/>
  <int value="10" label="(BlueZ) DBus didn't return an error code"/>
  <int value="11" label="(BlueZ) org.bluez.Error.InProgress"/>
  <int value="12" label="(BlueZ) org.bluez.Error.NotReady"/>
  <int value="13"
      label="(BlueZ) org.bluez.Error.Failed inside SetDiscoveryFilter, maybe
             indicating an unsupported transport"/>
  <int value="14"
      label="(BlueZ) org.bluez.Error.NotSupported inside SetDiscoverFilter,
             indicating a kernel that does not support Start Service
             Discovery."/>
</enum>

<enum name="BluetoothGATTErrors" type="int">
  <obsolete>
    As of 08/2015 this has been replaced with WebBluetoothGATTOperationOutcome.
  </obsolete>
  <int value="0" label="Unknown"/>
  <int value="1" label="Failed"/>
  <int value="2" label="In Progress"/>
  <int value="3" label="Not Paired"/>
</enum>

<enum name="BluetoothPairingMethod" type="int">
  <int value="0" label="No user interaction required"/>
  <int value="1" label="PIN Code requested from user"/>
  <int value="2" label="Passkey requested from user"/>
  <int value="3" label="PIN Code entered into device"/>
  <int value="4" label="Passkey entered into device"/>
  <int value="5" label="Passkey confirmed on both devices"/>
</enum>

<enum name="BluetoothPairingResult" type="int">
  <int value="0" label="Success"/>
  <int value="1" label="Connection already in-progress"/>
  <int value="2" label="Failed for non-specific reason"/>
  <int value="3" label="Authentication failed"/>
  <int value="4" label="Authentication canceled"/>
  <int value="5" label="Authentication rejected"/>
  <int value="6" label="Authentication timed out"/>
  <int value="7" label="Unsupported device"/>
  <int value="8" label="Unknown or unhandler error"/>
</enum>

<enum name="BluetoothStatus" type="int">
  <int value="0" label="Disabled"/>
  <int value="1" label="Enabled"/>
  <int value="2" label="Unknown"/>
</enum>

<enum name="BookmarkLaunchLocation" type="int">
  <int value="0" label="Attached bookmark bar"/>
  <int value="1" label="Detached (floating) bookmark bar"/>
  <int value="2" label="Bookmark bar subfolder"/>
  <int value="3" label="Context menu"/>
  <int value="4" label="Wrench menu"/>
  <int value="5" label="Bookmark manager"/>
  <int value="6" label="Omnibox suggestion"/>
</enum>

<enum name="BookmarksEntryPoint" type="int">
  <int value="0" label="Accelerator(Ctrl+D)"/>
  <int value="1" label="Gesture"/>
  <int value="2" label="Space or Enter"/>
  <int value="3" label="Mouse click"/>
</enum>

<enum name="BookmarksExperimentState" type="int">
  <int value="0" label="No experiment"/>
  <int value="1" label="Experiment enabled (sync)"/>
  <int value="2" label="Experiment disabled (sync opt out)"/>
  <int value="3" label="Experiment enabled (finch)"/>
  <int value="4" label="Experiment disabled (finch opt out)"/>
  <int value="5" label="Experiment disabled (finch but signed in)"/>
  <int value="6" label="Experiment enabled (sync unknown)"/>
</enum>

<enum name="BookmarksOpenAction" type="int">
  <int value="0" label="Open in current tab"/>
  <int value="1" label="Open in new tab"/>
  <int value="2" label="Open in incognito tab"/>
</enum>

<enum name="Boolean" type="int">
  <int value="0" label="False"/>
  <int value="1" label="True"/>
</enum>

<enum name="BooleanAbsent" type="int">
  <int value="0" label="Not Absent"/>
  <int value="1" label="Absent"/>
</enum>

<enum name="BooleanAccepted" type="int">
  <int value="0" label="Not Accepted"/>
  <int value="1" label="Accepted"/>
</enum>

<enum name="BooleanActive" type="int">
  <int value="0" label="Inactive"/>
  <int value="1" label="Active"/>
</enum>

<enum name="BooleanAttempted" type="int">
  <int value="0" label="Not Attempted"/>
  <int value="1" label="Attempted"/>
</enum>

<enum name="BooleanAvailable" type="int">
  <int value="0" label="Not Available"/>
  <int value="1" label="Available"/>
</enum>

<enum name="BooleanBlocked" type="int">
  <int value="0" label="Not Blocked"/>
  <int value="1" label="Blocked"/>
</enum>

<enum name="BooleanBringToForegroundReason" type="int">
  <int value="0" label="Other"/>
  <int value="1" label="Notification click (within last 5 seconds)"/>
</enum>

<enum name="BooleanBroken" type="int">
  <int value="0" label="Not Broken"/>
  <int value="1" label="Broken"/>
</enum>

<enum name="BooleanCacheHit" type="int">
  <int value="0" label="Miss"/>
  <int value="1" label="Hit"/>
</enum>

<enum name="BooleanCanceled" type="int">
  <int value="0" label="Not Canceled"/>
  <int value="1" label="Canceled"/>
</enum>

<enum name="BooleanCanCheckUrl" type="int">
  <int value="0" label="Skipped"/>
  <int value="1" label="Can check"/>
</enum>

<enum name="BooleanChanged" type="int">
  <int value="0" label="Not changed"/>
  <int value="1" label="Changed"/>
</enum>

<enum name="BooleanCloseTimeout" type="int">
  <int value="0" label="Closed normally"/>
  <int value="1" label="Timed out"/>
</enum>

<enum name="BooleanCommonNameMatch" type="int">
  <int value="0" label="subjectAltName used"/>
  <int value="1" label="Common Name used"/>
</enum>

<enum name="BooleanCompatibilityMode" type="int">
  <int value="0" label="Not in compatibility mode"/>
  <int value="1" label="In compatibility mode"/>
</enum>

<enum name="BooleanCompleted" type="int">
  <int value="0" label="Not Completed"/>
  <int value="1" label="Completed"/>
</enum>

<enum name="BooleanConnected" type="int">
  <int value="0" label="Not Connected"/>
  <int value="1" label="Connected"/>
</enum>

<enum name="BooleanContainedMeCard" type="int">
  <int value="0" label="Did not contain me card."/>
  <int value="1" label="Contained me card."/>
</enum>

<enum name="BooleanCorrupt" type="int">
  <int value="0" label="Not Corrupt"/>
  <int value="1" label="Corrupt"/>
</enum>

<enum name="BooleanCouldFireImmediately" type="int">
  <int value="0" label="Could not fire immediately"/>
  <int value="1" label="Could fire immediately"/>
</enum>

<enum name="BooleanCovered" type="int">
  <int value="0" label="Not Covered"/>
  <int value="1" label="Covered"/>
</enum>

<enum name="BooleanCreated" type="int">
  <int value="0" label="Not created"/>
  <int value="1" label="Created"/>
</enum>

<enum name="BooleanCredentialsLost" type="int">
  <int value="0" label="Found Credentials"/>
  <int value="1" label="Missing Credentials"/>
</enum>

<enum name="BooleanDataReductionProxy" type="int">
  <int value="0" label="Not Data Reduction Proxy"/>
  <int value="1" label="Data Reduction Proxy"/>
</enum>

<enum name="BooleanDeferred" type="int">
  <int value="0" label="Not deferred"/>
  <int value="1" label="Deferred"/>
</enum>

<enum name="BooleanDelete" type="int">
  <int value="0" label="Ignored"/>
  <int value="1" label="Deleted"/>
</enum>

<enum name="BooleanDeletedOrNot" type="int">
  <int value="0" label="Not deleted"/>
  <int value="1" label="Deleted"/>
</enum>

<enum name="BooleanDeprecatedCiphers" type="int">
  <int value="0" label="Deprecated ciphers disabled"/>
  <int value="1" label="Deprecated ciphers enabled"/>
</enum>

<enum name="BooleanDidEvict" type="int">
  <int value="0" label="Did not evict"/>
  <int value="1" label="Did evict"/>
</enum>

<enum name="BooleanDidFallBack" type="int">
  <int value="0" label="Did not fall back"/>
  <int value="1" label="Did fall back"/>
</enum>

<enum name="BooleanDidScalePage" type="int">
  <int value="0" label="User did not change scale"/>
  <int value="1" label="User did change scale"/>
</enum>

<enum name="BooleanDuplicate" type="int">
  <int value="0" label="Not Duplicate"/>
  <int value="1" label="Duplicate"/>
</enum>

<enum name="BooleanEmpty" type="int">
  <int value="0" label="Not Empty"/>
  <int value="1" label="Empty"/>
</enum>

<enum name="BooleanEnabled" type="int">
  <int value="0" label="Disabled"/>
  <int value="1" label="Enabled"/>
</enum>

<enum name="BooleanError" type="int">
  <int value="0" label="No Error"/>
  <int value="1" label="Error"/>
</enum>

<enum name="BooleanEverWorked" type="int">
  <int value="0" label="Has never worked"/>
  <int value="1" label="Has worked at least once"/>
</enum>

<enum name="BooleanExpired" type="int">
  <int value="0" label="Unexpired"/>
  <int value="1" label="Expired"/>
</enum>

<enum name="BooleanForced" type="int">
  <int value="0" label="Not forced"/>
  <int value="1" label="Forced"/>
</enum>

<enum name="BooleanForceDisabled" type="int">
  <int value="0" label="Not Force Disabled"/>
  <int value="1" label="Force Disabled"/>
</enum>

<enum name="BooleanFormatChanged" type="int">
  <int value="0" label="Any Codec Initialized"/>
  <int value="1" label="Missing FORMAT_CHANGED message"/>
</enum>

<enum name="BooleanFormManager" type="int">
  <int value="0" label="Has Form Manager"/>
  <int value="1" label="Lacks Form Manager"/>
</enum>

<enum name="BooleanFromAddressBook" type="int">
  <int value="0" label="Not From Address Book"/>
  <int value="1" label="From Address Book"/>
</enum>

<enum name="BooleanGAIAWebViewFlow" type="int">
  <int value="0" label="iframe-based flow"/>
  <int value="1" label="WebView-based flow"/>
</enum>

<enum name="BooleanHadAddress" type="int">
  <int value="0" label="Did not have address."/>
  <int value="1" label="Had address."/>
</enum>

<enum name="BooleanHadBlankText" type="int">
  <int value="0" label="Did not have blank text"/>
  <int value="1" label="Had blank text"/>
</enum>

<enum name="BooleanHadEmail" type="int">
  <int value="0" label="Did not have email."/>
  <int value="1" label="Had email."/>
</enum>

<enum name="BooleanHadName" type="int">
  <int value="0" label="Did not have name."/>
  <int value="1" label="Had name."/>
</enum>

<enum name="BooleanHadPhoneNumber" type="int">
  <int value="0" label="Did not have phone number."/>
  <int value="1" label="Had phone number."/>
</enum>

<enum name="BooleanHadPredictions" type="int">
  <int value="0" label="No predictions"/>
  <int value="1" label="Has predictions"/>
</enum>

<enum name="BooleanHandshakeConfirmed" type="int">
  <int value="0" label="Handshake not confirmed"/>
  <int value="1" label="Handshake confirmed"/>
</enum>

<enum name="BooleanHardwareAccelerated" type="int">
  <int value="0" label="Not hardware accelerated"/>
  <int value="1" label="Hardware accelerated"/>
</enum>

<enum name="BooleanHasCrc" type="int">
  <int value="0" label="No CRC"/>
  <int value="1" label="Has CRC"/>
</enum>

<enum name="BooleanHasDistilledData" type="int">
  <int value="0" label="No distilled data"/>
  <int value="1" label="Has distilled data"/>
</enum>

<enum name="BooleanHasSeekPenalty" type="int">
  <int value="0" label="Has no seek penalty (e.g. is flash memory)"/>
  <int value="1" label="Has seek penalty (e.g. spinning disk)"/>
</enum>

<enum name="BooleanHit" type="int">
  <int value="0" label="Not_reached"/>
  <int value="1" label="Hit"/>
</enum>

<enum name="BooleanHttps" type="int">
  <int value="0" label="HTTP"/>
  <int value="1" label="HTTPS"/>
</enum>

<enum name="BooleanIgnored" type="int">
  <int value="0" label="Not ignored"/>
  <int value="1" label="Ignored"/>
</enum>

<enum name="BooleanInappropriateFallback" type="int">
  <int value="0" label="Handshake successful"/>
  <int value="1" label="inappropriate_fallback alert"/>
</enum>

<enum name="BooleanInForeground" type="int">
  <int value="0" label="Background"/>
  <int value="1" label="Foreground"/>
</enum>

<enum name="BooleanIsLastSharedAppInfoRetrieved" type="int">
  <int value="0" label="Not retrieved"/>
  <int value="1" label="Retrieved"/>
</enum>

<enum name="BooleanIsMalware" type="int">
  <int value="0" label="Not malware"/>
  <int value="1" label="Is malware"/>
</enum>

<enum name="BooleanIsMobileOptimized" type="int">
  <int value="0" label="Not mobile optimized web page"/>
  <int value="1" label="Mobile optimized web page"/>
</enum>

<enum name="BooleanIsPhishing" type="int">
  <int value="0" label="Not phishing"/>
  <int value="1" label="Is phishing"/>
</enum>

<enum name="BooleanLoaded" type="int">
  <int value="0" label="Not loaded"/>
  <int value="1" label="Loaded"/>
</enum>

<enum name="BooleanMatched" type="int">
  <int value="0" label="Not matched"/>
  <int value="1" label="Matched"/>
</enum>

<enum name="BooleanMatchedBadIp" type="int">
  <int value="0" label="Not matched"/>
  <int value="1" label="Matched"/>
</enum>

<enum name="BooleanMigrated" type="int">
  <int value="0" label="Not migrated"/>
  <int value="1" label="Migrated"/>
</enum>

<enum name="BooleanMissingFromDiskCache" type="int">
  <int value="0" label="Has data in disk cache"/>
  <int value="1" label="Missing data in disk cache"/>
</enum>

<enum name="BooleanNullStream" type="int">
  <int value="0" label="Stream is not a nullptr"/>
  <int value="1" label="Stream is a nullptr"/>
</enum>

<enum name="BooleanNullVisitor" type="int">
  <int value="0" label="Connection's visitor is not a nullptr"/>
  <int value="1" label="Connection's visitor is a nullptr"/>
</enum>

<enum name="BooleanOnBattery" type="int">
  <int value="0" label="Not on battery"/>
  <int value="1" label="On Battery"/>
</enum>

<enum name="BooleanOrphan" type="int">
  <int value="0" label="Non-orphan"/>
  <int value="1" label="Orphan"/>
</enum>

<enum name="BooleanPanelWasOpen" type="int">
  <int value="0" label="Panel was closed"/>
  <int value="1" label="Panel was open"/>
</enum>

<enum name="BooleanPopulated" type="int">
  <int value="0" label="Not populated"/>
  <int value="1" label="Populated"/>
</enum>

<enum name="BooleanPreferred" type="int">
  <int value="0" label="Not Preferred"/>
  <int value="1" label="Preferred"/>
</enum>

<enum name="BooleanPresent" type="int">
  <int value="0" label="Not Present"/>
  <int value="1" label="Present"/>
</enum>

<enum name="BooleanProfileSignedIn" type="int">
  <int value="0" label="Profile was not Signed In"/>
  <int value="1" label="Profile was Signed In"/>
</enum>

<enum name="BooleanRaced" type="int">
  <int value="0" label="Did Not Race"/>
  <int value="1" label="Raced"/>
</enum>

<enum name="BooleanRebooted" type="int">
  <int value="0" label="Has not rebooted"/>
  <int value="1" label="Rebooted"/>
</enum>

<enum name="BooleanReceived" type="int">
  <int value="0" label="Not Received"/>
  <int value="1" label="Received"/>
</enum>

<enum name="BooleanRegistered" type="int">
  <int value="0" label="Not Registered"/>
  <int value="1" label="Registered"/>
</enum>

<enum name="BooleanRegistrationIsDuplicate" type="int">
  <int value="0" label="Registration is not a duplicate"/>
  <int value="1" label="Registration is a duplicate"/>
</enum>

<enum name="BooleanReported" type="int">
  <int value="0" label="Not reported"/>
  <int value="1" label="Reported"/>
</enum>

<enum name="BooleanReset" type="int">
  <int value="0" label="Not reset"/>
  <int value="1" label="Reset"/>
</enum>

<enum name="BooleanReused" type="int">
  <int value="0" label="Not Reused"/>
  <int value="1" label="Reused"/>
</enum>

<enum name="BooleanRevoked" type="int">
  <int value="0" label="Not revoked"/>
  <int value="1" label="Revoked"/>
</enum>

<enum name="BooleanSecure" type="int">
  <int value="0" label="Insecure"/>
  <int value="1" label="Secure"/>
</enum>

<enum name="BooleanSelected" type="int">
  <int value="0" label="No selection"/>
  <int value="1" label="Selected"/>
</enum>

<enum name="BooleanShown" type="int">
  <int value="0" label="Not Shown"/>
  <int value="1" label="Shown"/>
</enum>

<enum name="BooleanSkipped" type="int">
  <int value="0" label="Not skipped"/>
  <int value="1" label="Skipped"/>
</enum>

<enum name="BooleanStale" type="int">
  <int value="0" label="Fresh"/>
  <int value="1" label="Stale"/>
</enum>

<enum name="BooleanStreamed" type="int">
  <int value="0" label="Not streamed"/>
  <int value="1" label="Streamed"/>
</enum>

<enum name="BooleanSuccess" type="int">
  <int value="0" label="Failure"/>
  <int value="1" label="Success"/>
</enum>

<enum name="BooleanSupported" type="int">
  <int value="0" label="Not Supported"/>
  <int value="1" label="Supported"/>
</enum>

<enum name="BooleanSuppressed" type="int">
  <int value="0" label="No suppressions"/>
  <int value="1" label="Suppressed"/>
</enum>

<enum name="BooleanTabDiscard" type="int">
  <int value="0" label="Memory OK, no discards"/>
  <int value="1" label="Memory low, tabs discarded"/>
</enum>

<enum name="BooleanTablet" type="int">
  <int value="0" label="Non tablet"/>
  <int value="1" label="Tablet"/>
</enum>

<enum name="BooleanTerminated" type="int">
  <int value="0" label="Not terminated"/>
  <int value="1" label="Terminated"/>
</enum>

<enum name="BooleanTiled" type="int">
  <int value="0" label="Not tiled"/>
  <int value="1" label="Tiled"/>
</enum>

<enum name="BooleanTimedOut" type="int">
  <int value="0" label="Did not time out"/>
  <int value="1" label="Timed out"/>
</enum>

<enum name="BooleanTooMany" type="int">
  <int value="0" label="Correct"/>
  <int value="1" label="Too many"/>
</enum>

<enum name="BooleanUnknown" type="int">
  <int value="0" label="Known"/>
  <int value="1" label="Unknown"/>
</enum>

<enum name="BooleanUsage" type="int">
  <int value="0" label="Not Used"/>
  <int value="1" label="Used"/>
</enum>

<enum name="BooleanValid" type="int">
  <int value="0" label="Invalid"/>
  <int value="1" label="Valid"/>
</enum>

<enum name="BooleanValidHashSum" type="int">
  <int value="0" label="Invalid hash sum"/>
  <int value="1" label="Valid hash sum"/>
</enum>

<enum name="BooleanValidKeyExists" type="int">
  <int value="0" label="No Valid Cached Key Found"/>
  <int value="1" label="Valid Cached Key Found"/>
</enum>

<enum name="BooleanWiped" type="int">
  <int value="0" label="Re-enabled"/>
  <int value="1" label="Wiped out"/>
</enum>

<enum name="BoringSSLReasonCode" type="int">
  <obsolete>
    Removed in March 2016.
  </obsolete>
  <details>
    See include/openssl/ssl.h at the corresponding BoringSSL revision for the
    corresponding values.
  </details>
</enum>

<enum name="BrokenAlternateProtocolLocation" type="int">
  <int value="0" label="HTTP_STREAM_FACTORY_IMPL_JOB"/>
  <int value="1" label="QUIC_STREAM_FACTORY"/>
  <int value="2" label="HTTP_STREAM_FACTORY_IMPL_JOB_ALT"/>
  <int value="3" label="HTTP_STREAM_FACTORY_IMPL_JOB_MAIN"/>
</enum>

<enum name="BrotliFilterDecodingStatus" type="int">
  <int value="0" label="In progress"/>
  <int value="1" label="Done"/>
  <int value="2" label="Error"/>
</enum>

<enum name="BubbleType" type="int">
  <int value="0" label="Unknown Bubble"/>
  <int value="1" label="Mock Bubble"/>
  <int value="10" label="Extension Installed Bubble"/>
  <int value="20" label="Translate Bubble"/>
  <int value="30" label="Permissions Bubble"/>
  <int value="31" label="Chooser Permissions Bubble"/>
</enum>

<enum name="CacheResult" type="int">
  <int value="0" label="MEMORY_CACHE_HIT"/>
  <int value="1" label="DISK_CACHE_HIT"/>
  <int value="2" label="DISK_CACHE_ENTRY_CORRUPT"/>
  <int value="3" label="DISK_CACHE_ERROR"/>
  <int value="4" label="CACHE_MISS"/>
</enum>

<enum name="CALayerResult" type="int">
  <int value="0" label="Success"/>
  <int value="1" label="Unknown failure"/>
  <int value="2" label="IOSurface resource not overlay candidate"/>
  <int value="3" label="StreamVideo resource not overlay candidate"/>
  <int value="4" label="StreamVideo texture not identity"/>
  <int value="5" label="Texture resource not overlay candidate"/>
  <int value="6" label="Texture resource Y flipping not supported"/>
  <int value="7" label="Tile resource not overlay candidate"/>
  <int value="8" label="Unsupported quad blend mode"/>
  <int value="9" label="Unsupported quad transform"/>
  <int value="10" label="Unsupported quad clipping"/>
  <int value="11" label="DebugBorder quads not supported"/>
  <int value="12" label="PictureContent quads not supported"/>
  <int value="13" label="RenderPass quads not supported"/>
  <int value="14" label="SurfaceContent quads not supported"/>
  <int value="15" label="YUVVideo quads not supported"/>
</enum>

<enum name="CanvasContextType" type="int">
  <int value="0" label="2d"/>
  <int value="1" label="(obsolete) webkit-3d"/>
  <int value="2" label="experimental-webgl"/>
  <int value="3" label="webgl"/>
  <int value="4" label="webgl2"/>
</enum>

<enum name="CanvasContextUsage" type="int">
  <int value="0" label="CanvasCreated"/>
  <int value="1" label="GPUAccelerated2DCanvasImageBufferCreated"/>
  <int value="2" label="DisplayList2DCanvasImageBufferCreated"/>
  <int value="3" label="Unaccelerated2DCanvasImageBufferCreated"/>
  <int value="4" label="Accelerated2DCanvasGPUContextLost"/>
  <int value="5" label="Unaccelerated2DCanvasImageBufferCreationFailed"/>
  <int value="6" label="GPUAccelerated2DCanvasImageBufferCreationFailed"/>
  <int value="7" label="DisplayList2DCanvasFallbackToRaster"/>
  <int value="8" label="GPUAccelerated2DCanvasDeferralDisabled"/>
  <int value="10" label="GPUAccelerated2DCanvasSurfaceCreationFailed"/>
</enum>

<enum name="CanvasDisplayListFallbackReason" type="int">
  <int value="0" label="Unknown (Should not be seen in production)."/>
  <int value="1" label="Canvas not cleared between consecutive frames."/>
  <int value="2"
      label="Canvas state stack too large (unbalanced save/restore?)."/>
  <int value="3" label="Direct pixel write."/>
  <int value="4" label="Flush for initial clear."/>
  <int value="5" label="Flush after drawing from a WebGL canvas."/>
  <int value="6" label="Acquiring snapshot for getImageData()."/>
  <int value="7" label="Acquiring snapshot for WebGL texture upload."/>
  <int value="8"
      label="Acquiring snapshot for direct painting of canvas contents."/>
  <int value="9" label="Acquiring snapshot for toDataURL()"/>
  <int value="10" label="Acquiring snapshot for toBlob()."/>
  <int value="11" label="Acquiring snapshot for capturing to a stream."/>
  <int value="12" label="Acquiring snapshot for drawImage() source."/>
  <int value="13" label="Acquiring snapshot for createPattern()."/>
  <int value="14" label="Expensive overdraw heuristic."/>
  <int value="15" label="Darwing a texture-backed pattern."/>
  <int value="16" label="Drawing a video."/>
  <int value="17" label="Drawing an animated 2D canvas."/>
  <int value="18" label="Sub-pixel text anti-aliasing support."/>
</enum>

<enum name="CanvasGPUAccelerated2DCanvasDisableDeferralReason" type="int">
  <int value="0" label="Unknown (Should not be seen in production)."/>
  <int value="1" label="Canvas not cleared between consecutive frames."/>
  <int value="2"
      label="Canvas state stack too large (unbalanced save/restore?)."/>
  <int value="3" label="Direct pixel write."/>
  <int value="4" label="Draw image of animated 2d canvas"/>
  <int value="5" label="Sub-pixel text anti-aliasing support (expect 0)"/>
</enum>

<enum name="CanvasHibernationEvent" type="int">
  <int value="0" label="HibernationScheduled"/>
  <int value="1"
      label="HibernationAbortedDueToDestructionWhileHibernatePending"/>
  <int value="2" label="HibernationAbortedDueToPendingDestruction"/>
  <int value="3" label="HibernationAbortedDueToVisibilityChange"/>
  <int value="4" label="HibernationAbortedDueGpuContextLoss"/>
  <int value="5" label="HibernationAbortedDueToSwitchToUnacceleratedRendering"/>
  <int value="6" label="HibernationAbortedDueToAllocationFailure"/>
  <int value="7" label="HibernationEndedNormally"/>
  <int value="8" label="HibernationEndedWithSwitchToBackgroundRendering"/>
  <int value="9" label="HibernationEndedWithFallbackToSW"/>
  <int value="10" label="HibernationEndedWithTeardown"/>
  <int value="11" label="HibernationAbortedBecauseNoSurface"/>
</enum>

<enum name="CAPSUpdaterStep" type="int">
  <int value="0" label="CAPS component ready"/>
  <int value="1" label="CAPS component missing"/>
  <int value="2" label="CAPS Service failed to start"/>
  <int value="3" label="CAPS Service started"/>
</enum>

<enum name="CaptivePortalBlockingPageEvent" type="int">
  <int value="0" label="SHOW_ALL"/>
  <int value="1" label="OPEN_LOGIN_PAGE"/>
</enum>

<enum name="CaptivePortalDetectResult" type="int">
  <int value="0" label="INTERNET_CONNECTED"/>
  <int value="1" label="NO_RESPONSE"/>
  <int value="2" label="BEHIND_CAPTIVE_PORTAL"/>
  <int value="3" label="NO_RESPONSE_HTTPS_LANDING_URL"/>
  <int value="4" label="BEHIND_CAPTIVE_PORTAL_HTTPS_LANDING_URL"/>
  <int value="5" label="NO_RESPONSE_IP_ADDRESS"/>
  <int value="6" label="BEHIND_CAPTIVE_PORTAL_IP_ADDRESS"/>
  <int value="7" label="NO_RESPONSE_HTTPS_LANDING_URL_IP_ADDRESS"/>
  <int value="8" label="BEHIND_CAPTIVE_PORTAL_HTTPS_LANDING_URL_IP_ADDRESS"/>
</enum>

<enum name="CaptivePortalNotificationStatus" type="int">
  <int value="0" label="DISPLAYED"/>
  <int value="1" label="ERROR"/>
</enum>

<enum name="CaptivePortalNotificationUserAction" type="int">
  <int value="0" label="CLICKED"/>
  <int value="1" label="CLOSED"/>
  <int value="2" label="IGNORED"/>
</enum>

<enum name="CaptivePortalStatus" type="int">
  <int value="0" label="UNKNOWN"/>
  <int value="1" label="OFFLINE"/>
  <int value="2" label="ONLINE"/>
  <int value="3" label="PORTAL"/>
  <int value="4" label="PROXY_AUTH_REQUIRED"/>
</enum>

<enum name="CaptureApiMac" type="int">
  <obsolete>
    Deprecated as of 04/2016.
  </obsolete>
  <int value="0" label="QTKit used due to Mac OS X previous to 10.7.x Lion"/>
  <int value="1" label="QTKit forced, on OS X supporting AVFoundation"/>
  <int value="2" label="QTKit used due to no flag specified"/>
  <int value="3" label="QTKit used: AVFoundation enabled but failed loading"/>
  <int value="4" label="AVFoundation is enabled and is loaded succesfully"/>
</enum>

<enum name="CapturePixelFormat" type="int">
  <obsolete>
    Deprecated as of 08/2015.
  </obsolete>
  <int value="0" label="UNKNOWN"/>
  <int value="1" label="I420"/>
  <int value="2" label="YUY2"/>
  <int value="3" label="UYVY"/>
  <int value="4" label="RGB24"/>
  <int value="5" label="ARGB"/>
  <int value="6" label="MJPEG"/>
  <int value="7" label="NV21"/>
  <int value="8" label="YV12"/>
  <int value="9" label="TEXTURE"/>
</enum>

<enum name="CaptureStartupResult" type="int">
  <int value="0" label="No data callback"/>
  <int value="1" label="OK"/>
  <int value="2" label="Failed to create stream"/>
  <int value="3" label="Failed to open stream"/>
</enum>

<enum name="CastOverlayEvents" type="int">
  <int value="0" label="Created"/>
  <int value="1" label="Shown"/>
  <int value="2" label="Clicked"/>
</enum>

<enum name="CastPlayBackState" type="int">
  <int value="0" label="YT_PLAYER_SUCCESS"/>
  <int value="1" label="YT_PLAYER_FAILURE"/>
  <int value="2" label="DEFAULT_PLAYER_SUCCESS"/>
  <int value="3" label="DEFAULT_PLAYER_FAILURE"/>
</enum>

<enum name="CatSixtyFour" type="int">
  <int value="0" label="Saber-Toothed Cat (&lt;10.6), 32-bit (?)"/>
  <int value="1" label="Saber-Toothed Cat (&lt;10.6), 64-bit (?)"/>
  <int value="2" label="Snow Leopard (10.6), 32-bit"/>
  <int value="3" label="Snow Leopard (10.6), 64-bit"/>
  <int value="4" label="Lion (10.7), 32-bit (?)"/>
  <int value="5" label="Lion (10.7), 64-bit"/>
  <int value="6" label="Mountain Lion (10.8), 32-bit (?)"/>
  <int value="7" label="Mountain Lion (10.8), 64-bit"/>
  <int value="8" label="Mavericks (10.9), 32-bit (?)"/>
  <int value="9" label="Mavericks (10.9), 64-bit"/>
  <int value="10" label="Saber-Toothed Cat (&lt;10.6), 8-bit (?)"/>
  <int value="11" label="Snow Leopard (10.6), 8-bit (?)"/>
  <int value="12" label="Lion (10.7), 8-bit (?)"/>
  <int value="13" label="Mountain Lion (10.8), 8-bit (?)"/>
  <int value="14" label="Mavericks (10.9), 8-bit (?)"/>
  <int value="15" label="Yosemite (10.10), 32-bit (?)"/>
  <int value="16" label="Yosemite (10.10), 64-bit"/>
  <int value="17" label="Yosemite (10.10), 8-bit (?)"/>
  <int value="18" label="FutureCat (&gt;10.10), 32-bit (?)"/>
  <int value="19" label="FutureCat (&gt;10.10), 64-bit"/>
  <int value="20" label="FutureCat (&gt;10.10), 8-bit (?)"/>
</enum>

<enum name="CdmPromiseResult" type="int">
  <int value="0" label="Success"/>
  <int value="1" label="NotSupportedError"/>
  <int value="2" label="InvalidStateError"/>
  <int value="3" label="InvalidAccessError"/>
  <int value="4" label="QuotaExceededError"/>
  <int value="5" label="UnknownError"/>
  <int value="6" label="ClientError"/>
  <int value="7" label="OutputError"/>
</enum>

<enum name="CertificateChainPosition" type="int">
  <obsolete>
    Deprecated as of 01/2016. CertCacheTrial has been removed.
    https://crbug.com/522312
  </obsolete>
  <int value="0" label="Root Certificate"/>
</enum>

<enum name="ChannelLayout" type="int">
  <int value="0" label="CHANNEL_LAYOUT_NONE"/>
  <int value="1" label="CHANNEL_LAYOUT_UNSUPPORTED"/>
  <int value="2" label="CHANNEL_LAYOUT_MONO"/>
  <int value="3" label="CHANNEL_LAYOUT_STEREO"/>
  <int value="4" label="CHANNEL_LAYOUT_2_1"/>
  <int value="5" label="CHANNEL_LAYOUT_SURROUND"/>
  <int value="6" label="CHANNEL_LAYOUT_4POINT0"/>
  <int value="7" label="CHANNEL_LAYOUT_2_2"/>
  <int value="8" label="CHANNEL_LAYOUT_QUAD"/>
  <int value="9" label="CHANNEL_LAYOUT_5POINT0"/>
  <int value="10" label="CHANNEL_LAYOUT_5POINT1"/>
  <int value="11" label="CHANNEL_LAYOUT_5POINT0_BACK"/>
  <int value="12" label="CHANNEL_LAYOUT_5POINT1_BACK"/>
  <int value="13" label="CHANNEL_LAYOUT_7POINT0"/>
  <int value="14" label="CHANNEL_LAYOUT_7POINT1"/>
  <int value="15" label="CHANNEL_LAYOUT_7POINT1_WIDE"/>
  <int value="16" label="CHANNEL_LAYOUT_STEREO_DOWNMIX"/>
  <int value="17" label="CHANNEL_LAYOUT_2POINT1"/>
  <int value="18" label="CHANNEL_LAYOUT_3_1"/>
  <int value="19" label="CHANNEL_LAYOUT_4_1"/>
  <int value="20" label="CHANNEL_LAYOUT_6_0"/>
  <int value="21" label="CHANNEL_LAYOUT_6_0_FRONT"/>
  <int value="22" label="CHANNEL_LAYOUT_HEXAGONAL"/>
  <int value="23" label="CHANNEL_LAYOUT_6_1"/>
  <int value="24" label="CHANNEL_LAYOUT_6_1_BACK"/>
  <int value="25" label="CHANNEL_LAYOUT_6_1_FRONT"/>
  <int value="26" label="CHANNEL_LAYOUT_7_0_FRONT"/>
  <int value="27" label="CHANNEL_LAYOUT_7_1_WIDE_BACK"/>
  <int value="28" label="CHANNEL_LAYOUT_OCTAGONAL"/>
  <int value="29" label="CHANNEL_LAYOUT_DISCRETE"/>
</enum>

<enum name="CheckCRCResult" type="int">
  <int value="0" label="Stream was never read to end"/>
  <int value="1" label="CRC check not done"/>
  <int value="2" label="CRC check done"/>
  <int value="3" label="Stream was never read at all"/>
</enum>

<enum name="ChromeChannelForHistogram" type="int">
  <int value="0" label="UNKNOWN"/>
  <int value="1" label="CANARY"/>
  <int value="2" label="DEV"/>
  <int value="3" label="BETA"/>
  <int value="4" label="STABLE"/>
</enum>

<enum name="ChromeDownloadCountType" type="int">
  <int value="0" label="Initiated by Navigation (Obsolete)"/>
  <int value="1" label="Initiated by Context Menu (Obsolete)"/>
  <int value="2" label="Initiated by WebStore Installer (Obsolete)"/>
  <int value="3" label="Initiated by ImageBurner (Obsolete)"/>
  <int value="4" label="Blocked by Throttling"/>
</enum>

<enum name="ChromeDownloadSource" type="int">
  <int value="0" label="Initiated by Navigation"/>
  <int value="1" label="Initiated by Context Menu"/>
  <int value="2" label="Initiated by WebStore Installer"/>
  <int value="3" label="Initiated by ImageBurner"/>
  <int value="4" label="Initiated by Plugin Installer"/>
</enum>

<enum name="ChromeNotifierServiceActionType" type="int">
  <int value="0" label="Unknown"/>
  <int value="1" label="First service enabled"/>
  <int value="2" label="First service disabled"/>
</enum>

<enum name="ChromeOSColorProfile" type="int">
  <summary>See ui/display/display_constants.h for the variation.</summary>
  <int value="0" label="Standard"/>
  <int value="1" label="Dynamic"/>
  <int value="2" label="Movie"/>
  <int value="3" label="Reading"/>
</enum>

<enum name="ChromeOSMachineIdReason" type="int">
  <int value="0" label="Unknown"/>
  <int value="1" label="Network"/>
  <int value="2" label="Periodic"/>
</enum>

<enum name="ChromeOSPlatformVerificationExpiryStatus" type="int">
  <summary>
    Possible results of a platform verification expiry check. See
    chrome/browser/chromeos/attestation/platform_verification.cc.
  </summary>
  <int value="0" label="Ok"/>
  <int value="1" label="Expiring Soon"/>
  <int value="2" label="Expired"/>
  <int value="3" label="Invalid PEM Chain"/>
  <int value="4" label="Invalid X.509"/>
</enum>

<enum name="ChromeOSPlatformVerificationResult" type="int">
  <summary>
    Possible results of a platform verification attempt. See
    chrome/browser/chromeos/attestation/platform_verification.h.
  </summary>
  <int value="0" label="Success"/>
  <int value="1" label="Internal Error"/>
  <int value="2" label="Platform Not Verified"/>
  <int value="3" label="Rejected by User"/>
  <int value="4" label="Rejected by Policy"/>
  <int value="5" label="Timeout"/>
</enum>

<enum name="ChromeOSUserImageId" type="int">
  <summary>
    Indices of the default images as defined in
    chrome/browser/chromeos/login/default_user_images.cc. The last three values
    are for taken photo, downloaded file and the image previously used by user.
  </summary>
  <int value="0" label="Default, Beaker"/>
  <int value="1" label="Default, Bee"/>
  <int value="2" label="Default, Briefcase"/>
  <int value="3" label="Default, Circles"/>
  <int value="4" label="Default, Cloud"/>
  <int value="5" label="Default, Cupcake"/>
  <int value="6" label="Default, Day"/>
  <int value="7" label="Default, Flower"/>
  <int value="8" label="Default, Globe"/>
  <int value="9" label="Default, Hot air"/>
  <int value="10" label="Default, Ladybug"/>
  <int value="11" label="Default, Leaf"/>
  <int value="12" label="Default, Night"/>
  <int value="13" label="Default, Plane"/>
  <int value="14" label="Default, Robot body"/>
  <int value="15" label="Default, Robot head"/>
  <int value="16" label="Default, Toolbox"/>
  <int value="17" label="Default, User color"/>
  <int value="18" label="Default, User enterprise"/>
  <int value="19" label="Photo taken"/>
  <int value="20" label="Downloaded file"/>
  <int value="21" label="Old image"/>
  <int value="22" label="Profile image"/>
</enum>

<enum name="ChromiumAndroidLinkerBrowserState" type="int">
  <int value="0" label="Normal, Random Address Load"/>
  <int value="1" label="Low memory, Fixed Address Load Success"/>
  <int value="2" label="Low memory, Fixed Address Load Failure"/>
</enum>

<enum name="ChromiumAndroidLinkerRendererState" type="int">
  <int value="0" label="Fixed Address Load Success"/>
  <int value="1" label="Fixed Address Load Failure"/>
  <int value="2" label="Fixed Address Load Not Attempted"/>
</enum>

<enum name="CLD2LanguageCode" type="int">
  <summary>
    See Language in third_party/cld_2/src/internal/generated_language.h.
  </summary>
  <int value="0" label="ENGLISH"/>
  <int value="1" label="DANISH"/>
  <int value="2" label="DUTCH"/>
  <int value="3" label="FINNISH"/>
  <int value="4" label="FRENCH"/>
  <int value="5" label="GERMAN"/>
  <int value="6" label="HEBREW"/>
  <int value="7" label="ITALIAN"/>
  <int value="8" label="JAPANESE"/>
  <int value="9" label="KOREAN"/>
  <int value="10" label="NORWEGIAN"/>
  <int value="11" label="POLISH"/>
  <int value="12" label="PORTUGUESE"/>
  <int value="13" label="RUSSIAN"/>
  <int value="14" label="SPANISH"/>
  <int value="15" label="SWEDISH"/>
  <int value="16" label="CHINESE"/>
  <int value="17" label="CZECH"/>
  <int value="18" label="GREEK"/>
  <int value="19" label="ICELANDIC"/>
  <int value="20" label="LATVIAN"/>
  <int value="21" label="LITHUANIAN"/>
  <int value="22" label="ROMANIAN"/>
  <int value="23" label="HUNGARIAN"/>
  <int value="24" label="ESTONIAN"/>
  <int value="25" label="TG_UNKNOWN_LANGUAGE"/>
  <int value="26" label="UNKNOWN_LANGUAGE"/>
  <int value="27" label="BULGARIAN"/>
  <int value="28" label="CROATIAN"/>
  <int value="29" label="SERBIAN"/>
  <int value="30" label="IRISH"/>
  <int value="31" label="GALICIAN"/>
  <int value="32" label="TAGALOG"/>
  <int value="33" label="TURKISH"/>
  <int value="34" label="UKRAINIAN"/>
  <int value="35" label="HINDI"/>
  <int value="36" label="MACEDONIAN"/>
  <int value="37" label="BENGALI"/>
  <int value="38" label="INDONESIAN"/>
  <int value="39" label="LATIN"/>
  <int value="40" label="MALAY"/>
  <int value="41" label="MALAYALAM"/>
  <int value="42" label="WELSH"/>
  <int value="43" label="NEPALI"/>
  <int value="44" label="TELUGU"/>
  <int value="45" label="ALBANIAN"/>
  <int value="46" label="TAMIL"/>
  <int value="47" label="BELARUSIAN"/>
  <int value="48" label="JAVANESE"/>
  <int value="49" label="OCCITAN"/>
  <int value="50" label="URDU"/>
  <int value="51" label="BIHARI"/>
  <int value="52" label="GUJARATI"/>
  <int value="53" label="THAI"/>
  <int value="54" label="ARABIC"/>
  <int value="55" label="CATALAN"/>
  <int value="56" label="ESPERANTO"/>
  <int value="57" label="BASQUE"/>
  <int value="58" label="INTERLINGUA"/>
  <int value="59" label="KANNADA"/>
  <int value="60" label="PUNJABI"/>
  <int value="61" label="SCOTS_GAELIC"/>
  <int value="62" label="SWAHILI"/>
  <int value="63" label="SLOVENIAN"/>
  <int value="64" label="MARATHI"/>
  <int value="65" label="MALTESE"/>
  <int value="66" label="VIETNAMESE"/>
  <int value="67" label="FRISIAN"/>
  <int value="68" label="SLOVAK"/>
  <int value="69" label="CHINESE_T"/>
  <int value="70" label="FAROESE"/>
  <int value="71" label="SUNDANESE"/>
  <int value="72" label="UZBEK"/>
  <int value="73" label="AMHARIC"/>
  <int value="74" label="AZERBAIJANI"/>
  <int value="75" label="GEORGIAN"/>
  <int value="76" label="TIGRINYA"/>
  <int value="77" label="PERSIAN"/>
  <int value="78" label="BOSNIAN"/>
  <int value="79" label="SINHALESE"/>
  <int value="80" label="NORWEGIAN_N"/>
  <int value="81" label="X_81"/>
  <int value="82" label="X_82"/>
  <int value="83" label="XHOSA"/>
  <int value="84" label="ZULU"/>
  <int value="85" label="GUARANI"/>
  <int value="86" label="SESOTHO"/>
  <int value="87" label="TURKMEN"/>
  <int value="88" label="KYRGYZ"/>
  <int value="89" label="BRETON"/>
  <int value="90" label="TWI"/>
  <int value="91" label="YIDDISH"/>
  <int value="92" label="X_92"/>
  <int value="93" label="SOMALI"/>
  <int value="94" label="UIGHUR"/>
  <int value="95" label="KURDISH"/>
  <int value="96" label="MONGOLIAN"/>
  <int value="97" label="ARMENIAN"/>
  <int value="98" label="LAOTHIAN"/>
  <int value="99" label="SINDHI"/>
  <int value="100" label="RHAETO_ROMANCE"/>
  <int value="101" label="AFRIKAANS"/>
  <int value="102" label="LUXEMBOURGISH"/>
  <int value="103" label="BURMESE"/>
  <int value="104" label="KHMER"/>
  <int value="105" label="TIBETAN"/>
  <int value="106" label="DHIVEHI"/>
  <int value="107" label="CHEROKEE"/>
  <int value="108" label="SYRIAC"/>
  <int value="109" label="LIMBU"/>
  <int value="110" label="ORIYA"/>
  <int value="111" label="ASSAMESE"/>
  <int value="112" label="CORSICAN"/>
  <int value="113" label="INTERLINGUE"/>
  <int value="114" label="KAZAKH"/>
  <int value="115" label="LINGALA"/>
  <int value="116" label="X_116"/>
  <int value="117" label="PASHTO"/>
  <int value="118" label="QUECHUA"/>
  <int value="119" label="SHONA"/>
  <int value="120" label="TAJIK"/>
  <int value="121" label="TATAR"/>
  <int value="122" label="TONGA"/>
  <int value="123" label="YORUBA"/>
  <int value="124" label="X_124"/>
  <int value="125" label="X_125"/>
  <int value="126" label="X_126"/>
  <int value="127" label="X_127"/>
  <int value="128" label="MAORI"/>
  <int value="129" label="WOLOF"/>
  <int value="130" label="ABKHAZIAN"/>
  <int value="131" label="AFAR"/>
  <int value="132" label="AYMARA"/>
  <int value="133" label="BASHKIR"/>
  <int value="134" label="BISLAMA"/>
  <int value="135" label="DZONGKHA"/>
  <int value="136" label="FIJIAN"/>
  <int value="137" label="GREENLANDIC"/>
  <int value="138" label="HAUSA"/>
  <int value="139" label="HAITIAN_CREOLE"/>
  <int value="140" label="INUPIAK"/>
  <int value="141" label="INUKTITUT"/>
  <int value="142" label="KASHMIRI"/>
  <int value="143" label="KINYARWANDA"/>
  <int value="144" label="MALAGASY"/>
  <int value="145" label="NAURU"/>
  <int value="146" label="OROMO"/>
  <int value="147" label="RUNDI"/>
  <int value="148" label="SAMOAN"/>
  <int value="149" label="SANGO"/>
  <int value="150" label="SANSKRIT"/>
  <int value="151" label="SISWANT"/>
  <int value="152" label="TSONGA"/>
  <int value="153" label="TSWANA"/>
  <int value="154" label="VOLAPUK"/>
  <int value="155" label="ZHUANG"/>
  <int value="156" label="KHASI"/>
  <int value="157" label="SCOTS"/>
  <int value="158" label="GANDA"/>
  <int value="159" label="MANX"/>
  <int value="160" label="MONTENEGRIN"/>
  <int value="161" label="AKAN"/>
  <int value="162" label="IGBO"/>
  <int value="163" label="MAURITIAN_CREOLE"/>
  <int value="164" label="HAWAIIAN"/>
  <int value="165" label="CEBUANO"/>
  <int value="166" label="EWE"/>
  <int value="167" label="GA"/>
  <int value="168" label="HMONG"/>
  <int value="169" label="KRIO"/>
  <int value="170" label="LOZI"/>
  <int value="171" label="LUBA_LULUA"/>
  <int value="172" label="LUO_KENYA_AND_TANZANIA"/>
  <int value="173" label="NEWARI"/>
  <int value="174" label="NYANJA"/>
  <int value="175" label="OSSETIAN"/>
  <int value="176" label="PAMPANGA"/>
  <int value="177" label="PEDI"/>
  <int value="178" label="RAJASTHANI"/>
  <int value="179" label="SESELWA"/>
  <int value="180" label="TUMBUKA"/>
  <int value="181" label="VENDA"/>
  <int value="182" label="WARAY_PHILIPPINES"/>
  <int value="183" label="X_183"/>
  <int value="184" label="X_184"/>
  <int value="185" label="X_185"/>
  <int value="186" label="X_186"/>
  <int value="187" label="X_187"/>
  <int value="188" label="X_188"/>
  <int value="189" label="X_189"/>
  <int value="190" label="X_190"/>
  <int value="191" label="X_191"/>
  <int value="192" label="X_192"/>
  <int value="193" label="X_193"/>
  <int value="194" label="X_194"/>
  <int value="195" label="X_195"/>
  <int value="196" label="X_196"/>
  <int value="197" label="X_197"/>
  <int value="198" label="X_198"/>
  <int value="199" label="X_199"/>
  <int value="200" label="X_200"/>
  <int value="201" label="X_201"/>
  <int value="202" label="X_202"/>
  <int value="203" label="X_203"/>
  <int value="204" label="X_204"/>
  <int value="205" label="X_205"/>
  <int value="206" label="X_206"/>
  <int value="207" label="X_207"/>
  <int value="208" label="X_208"/>
  <int value="209" label="X_209"/>
  <int value="210" label="X_210"/>
  <int value="211" label="X_211"/>
  <int value="212" label="X_212"/>
  <int value="213" label="X_213"/>
  <int value="214" label="X_214"/>
  <int value="215" label="X_215"/>
  <int value="216" label="X_216"/>
  <int value="217" label="X_217"/>
  <int value="218" label="X_218"/>
  <int value="219" label="X_219"/>
  <int value="220" label="X_220"/>
  <int value="221" label="X_221"/>
  <int value="222" label="X_222"/>
  <int value="223" label="X_223"/>
  <int value="224" label="X_224"/>
  <int value="225" label="X_225"/>
  <int value="226" label="X_226"/>
  <int value="227" label="X_227"/>
  <int value="228" label="X_228"/>
  <int value="229" label="X_229"/>
  <int value="230" label="X_230"/>
  <int value="231" label="X_231"/>
  <int value="232" label="X_232"/>
  <int value="233" label="X_233"/>
  <int value="234" label="X_234"/>
  <int value="235" label="X_235"/>
  <int value="236" label="X_236"/>
  <int value="237" label="X_237"/>
  <int value="238" label="X_238"/>
  <int value="239" label="X_239"/>
  <int value="240" label="X_240"/>
  <int value="241" label="X_241"/>
  <int value="242" label="X_242"/>
  <int value="243" label="X_243"/>
  <int value="244" label="X_244"/>
  <int value="245" label="X_245"/>
  <int value="246" label="X_246"/>
  <int value="247" label="X_247"/>
  <int value="248" label="X_248"/>
  <int value="249" label="X_249"/>
  <int value="250" label="X_250"/>
  <int value="251" label="X_251"/>
  <int value="252" label="X_252"/>
  <int value="253" label="X_253"/>
  <int value="254" label="X_254"/>
  <int value="255" label="X_255"/>
  <int value="256" label="X_256"/>
  <int value="257" label="X_257"/>
  <int value="258" label="X_258"/>
  <int value="259" label="X_259"/>
  <int value="260" label="X_260"/>
  <int value="261" label="X_261"/>
  <int value="262" label="X_262"/>
  <int value="263" label="X_263"/>
  <int value="264" label="X_264"/>
  <int value="265" label="X_265"/>
  <int value="266" label="X_266"/>
  <int value="267" label="X_267"/>
  <int value="268" label="X_268"/>
  <int value="269" label="X_269"/>
  <int value="270" label="X_270"/>
  <int value="271" label="X_271"/>
  <int value="272" label="X_272"/>
  <int value="273" label="X_273"/>
  <int value="274" label="X_274"/>
  <int value="275" label="X_275"/>
  <int value="276" label="X_276"/>
  <int value="277" label="X_277"/>
  <int value="278" label="X_278"/>
  <int value="279" label="X_279"/>
  <int value="280" label="X_280"/>
  <int value="281" label="X_281"/>
  <int value="282" label="X_282"/>
  <int value="283" label="X_283"/>
  <int value="284" label="X_284"/>
  <int value="285" label="X_285"/>
  <int value="286" label="X_286"/>
  <int value="287" label="X_287"/>
  <int value="288" label="X_288"/>
  <int value="289" label="X_289"/>
  <int value="290" label="X_290"/>
  <int value="291" label="X_291"/>
  <int value="292" label="X_292"/>
  <int value="293" label="X_293"/>
  <int value="294" label="X_294"/>
  <int value="295" label="X_295"/>
  <int value="296" label="X_296"/>
  <int value="297" label="X_297"/>
  <int value="298" label="X_298"/>
  <int value="299" label="X_299"/>
  <int value="300" label="X_300"/>
  <int value="301" label="X_301"/>
  <int value="302" label="X_302"/>
  <int value="303" label="X_303"/>
  <int value="304" label="X_304"/>
  <int value="305" label="X_305"/>
  <int value="306" label="X_306"/>
  <int value="307" label="X_307"/>
  <int value="308" label="X_308"/>
  <int value="309" label="X_309"/>
  <int value="310" label="X_310"/>
  <int value="311" label="X_311"/>
  <int value="312" label="X_312"/>
  <int value="313" label="X_313"/>
  <int value="314" label="X_314"/>
  <int value="315" label="X_315"/>
  <int value="316" label="X_316"/>
  <int value="317" label="X_317"/>
  <int value="318" label="X_318"/>
  <int value="319" label="X_319"/>
  <int value="320" label="X_320"/>
  <int value="321" label="X_321"/>
  <int value="322" label="X_322"/>
  <int value="323" label="X_323"/>
  <int value="324" label="X_324"/>
  <int value="325" label="X_325"/>
  <int value="326" label="X_326"/>
  <int value="327" label="X_327"/>
  <int value="328" label="X_328"/>
  <int value="329" label="X_329"/>
  <int value="330" label="X_330"/>
  <int value="331" label="X_331"/>
  <int value="332" label="X_332"/>
  <int value="333" label="X_333"/>
  <int value="334" label="X_334"/>
  <int value="335" label="X_335"/>
  <int value="336" label="X_336"/>
  <int value="337" label="X_337"/>
  <int value="338" label="X_338"/>
  <int value="339" label="X_339"/>
  <int value="340" label="X_340"/>
  <int value="341" label="X_341"/>
  <int value="342" label="X_342"/>
  <int value="343" label="X_343"/>
  <int value="344" label="X_344"/>
  <int value="345" label="X_345"/>
  <int value="346" label="X_346"/>
  <int value="347" label="X_347"/>
  <int value="348" label="X_348"/>
  <int value="349" label="X_349"/>
  <int value="350" label="X_350"/>
  <int value="351" label="X_351"/>
  <int value="352" label="X_352"/>
  <int value="353" label="X_353"/>
  <int value="354" label="X_354"/>
  <int value="355" label="X_355"/>
  <int value="356" label="X_356"/>
  <int value="357" label="X_357"/>
  <int value="358" label="X_358"/>
  <int value="359" label="X_359"/>
  <int value="360" label="X_360"/>
  <int value="361" label="X_361"/>
  <int value="362" label="X_362"/>
  <int value="363" label="X_363"/>
  <int value="364" label="X_364"/>
  <int value="365" label="X_365"/>
  <int value="366" label="X_366"/>
  <int value="367" label="X_367"/>
  <int value="368" label="X_368"/>
  <int value="369" label="X_369"/>
  <int value="370" label="X_370"/>
  <int value="371" label="X_371"/>
  <int value="372" label="X_372"/>
  <int value="373" label="X_373"/>
  <int value="374" label="X_374"/>
  <int value="375" label="X_375"/>
  <int value="376" label="X_376"/>
  <int value="377" label="X_377"/>
  <int value="378" label="X_378"/>
  <int value="379" label="X_379"/>
  <int value="380" label="X_380"/>
  <int value="381" label="X_381"/>
  <int value="382" label="X_382"/>
  <int value="383" label="X_383"/>
  <int value="384" label="X_384"/>
  <int value="385" label="X_385"/>
  <int value="386" label="X_386"/>
  <int value="387" label="X_387"/>
  <int value="388" label="X_388"/>
  <int value="389" label="X_389"/>
  <int value="390" label="X_390"/>
  <int value="391" label="X_391"/>
  <int value="392" label="X_392"/>
  <int value="393" label="X_393"/>
  <int value="394" label="X_394"/>
  <int value="395" label="X_395"/>
  <int value="396" label="X_396"/>
  <int value="397" label="X_397"/>
  <int value="398" label="X_398"/>
  <int value="399" label="X_399"/>
  <int value="400" label="X_400"/>
  <int value="401" label="X_401"/>
  <int value="402" label="X_402"/>
  <int value="403" label="X_403"/>
  <int value="404" label="X_404"/>
  <int value="405" label="X_405"/>
  <int value="406" label="X_406"/>
  <int value="407" label="X_407"/>
  <int value="408" label="X_408"/>
  <int value="409" label="X_409"/>
  <int value="410" label="X_410"/>
  <int value="411" label="X_411"/>
  <int value="412" label="X_412"/>
  <int value="413" label="X_413"/>
  <int value="414" label="X_414"/>
  <int value="415" label="X_415"/>
  <int value="416" label="X_416"/>
  <int value="417" label="X_417"/>
  <int value="418" label="X_418"/>
  <int value="419" label="X_419"/>
  <int value="420" label="X_420"/>
  <int value="421" label="X_421"/>
  <int value="422" label="X_422"/>
  <int value="423" label="X_423"/>
  <int value="424" label="X_424"/>
  <int value="425" label="X_425"/>
  <int value="426" label="X_426"/>
  <int value="427" label="X_427"/>
  <int value="428" label="X_428"/>
  <int value="429" label="X_429"/>
  <int value="430" label="X_430"/>
  <int value="431" label="X_431"/>
  <int value="432" label="X_432"/>
  <int value="433" label="X_433"/>
  <int value="434" label="X_434"/>
  <int value="435" label="X_435"/>
  <int value="436" label="X_436"/>
  <int value="437" label="X_437"/>
  <int value="438" label="X_438"/>
  <int value="439" label="X_439"/>
  <int value="440" label="X_440"/>
  <int value="441" label="X_441"/>
  <int value="442" label="X_442"/>
  <int value="443" label="X_443"/>
  <int value="444" label="X_444"/>
  <int value="445" label="X_445"/>
  <int value="446" label="X_446"/>
  <int value="447" label="X_447"/>
  <int value="448" label="X_448"/>
  <int value="449" label="X_449"/>
  <int value="450" label="X_450"/>
  <int value="451" label="X_451"/>
  <int value="452" label="X_452"/>
  <int value="453" label="X_453"/>
  <int value="454" label="X_454"/>
  <int value="455" label="X_455"/>
  <int value="456" label="X_456"/>
  <int value="457" label="X_457"/>
  <int value="458" label="X_458"/>
  <int value="459" label="X_459"/>
  <int value="460" label="X_460"/>
  <int value="461" label="X_461"/>
  <int value="462" label="X_462"/>
  <int value="463" label="X_463"/>
  <int value="464" label="X_464"/>
  <int value="465" label="X_465"/>
  <int value="466" label="X_466"/>
  <int value="467" label="X_467"/>
  <int value="468" label="X_468"/>
  <int value="469" label="X_469"/>
  <int value="470" label="X_470"/>
  <int value="471" label="X_471"/>
  <int value="472" label="X_472"/>
  <int value="473" label="X_473"/>
  <int value="474" label="X_474"/>
  <int value="475" label="X_475"/>
  <int value="476" label="X_476"/>
  <int value="477" label="X_477"/>
  <int value="478" label="X_478"/>
  <int value="479" label="X_479"/>
  <int value="480" label="X_480"/>
  <int value="481" label="X_481"/>
  <int value="482" label="X_482"/>
  <int value="483" label="X_483"/>
  <int value="484" label="X_484"/>
  <int value="485" label="X_485"/>
  <int value="486" label="X_486"/>
  <int value="487" label="X_487"/>
  <int value="488" label="X_488"/>
  <int value="489" label="X_489"/>
  <int value="490" label="X_490"/>
  <int value="491" label="X_491"/>
  <int value="492" label="X_492"/>
  <int value="493" label="X_493"/>
  <int value="494" label="X_494"/>
  <int value="495" label="X_495"/>
  <int value="496" label="X_496"/>
  <int value="497" label="X_497"/>
  <int value="498" label="X_498"/>
  <int value="499" label="X_499"/>
  <int value="500" label="X_500"/>
  <int value="501" label="X_501"/>
  <int value="502" label="X_502"/>
  <int value="503" label="X_503"/>
  <int value="504" label="X_504"/>
  <int value="505" label="X_505"/>
  <int value="506" label="NDEBELE"/>
  <int value="507" label="X_BORK_BORK_BORK"/>
  <int value="508" label="X_PIG_LATIN"/>
  <int value="509" label="X_HACKER"/>
  <int value="510" label="X_KLINGON"/>
  <int value="511" label="X_ELMER_FUDD"/>
  <int value="512" label="X_Common"/>
  <int value="513" label="X_Latin"/>
  <int value="514" label="X_Greek"/>
  <int value="515" label="X_Cyrillic"/>
  <int value="516" label="X_Armenian"/>
  <int value="517" label="X_Hebrew"/>
  <int value="518" label="X_Arabic"/>
  <int value="519" label="X_Syriac"/>
  <int value="520" label="X_Thaana"/>
  <int value="521" label="X_Devanagari"/>
  <int value="522" label="X_Bengali"/>
  <int value="523" label="X_Gurmukhi"/>
  <int value="524" label="X_Gujarati"/>
  <int value="525" label="X_Oriya"/>
  <int value="526" label="X_Tamil"/>
  <int value="527" label="X_Telugu"/>
  <int value="528" label="X_Kannada"/>
  <int value="529" label="X_Malayalam"/>
  <int value="530" label="X_Sinhala"/>
  <int value="531" label="X_Thai"/>
  <int value="532" label="X_Lao"/>
  <int value="533" label="X_Tibetan"/>
  <int value="534" label="X_Myanmar"/>
  <int value="535" label="X_Georgian"/>
  <int value="536" label="X_Hangul"/>
  <int value="537" label="X_Ethiopic"/>
  <int value="538" label="X_Cherokee"/>
  <int value="539" label="X_Canadian_Aboriginal"/>
  <int value="540" label="X_Ogham"/>
  <int value="541" label="X_Runic"/>
  <int value="542" label="X_Khmer"/>
  <int value="543" label="X_Mongolian"/>
  <int value="544" label="X_Hiragana"/>
  <int value="545" label="X_Katakana"/>
  <int value="546" label="X_Bopomofo"/>
  <int value="547" label="X_Han"/>
  <int value="548" label="X_Yi"/>
  <int value="549" label="X_Old_Italic"/>
  <int value="550" label="X_Gothic"/>
  <int value="551" label="X_Deseret"/>
  <int value="552" label="X_Inherited"/>
  <int value="553" label="X_Tagalog"/>
  <int value="554" label="X_Hanunoo"/>
  <int value="555" label="X_Buhid"/>
  <int value="556" label="X_Tagbanwa"/>
  <int value="557" label="X_Limbu"/>
  <int value="558" label="X_Tai_Le"/>
  <int value="559" label="X_Linear_B"/>
  <int value="560" label="X_Ugaritic"/>
  <int value="561" label="X_Shavian"/>
  <int value="562" label="X_Osmanya"/>
  <int value="563" label="X_Cypriot"/>
  <int value="564" label="X_Braille"/>
  <int value="565" label="X_Buginese"/>
  <int value="566" label="X_Coptic"/>
  <int value="567" label="X_New_Tai_Lue"/>
  <int value="568" label="X_Glagolitic"/>
  <int value="569" label="X_Tifinagh"/>
  <int value="570" label="X_Syloti_Nagri"/>
  <int value="571" label="X_Old_Persian"/>
  <int value="572" label="X_Kharoshthi"/>
  <int value="573" label="X_Balinese"/>
  <int value="574" label="X_Cuneiform"/>
  <int value="575" label="X_Phoenician"/>
  <int value="576" label="X_Phags_Pa"/>
  <int value="577" label="X_Nko"/>
  <int value="578" label="X_Sundanese"/>
  <int value="579" label="X_Lepcha"/>
  <int value="580" label="X_Ol_Chiki"/>
  <int value="581" label="X_Vai"/>
  <int value="582" label="X_Saurashtra"/>
  <int value="583" label="X_Kayah_Li"/>
  <int value="584" label="X_Rejang"/>
  <int value="585" label="X_Lycian"/>
  <int value="586" label="X_Carian"/>
  <int value="587" label="X_Lydian"/>
  <int value="588" label="X_Cham"/>
  <int value="589" label="X_Tai_Tham"/>
  <int value="590" label="X_Tai_Viet"/>
  <int value="591" label="X_Avestan"/>
  <int value="592" label="X_Egyptian_Hieroglyphs"/>
  <int value="593" label="X_Samaritan"/>
  <int value="594" label="X_Lisu"/>
  <int value="595" label="X_Bamum"/>
  <int value="596" label="X_Javanese"/>
  <int value="597" label="X_Meetei_Mayek"/>
  <int value="598" label="X_Imperial_Aramaic"/>
  <int value="599" label="X_Old_South_Arabian"/>
  <int value="600" label="X_Inscriptional_Parthian"/>
  <int value="601" label="X_Inscriptional_Pahlavi"/>
  <int value="602" label="X_Old_Turkic"/>
  <int value="603" label="X_Kaithi"/>
  <int value="604" label="X_Batak"/>
  <int value="605" label="X_Brahmi"/>
  <int value="606" label="X_Mandaic"/>
  <int value="607" label="X_Chakma"/>
  <int value="608" label="X_Meroitic_Cursive"/>
  <int value="609" label="X_Meroitic_Hieroglyphs"/>
  <int value="610" label="X_Miao"/>
  <int value="611" label="X_Sharada"/>
  <int value="612" label="X_Sora_Sompeng"/>
  <int value="613" label="X_Takri"/>
</enum>

<enum name="ClientAppId" type="int">
  <int value="0" label="Other"/>
  <int value="1" label="Gmail"/>
  <int value="2" label="Facebook"/>
  <int value="3" label="Plus"/>
  <int value="4" label="Twitter"/>
  <int value="5" label="Chrome"/>
  <int value="6" label="Hangouts"/>
  <int value="7" label="Messenger"/>
  <int value="8" label="News"/>
  <int value="9" label="Line"/>
  <int value="10" label="Whatsapp"/>
  <int value="11" label="Gsa"/>
</enum>

<enum name="ClipboardAction" type="int">
  <int value="0" label="Write from non-Incognito"/>
  <int value="1" label="Write from Incognito"/>
  <int value="2" label="Read Text"/>
</enum>

<enum name="ClockStates" type="int">
  <int value="0"
      label="CLOCK_STATE_UNKNOWN: accuracy of system clock is unknown"/>
  <int value="1" label="CLOCK_STATE_OK: system clock is roughly accurate"/>
  <int value="2" label="CLOCK_STATE_PAST: system clock is in the past"/>
  <int value="3" label="CLOCK_STATE_FUTURE: system clock is in the future"/>
</enum>

<enum name="CloudImportUserAction" type="int">
  <int value="0" label="IMPORT_INITIATED"/>
</enum>

<enum name="CloudPrintAuthEventType" type="int">
  <int value="0" label="AUTH_EVENT_ROBO_CREATE"/>
  <int value="1" label="AUTH_EVENT_ROBO_SUCCEEDED"/>
  <int value="2" label="AUTH_EVENT_ROBO_FAILED"/>
  <int value="3" label="AUTH_EVENT_ROBO_JSON_ERROR"/>
  <int value="4" label="AUTH_EVENT_ROBO_AUTH_ERROR"/>
  <int value="5" label="AUTH_EVENT_AUTH_WITH_TOKEN"/>
  <int value="6" label="AUTH_EVENT_AUTH_WITH_CODE"/>
  <int value="7" label="AUTH_EVENT_TOKEN_RESPONSE"/>
  <int value="8" label="AUTH_EVENT_REFRESH_REQUEST"/>
  <int value="9" label="AUTH_EVENT_REFRESH_RESPONSE"/>
  <int value="10" label="AUTH_EVENT_AUTH_ERROR"/>
  <int value="11" label="AUTH_EVENT_NET_ERROR"/>
</enum>

<enum name="CloudPrintJobHandlerEventType" type="int">
  <int value="0" label="JOB_HANDLER_CHECK_FOR_JOBS"/>
  <int value="1" label="JOB_HANDLER_START"/>
  <int value="2" label="JOB_HANDLER_PENDING_TASK"/>
  <int value="3" label="JOB_HANDLER_PRINTER_UPDATE"/>
  <int value="4" label="JOB_HANDLER_JOB_CHECK"/>
  <int value="5" label="JOB_HANDLER_JOB_STARTED"/>
  <int value="6" label="JOB_HANDLER_VALID_TICKET"/>
  <int value="7" label="JOB_HANDLER_DATA"/>
  <int value="8" label="JOB_HANDLER_SET_IN_PROGRESS"/>
  <int value="9" label="JOB_HANDLER_SET_START_PRINTING"/>
  <int value="10" label="JOB_HANDLER_START_SPOOLING"/>
  <int value="11" label="JOB_HANDLER_SPOOLED"/>
  <int value="12" label="JOB_HANDLER_JOB_COMPLETED"/>
  <int value="13" label="JOB_HANDLER_INVALID_TICKET"/>
  <int value="14" label="JOB_HANDLER_INVALID_DATA"/>
</enum>

<enum name="CloudPrintJobStatusType" type="int">
  <int value="0" label="JOB_SUCCESS"/>
  <int value="1" label="JOB_DOWNLOAD_FAILED"/>
  <int value="2" label="JOB_VALIDATE_TICKET_FAILED"/>
  <int value="3" label="JOB_FAILED"/>
</enum>

<enum name="CloudPrintNativeJobStatusType" type="int">
  <int value="0" label="PRINT_JOB_STATUS_INVALID"/>
  <int value="1" label="PRINT_JOB_STATUS_IN_PROGRESS"/>
  <int value="2" label="PRINT_JOB_STATUS_ERROR"/>
  <int value="3" label="PRINT_JOB_STATUS_COMPLETED"/>
</enum>

<enum name="CloudPrintUrlFetcherRequestType" type="int">
  <int value="0" label="REQUEST_AUTH_CODE"/>
  <int value="1" label="REQUEST_REGISTER"/>
  <int value="2" label="REQUEST_UNREGISTER"/>
  <int value="3" label="REQUEST_UPDATE_PRINTER"/>
  <int value="4" label="REQUEST_UPDATE_JOB"/>
  <int value="5" label="REQUEST_USER_MESSAGE"/>
  <int value="6" label="REQUEST_TICKET"/>
  <int value="7" label="REQUEST_DATA"/>
  <int value="8" label="REQUEST_JOB_FETCH"/>
</enum>

<enum name="CoalescePotentialPackets" type="int">
  <int value="0" label="No Advantage"/>
  <int value="1" label="Header packets Only"/>
  <int value="30" label="More Than 30"/>
</enum>

<enum name="CombinedHttpResponseAndNetErrorCode" type="int">
<!-- Generated from net/base/net_error_list.h -->

  <int value="-806" label="DNS_SORT_ERROR"/>
  <int value="-805" label="DNS_SEARCH_EMPTY"/>
  <int value="-804" label="DNS_CACHE_MISS"/>
  <int value="-803" label="DNS_TIMED_OUT"/>
  <int value="-802" label="DNS_SERVER_FAILED"/>
  <int value="-801" label="DNS_SERVER_REQUIRES_TCP"/>
  <int value="-800" label="DNS_MALFORMED_RESPONSE"/>
  <int value="-715" label="CHANNEL_ID_IMPORT_FAILED"/>
  <int value="-714" label="CERT_DATABASE_CHANGED"/>
  <int value="-713" label="SELF_SIGNED_CERT_GENERATION_FAILED"/>
  <int value="-712" label="PRIVATE_KEY_EXPORT_FAILED"/>
  <int value="-711" label="ORIGIN_BOUND_CERT_GENERATION_FAILED"/>
  <int value="-710" label="KEY_GENERATION_FAILED"/>
  <int value="-709" label="PKCS12_IMPORT_UNSUPPORTED"/>
  <int value="-708" label="PKCS12_IMPORT_INVALID_FILE"/>
  <int value="-707" label="PKCS12_IMPORT_INVALID_MAC"/>
  <int value="-706" label="IMPORT_SERVER_CERT_FAILED"/>
  <int value="-705" label="IMPORT_CA_CERT_FAILED"/>
  <int value="-704" label="IMPORT_CERT_ALREADY_EXISTS"/>
  <int value="-703" label="IMPORT_CA_CERT_NOT_CA"/>
  <int value="-702" label="PKCS12_IMPORT_FAILED"/>
  <int value="-701" label="PKCS12_IMPORT_BAD_PASSWORD"/>
  <int value="-607" label="FTP_BAD_COMMAND_SEQUENCE"/>
  <int value="-606" label="FTP_COMMAND_NOT_SUPPORTED"/>
  <int value="-605" label="FTP_SYNTAX_ERROR"/>
  <int value="-604" label="FTP_FILE_BUSY"/>
  <int value="-603" label="FTP_TRANSFER_ABORTED"/>
  <int value="-602" label="FTP_SERVICE_UNAVAILABLE"/>
  <int value="-601" label="FTP_FAILED"/>
  <int value="-503" label="ADD_USER_CERT_FAILED"/>
  <int value="-502" label="NO_PRIVATE_KEY_FOR_CERT"/>
  <int value="-501" label="INSECURE_RESPONSE"/>
  <int value="-410" label="CACHE_AUTH_FAILURE_AFTER_READ"/>
  <int value="-409" label="CACHE_LOCK_TIMEOUT"/>
  <int value="-408" label="CACHE_CHECKSUM_MISMATCH"/>
  <int value="-407" label="CACHE_CHECKSUM_READ_FAILURE"/>
  <int value="-406" label="CACHE_RACE"/>
  <int value="-405" label="CACHE_CREATE_FAILURE"/>
  <int value="-404" label="CACHE_OPEN_FAILURE"/>
  <int value="-403" label="CACHE_OPERATION_NOT_SUPPORTED"/>
  <int value="-402" label="CACHE_WRITE_FAILURE"/>
  <int value="-401" label="CACHE_READ_FAILURE"/>
  <int value="-400" label="CACHE_MISS"/>
  <int value="-369" label="TEMPORARY_BACKOFF"/>
  <int value="-368" label="ALTERNATIVE_CERT_NOT_VALID_FOR_ORIGIN"/>
  <int value="-367" label="PAC_SCRIPT_TERMINATED"/>
  <int value="-366" label="PROXY_HTTP_1_1_REQUIRED"/>
  <int value="-365" label="HTTP_1_1_REQUIRED"/>
  <int value="-364" label="PROXY_AUTH_REQUESTED_WITH_NO_CONNECTION"/>
  <int value="-363" label="SPDY_COMPRESSION_ERROR"/>
  <int value="-362" label="SPDY_FRAME_SIZE_ERROR"/>
  <int value="-361" label="SPDY_FLOW_CONTROL_ERROR"/>
  <int value="-360" label="SPDY_INADEQUATE_TRANSPORT_SECURITY"/>
  <int value="-359" label="REQUEST_FOR_SECURE_RESOURCE_OVER_INSECURE_QUIC"/>
  <int value="-358" label="QUIC_HANDSHAKE_FAILED"/>
  <int value="-357" label="RESPONSE_HEADERS_TRUNCATED"/>
  <int value="-356" label="QUIC_PROTOCOL_ERROR"/>
  <int value="-355" label="INCOMPLETE_CHUNKED_ENCODING"/>
  <int value="-354" label="CONTENT_LENGTH_MISMATCH"/>
  <int value="-352" label="SPDY_PING_FAILED"/>
  <int value="-351" label="SPDY_SERVER_REFUSED_STREAM"/>
  <int value="-350" label="RESPONSE_HEADERS_MULTIPLE_LOCATION"/>
  <int value="-349" label="RESPONSE_HEADERS_MULTIPLE_CONTENT_DISPOSITION"/>
  <int value="-348" label="PAC_NOT_IN_DHCP"/>
  <int value="-347" label="INCOMPLETE_SPDY_HEADERS"/>
  <int value="-346" label="RESPONSE_HEADERS_MULTIPLE_CONTENT_LENGTH"/>
  <int value="-345" label="RESPONSE_BODY_TOO_BIG_TO_DRAIN"/>
  <int value="-344" label="UNDOCUMENTED_SECURITY_LIBRARY_STATUS"/>
  <int value="-343" label="MISCONFIGURED_AUTH_ENVIRONMENT"/>
  <int value="-342" label="UNEXPECTED_SECURITY_LIBRARY_STATUS"/>
  <int value="-341" label="MISSING_AUTH_CREDENTIALS"/>
  <int value="-340" label="ENCODING_DETECTION_FAILED"/>
  <int value="-339" label="UNSUPPORTED_AUTH_SCHEME"/>
  <int value="-338" label="INVALID_AUTH_CREDENTIALS"/>
  <int value="-337" label="SPDY_PROTOCOL_ERROR"/>
  <int value="-336" label="NO_SUPPORTED_PROXIES"/>
  <int value="-335" label="INVALID_SPDY_STREAM"/>
  <int value="-334" label="UNRECOGNIZED_FTP_DIRECTORY_LISTING_FORMAT"/>
  <int value="-333" label="ENCODING_CONVERSION_FAILED"/>
  <int value="-332" label="SYN_REPLY_NOT_RECEIVED"/>
  <int value="-331" label="NETWORK_IO_SUSPENDED"/>
  <int value="-330" label="CONTENT_DECODING_FAILED"/>
  <int value="-329" label="MALFORMED_IDENTITY"/>
  <int value="-328" label="REQUEST_RANGE_NOT_SATISFIABLE"/>
  <int value="-327" label="PAC_SCRIPT_FAILED"/>
  <int value="-326" label="PAC_STATUS_NOT_OK"/>
  <int value="-325" label="RESPONSE_HEADERS_TOO_BIG"/>
  <int value="-324" label="EMPTY_RESPONSE"/>
  <int value="-323" label="UNEXPECTED_PROXY_AUTH"/>
  <int value="-322" label="METHOD_NOT_SUPPORTED"/>
  <int value="-321" label="INVALID_CHUNKED_ENCODING"/>
  <int value="-320" label="INVALID_RESPONSE"/>
  <int value="-312" label="UNSAFE_PORT"/>
  <int value="-311" label="UNSAFE_REDIRECT"/>
  <int value="-310" label="TOO_MANY_REDIRECTS"/>
  <int value="-302" label="UNKNOWN_URL_SCHEME"/>
  <int value="-301" label="DISALLOWED_URL_SCHEME"/>
  <int value="-300" label="INVALID_URL"/>
  <int value="-214" label="CERT_END"/>
  <int value="-213" label="CERT_VALIDITY_TOO_LONG"/>
  <int value="-212" label="CERT_NAME_CONSTRAINT_VIOLATION"/>
  <int value="-211" label="CERT_WEAK_KEY"/>
  <int value="-210" label="CERT_NON_UNIQUE_NAME"/>
  <int value="-208" label="CERT_WEAK_SIGNATURE_ALGORITHM"/>
  <int value="-207" label="CERT_INVALID"/>
  <int value="-206" label="CERT_REVOKED"/>
  <int value="-205" label="CERT_UNABLE_TO_CHECK_REVOCATION"/>
  <int value="-204" label="CERT_NO_REVOCATION_MECHANISM"/>
  <int value="-203" label="CERT_CONTAINS_ERRORS"/>
  <int value="-202" label="CERT_AUTHORITY_INVALID"/>
  <int value="-201" label="CERT_DATE_INVALID"/>
  <int value="-200" label="CERT_COMMON_NAME_INVALID"/>
  <int value="-171" label="CT_CONSISTENCY_PROOF_PARSING_FAILED"/>
  <int value="-170" label="UNABLE_TO_REUSE_CONNECTION_FOR_PROXY_AUTH"/>
  <int value="-169" label="CT_STH_INCOMPLETE"/>
  <int value="-168" label="CT_STH_PARSING_FAILED"/>
  <int value="-167" label="SSL_SERVER_CERT_BAD_FORMAT"/>
  <int value="-166" label="ICANN_NAME_COLLISION"/>
  <int value="-165" label="SSL_FALLBACK_BEYOND_MINIMUM_VERSION"/>
  <int value="-164" label="SSL_CLIENT_AUTH_CERT_BAD_FORMAT"/>
  <int value="-163" label="SOCKET_SEND_BUFFER_SIZE_UNCHANGEABLE"/>
  <int value="-162" label="SOCKET_RECEIVE_BUFFER_SIZE_UNCHANGEABLE"/>
  <int value="-161" label="SOCKET_SET_SEND_BUFFER_SIZE_ERROR"/>
  <int value="-160" label="SOCKET_SET_RECEIVE_BUFFER_SIZE_ERROR"/>
  <int value="-159" label="SSL_UNRECOGNIZED_NAME_ALERT"/>
  <int value="-158" label="CT_NO_SCTS_VERIFIED_OK"/>
  <int value="-157" label="SSL_INAPPROPRIATE_FALLBACK"/>
  <int value="-156" label="SSL_SERVER_CERT_CHANGED"/>
  <int value="-154" label="WS_THROTTLE_QUEUE_TOO_LARGE"/>
  <int value="-153" label="SSL_DECRYPT_ERROR_ALERT"/>
  <int value="-152" label="ORIGIN_BOUND_CERT_GENERATION_TYPE_MISMATCH"/>
  <int value="-151" label="CLIENT_AUTH_CERT_TYPE_UNSUPPORTED"/>
  <int value="-150" label="SSL_PINNED_KEY_NOT_IN_CERT_CHAIN"/>
  <int value="-149" label="SSL_BAD_PEER_PUBLIC_KEY"/>
  <int value="-148" label="SSL_HANDSHAKE_NOT_COMPLETED"/>
  <int value="-147" label="ADDRESS_IN_USE"/>
  <int value="-145" label="WS_PROTOCOL_ERROR"/>
  <int value="-143" label="SPDY_SESSION_ALREADY_EXISTS"/>
  <int value="-142" label="MSG_TOO_BIG"/>
  <int value="-141" label="SSL_CLIENT_AUTH_SIGNATURE_FAILED"/>
  <int value="-140" label="HTTPS_PROXY_TUNNEL_RESPONSE"/>
  <int value="-139" label="TEMPORARILY_THROTTLED"/>
  <int value="-138" label="NETWORK_ACCESS_DENIED"/>
  <int value="-137" label="NAME_RESOLUTION_FAILED"/>
  <int value="-136" label="PROXY_CERTIFICATE_INVALID"/>
  <int value="-135" label="SSL_CLIENT_AUTH_CERT_NO_PRIVATE_KEY"/>
  <int value="-134" label="SSL_CLIENT_AUTH_PRIVATE_KEY_ACCESS_DENIED"/>
  <int value="-133" label="PRECONNECT_MAX_SOCKET_LIMIT"/>
  <int value="-131" label="MANDATORY_PROXY_CONFIGURATION_FAILED"/>
  <int value="-130" label="PROXY_CONNECTION_FAILED"/>
  <int value="-129" label="SSL_WEAK_SERVER_EPHEMERAL_DH_KEY"/>
  <int value="-128" label="SSL_UNSAFE_NEGOTIATION"/>
  <int value="-127" label="PROXY_AUTH_REQUESTED"/>
  <int value="-126" label="SSL_BAD_RECORD_MAC_ALERT"/>
  <int value="-125" label="SSL_DECOMPRESSION_FAILURE_ALERT"/>
  <int value="-124" label="WINSOCK_UNEXPECTED_WRITTEN_BYTES"/>
  <int value="-123" label="SSL_NO_RENEGOTIATION"/>
  <int value="-122" label="NPN_NEGOTIATION_FAILED"/>
  <int value="-121" label="SOCKS_CONNECTION_HOST_UNREACHABLE"/>
  <int value="-120" label="SOCKS_CONNECTION_FAILED"/>
  <int value="-119" label="HOST_RESOLVER_QUEUE_TOO_LARGE"/>
  <int value="-118" label="CONNECTION_TIMED_OUT"/>
  <int value="-117" label="BAD_SSL_CLIENT_AUTH_CERT"/>
  <int value="-116" label="CERT_ERROR_IN_SSL_RENEGOTIATION"/>
  <int value="-115" label="PROXY_AUTH_UNSUPPORTED"/>
  <int value="-114" label="SSL_RENEGOTIATION_REQUESTED"/>
  <int value="-113" label="SSL_VERSION_OR_CIPHER_MISMATCH"/>
  <int value="-112" label="NO_SSL_VERSIONS_ENABLED"/>
  <int value="-111" label="TUNNEL_CONNECTION_FAILED"/>
  <int value="-110" label="SSL_CLIENT_AUTH_CERT_NEEDED"/>
  <int value="-109" label="ADDRESS_UNREACHABLE"/>
  <int value="-108" label="ADDRESS_INVALID"/>
  <int value="-107" label="SSL_PROTOCOL_ERROR"/>
  <int value="-106" label="INTERNET_DISCONNECTED"/>
  <int value="-105" label="NAME_NOT_RESOLVED"/>
  <int value="-104" label="CONNECTION_FAILED"/>
  <int value="-103" label="CONNECTION_ABORTED"/>
  <int value="-102" label="CONNECTION_REFUSED"/>
  <int value="-101" label="CONNECTION_RESET"/>
  <int value="-100" label="CONNECTION_CLOSED"/>
  <int value="-27" label="BLOCKED_BY_RESPONSE"/>
  <int value="-26" label="CONTEXT_SHUT_DOWN"/>
  <int value="-25" label="UPLOAD_STREAM_REWIND_NOT_SUPPORTED"/>
  <int value="-24" label="BLOCKED_ENROLLMENT_CHECK_PENDING"/>
  <int value="-23" label="SOCKET_IS_CONNECTED"/>
  <int value="-22" label="BLOCKED_BY_ADMINISTRATOR"/>
  <int value="-21" label="NETWORK_CHANGED"/>
  <int value="-20" label="BLOCKED_BY_CLIENT"/>
  <int value="-19" label="FILE_VIRUS_INFECTED"/>
  <int value="-18" label="FILE_NO_SPACE"/>
  <int value="-17" label="FILE_PATH_TOO_LONG"/>
  <int value="-16" label="FILE_EXISTS"/>
  <int value="-15" label="SOCKET_NOT_CONNECTED"/>
  <int value="-14" label="UPLOAD_FILE_CHANGED"/>
  <int value="-13" label="OUT_OF_MEMORY"/>
  <int value="-12" label="INSUFFICIENT_RESOURCES"/>
  <int value="-11" label="NOT_IMPLEMENTED"/>
  <int value="-10" label="ACCESS_DENIED"/>
  <int value="-9" label="UNEXPECTED"/>
  <int value="-8" label="FILE_TOO_BIG"/>
  <int value="-7" label="TIMED_OUT"/>
  <int value="-6" label="FILE_NOT_FOUND"/>
  <int value="-5" label="INVALID_HANDLE"/>
  <int value="-4" label="INVALID_ARGUMENT"/>
  <int value="-3" label="ABORTED"/>
  <int value="-2" label="FAILED"/>
  <int value="-1" label="IO_PENDING"/>
  <int value="100" label="100: Continue"/>
  <int value="101" label="101: Switching Protocols"/>
  <int value="200" label="200: OK"/>
  <int value="201" label="201: Created"/>
  <int value="202" label="202: Accepted"/>
  <int value="203" label="203: Non-Authoritative Information"/>
  <int value="204" label="204: No Content"/>
  <int value="205" label="205: Reset Content"/>
  <int value="206" label="206: Partial Content"/>
  <int value="300" label="300: Multiple Choices"/>
  <int value="301" label="301: Moved Permanently"/>
  <int value="302" label="302: Found"/>
  <int value="303" label="303: See Other"/>
  <int value="304" label="304: Not Modified"/>
  <int value="305" label="305: Use Proxy"/>
  <int value="306" label="306: (Unused)"/>
  <int value="307" label="307: Temporary Redirect"/>
  <int value="400" label="400: Bad Request"/>
  <int value="401" label="401: Unauthorized"/>
  <int value="402" label="402: Payment Required"/>
  <int value="403" label="403: Forbidden"/>
  <int value="404" label="404: Not Found"/>
  <int value="405" label="405: Method Not Allowed"/>
  <int value="406" label="406: Not Acceptable"/>
  <int value="407" label="407: Proxy Authentication Required"/>
  <int value="408" label="408: Request Timeout"/>
  <int value="409" label="409: Conflict"/>
  <int value="410" label="410: Gone"/>
  <int value="411" label="411: Length Required"/>
  <int value="412" label="412: Precondition Failed"/>
  <int value="413" label="413: Request Entity Too Large"/>
  <int value="414" label="414: Request-URI Too Long"/>
  <int value="415" label="415: Unsupported Media Type"/>
  <int value="416" label="416: Requested Range Not Satisfiable"/>
  <int value="417" label="417: Expectation Failed"/>
  <int value="500" label="500: Internal Server Error"/>
  <int value="501" label="501: Not Implemented"/>
  <int value="502" label="502: Bad Gateway"/>
  <int value="503" label="503: Service Unavailable"/>
  <int value="504" label="504: Gateway Timeout"/>
  <int value="505" label="505: HTTP Version Not Supported"/>
</enum>

<enum name="CommittedLoadEvent" type="int">
  <obsolete>
    Deprecated in favor of PageLoad.Timing2.NavigationToCommit and
    PageLoad.AbortTiming.
  </obsolete>
  <int value="0" label="Committed load started"/>
  <int value="1" label="Committed load failed before first layout"/>
  <int value="2" label="Successful first layout"/>
</enum>

<enum name="ComponentUpdaterCalls" type="int">
  <int value="0" label="Install"/>
  <int value="1" label="Update"/>
</enum>

<enum name="CompositedScrolling" type="int">
  <int value="0" label="Is scrollable area"/>
  <int value="1" label="Needs to be stacking container"/>
  <int value="2" label="Will use composited scrolling"/>
</enum>

<enum name="CompositorScrollResult" type="int">
  <int value="0" label="ScrollOnMainThread"/>
  <int value="1" label="ScrollStarted"/>
  <int value="2" label="ScrollIgnored"/>
  <int value="3" label="ScrollUnknown"/>
</enum>

<enum name="CompositorType" type="int">
  <int value="0" label="Software compositor"/>
  <int value="1" label="GPU compositor"/>
</enum>

<enum name="CompressibleStringCountType" type="int">
  <int value="0" label="Compressed in a background tab"/>
  <int value="1" label="Decompressed in a background or a foreground tab"/>
</enum>

<enum name="ComputeCurrentSigninStatus" type="int">
  <int value="0" label="Tried to compute current signin status."/>
  <int value="1" label="Error: No profiles found."/>
  <int value="2" label="No opened browser found."/>
  <int value="3" label="User signed in when the signin status is unknown."/>
  <int value="4" label="User signed out when the signin status is unknown."/>
  <int value="5" label="Try to override the status when its valus is error."/>
</enum>

<enum name="ConnectionDiagnosticsIssue" type="int">
  <int value="0" label="IP collision detected."/>
  <int value="1" label="Routing problem detected."/>
  <int value="2" label="HTTP issues or broken portal."/>
  <int value="3"
      label="DNS servers sending invalid responses -- might be misconfigured."/>
  <int value="4" label="DNS servers pingable but not responding to requests."/>
  <int value="5" label="No DNS servers configured for this connection."/>
  <int value="6" label="All configured DNS server addresses are invalid."/>
  <int value="7" label="No connection issue detected."/>
  <int value="8" label="Trapped in captive portal."/>
  <int value="9" label="Gateway issue or upstream connectivity problem."/>
  <int value="10"
      label="Gateway appears to be on network, but is not pingable."/>
  <int value="11"
      label="Web server appears to be on network, but is not pingable."/>
  <int value="12" label="No ARP entry for the gateway."/>
  <int value="13" label="No ARP entry for the webserver."/>
  <int value="14" label="Internal failure in connection diagnostics."/>
  <int value="15" label="No neighbor table entry for the gateway."/>
  <int value="16" label="No neighbor table entry for the web server."/>
  <int value="17"
      label="Neighbor table entry for the gateway not in a connected state."/>
  <int value="18"
      label="Neighbor table entry for the web server not in a connected
             state."/>
  <int value="19" label="Placeholder 1."/>
  <int value="20" label="Placeholder 2."/>
  <int value="21" label="Placeholder 3."/>
  <int value="22" label="Placeholder 4."/>
</enum>

<enum name="ConnectionFailureReason" type="int">
  <int value="0" label="Unknown"/>
  <int value="1" label="Bad Passphrase"/>
  <int value="2" label="Bad WEP Key"/>
  <int value="3" label="Failed to Connect"/>
  <int value="4" label="DHCP Failure"/>
  <int value="5" label="DNS Lookup Failure"/>
  <int value="6" label="EAP Authentication"/>
  <int value="7" label="EAP Local TLS"/>
  <int value="8" label="EAP Remote TLS"/>
  <int value="9" label="Out-of-range"/>
  <int value="10" label="Pin Missing"/>
</enum>

<enum name="ConnectionInfo" type="int">
  <summary>
    Application protocol used for HTTP response as defined in
    net::HttpResponseInfo::ConnectionInfo.
  </summary>
  <int value="0" label="unknown"/>
  <int value="1" label="HTTP/0.9, HTTP/1.0, or HTTP/1.1"/>
  <int value="2" label="SPDY/2 (deprecated)"/>
  <int value="3" label="SPDY/3"/>
  <int value="4" label="HTTP/2"/>
  <int value="5" label="QUIC"/>
  <int value="6" label="HTTP/2 draft-14"/>
  <int value="7" label="HTTP/2 draft-15"/>
</enum>

<enum name="ConnectionResult" type="int">
  <int value="0" label="Success"/>
  <int value="1" label="Failure"/>
  <int value="2" label="Aborted"/>
</enum>

<enum name="ConnectionStatus" type="int">
  <int value="0" label="Offline"/>
  <int value="1" label="Connected"/>
  <int value="2" label="Online"/>
</enum>

<enum name="ConnectionSubtype" type="int">
  <int value="0" label="UNKNOWN"/>
  <int value="1" label="NONE"/>
  <int value="2" label="OTHER"/>
  <int value="3" label="GSM"/>
  <int value="4" label="IDEN"/>
  <int value="5" label="CDMA"/>
  <int value="6" label="1XRTT"/>
  <int value="7" label="GPRS"/>
  <int value="8" label="EDGE"/>
  <int value="9" label="UMTS"/>
  <int value="10" label="EVDO_REV_0"/>
  <int value="11" label="EVDO_REV_A"/>
  <int value="12" label="HSPA"/>
  <int value="13" label="EVDO_REV_B"/>
  <int value="14" label="HSDPA"/>
  <int value="15" label="HSUPA"/>
  <int value="16" label="EHRPD"/>
  <int value="17" label="HSPAP"/>
  <int value="18" label="LTE"/>
  <int value="19" label="LTE_ADVANCED"/>
  <int value="20" label="BLUETOOTH_1_2"/>
  <int value="21" label="BLUETOOTH_2_1"/>
  <int value="22" label="BLUETOOTH_3_0"/>
  <int value="23" label="BLUETOOTH_4_0"/>
  <int value="24" label="ETHERNET"/>
  <int value="25" label="FAST_ETHERNET"/>
  <int value="26" label="GIGABIT_ETHERNET"/>
  <int value="27" label="10_GIGABIT_ETHERNET"/>
  <int value="28" label="WIFI_B"/>
  <int value="29" label="WIFI_G"/>
  <int value="30" label="WIFI_N"/>
  <int value="31" label="WIFI_AC"/>
  <int value="32" label="WIFI_AD"/>
</enum>

<enum name="ConnectionType" type="int">
  <summary>
    Connection type as defined in net/base/connection_type_histograms.h
  </summary>
  <int value="0" label="Any">Any connection (SSL, HTTP, SPDY, etc.)</int>
  <int value="1" label="SSL">An SSL connection</int>
  <int value="2" label="SSL-MD5">
    An SSL connection with an MD5 certificate in the certificate chain
    (excluding root)
  </int>
  <int value="3" label="SSL-MD2">
    An SSL connection with an MD2 certificate in the certificate chain
    (excluding root)
  </int>
  <int value="4" label="SSL-MD4">
    An SSL connection with an MD4 certificate in the certificate chain
    (excluding root)
  </int>
  <int value="5" label="SSL-MD5(CA)">
    An SSL connection with an MD5 CA certificate in the certificate chain
    (excluding root)
  </int>
  <int value="6" label="SSL-MD2(CA)">
    An SSL connection with an MD2 CA certificate in the cerfificate chain
    (excluding root)
  </int>
  <int value="7" label="HTTP">An HTTP connection</int>
  <int value="8" label="SPDY">A SPDY connection</int>
  <int value="9" label="SSL-2.0">An SSL connection that uses SSL 2.0</int>
  <int value="10" label="SSL-3.0">An SSL connection that uses SSL 3.0</int>
  <int value="11" label="TLS-1.0">An SSL connection that uses TLS 1.0</int>
  <int value="12" label="TLS-1.1">An SSL connection that uses TLS 1.1</int>
  <int value="13" label="TLS-1.2">An SSL connection that uses TLS 1.2</int>
</enum>

<enum name="ConnectivityDiagnosticsTestVerdict" type="int">
  <int value="0" label="NO_PROBLEM"/>
  <int value="1" label="POTENTIAL_PROBLEM"/>
  <int value="2" label="PROBLEM"/>
  <int value="3" label="TEST_FAILURE_OCCURRED"/>
  <int value="4" label="TEST_NOT_RUN"/>
</enum>

<enum name="ContentResourceType" type="int">
  <obsolete>
    Superseded by ContentResourceType in December 2015 when SUB_RESOURCE was
    split into RESOURCE_TYPE_SUB_RESOURCE and RESOURCE_TYPE_PLUGIN_RESOURCE, and
    PING was split into RESOURCE_TYPE_PING and RESOURCE_TYPE_CSP_REPORT.
  </obsolete>
  <int value="0" label="MAIN_FRAME"/>
  <int value="1" label="SUB_FRAME"/>
  <int value="2" label="STYLESHEET"/>
  <int value="3" label="SCRIPT"/>
  <int value="4" label="IMAGE"/>
  <int value="5" label="FONT_RESOURCE"/>
  <int value="6" label="SUB_RESOURCE"/>
  <int value="7" label="OBJECT"/>
  <int value="8" label="MEDIA"/>
  <int value="9" label="WORKER"/>
  <int value="10" label="SHARED_WORKER"/>
  <int value="11" label="PREFETCH"/>
  <int value="12" label="FAVICON"/>
  <int value="13" label="XHR"/>
  <int value="14" label="PING"/>
  <int value="15" label="RESOURCE_TYPE_SERVICE_WORKER"/>
</enum>

<enum name="ContentResourceType2" type="int">
  <int value="0" label="RESOURCE_TYPE_MAIN_FRAME"/>
  <int value="1" label="RESOURCE_TYPE_SUB_FRAME"/>
  <int value="2" label="RESOURCE_TYPE_STYLESHEET"/>
  <int value="3" label="RESOURCE_TYPE_SCRIPT"/>
  <int value="4" label="RESOURCE_TYPE_IMAGE"/>
  <int value="5" label="RESOURCE_TYPE_FONT_RESOURCE"/>
  <int value="6" label="RESOURCE_TYPE_SUB_RESOURCE"/>
  <int value="7" label="RESOURCE_TYPE_OBJECT"/>
  <int value="8" label="RESOURCE_TYPE_MEDIA"/>
  <int value="9" label="RESOURCE_TYPE_WORKER"/>
  <int value="10" label="RESOURCE_TYPE_SHARED_WORKER"/>
  <int value="11" label="RESOURCE_TYPE_PREFETCH"/>
  <int value="12" label="RESOURCE_TYPE_FAVICON"/>
  <int value="13" label="RESOURCE_TYPE_XHR"/>
  <int value="14" label="RESOURCE_TYPE_PING"/>
  <int value="15" label="RESOURCE_TYPE_SERVICE_WORKER"/>
  <int value="16" label="RESOURCE_TYPE_CSP_REPORT"/>
  <int value="17" label="RESOURCE_TYPE_PLUGIN_RESOURCE"/>
</enum>

<enum name="ContentSetting" type="int">
  <int value="0" label="DEFAULT"/>
  <int value="1" label="ALLOW"/>
  <int value="2" label="BLOCK"/>
  <int value="3" label="ASK"/>
  <int value="4" label="SESSION_ONLY"/>
  <int value="5" label="DETECT_IMPORTANT_CONTENT"/>
</enum>

<enum name="ContentSettingMixedScriptAction" type="int">
  <int value="0" label="Displayed shield"/>
  <int value="1" label="Displayed bubble"/>
  <int value="2" label="Clicked 'Load unsafe scripts'"/>
  <int value="3" label="Clicked 'Learn more'"/>
</enum>

<enum name="ContentType" type="int">
  <int value="-1" label="Invalid setting"/>
  <int value="0" label="Cookies setting"/>
  <int value="1" label="Images setting"/>
  <int value="2" label="JavaScript setting"/>
  <int value="3" label="Plugins setting"/>
  <int value="4" label="Popups setting"/>
  <int value="5" label="Location setting"/>
  <int value="6" label="Notifications setting"/>
  <int value="7" label="Auto Select Cert setting"/>
  <int value="8" label="Fullscreen setting"/>
  <int value="9" label="Mouselock setting"/>
  <int value="10" label="Mixed Script setting"/>
  <int value="11" label="Media setting (default for mic and camera)"/>
  <int value="12" label="Media setting (mic)"/>
  <int value="13" label="Media setting (camera)"/>
  <int value="14" label="Protocol Handler setting"/>
  <int value="15" label="PPAPI Broker setting"/>
  <int value="16" label="Automatic downloads setting"/>
  <int value="17" label="MIDI sysex setting"/>
  <int value="18" label="Push messaging setting"/>
  <int value="19" label="SSL Certificate Decisions setting"/>
  <int value="20" label="Metro switch-to-desktop setting (Windows only)"/>
  <int value="21"
      label="Protected media identifier setting (Android/ChromeOS only)"/>
  <int value="22" label="App banner setting (Android only)"/>
  <int value="23" label="Site engagement setting"/>
  <int value="24" label="Durable storage setting"/>
  <int value="25" label="Key generation setting"/>
  <int value="26" label="Background sync setting"/>
</enum>

<enum name="ContextLostReason" type="int">
  <summary>The reason for losing a GPU context.</summary>
  <int value="0" label="CONTEXT_INIT_FAILED"/>
  <int value="1" label="CONTEXT_LOST_GPU_CHANNEL_ERROR"/>
  <int value="2" label="CONTEXT_PARSE_ERROR_INVALID_SIZE"/>
  <int value="3" label="CONTEXT_PARSE_ERROR_OUT_OF_BOUNDS"/>
  <int value="4" label="CONTEXT_PARSE_ERROR_UNKNOWN_COMMAND"/>
  <int value="5" label="CONTEXT_PARSE_ERROR_INVALID_ARGS"/>
  <int value="6" label="CONTEXT_PARSE_ERROR_GENERIC_ERROR"/>
  <int value="7" label="CONTEXT_LOST_GUILTY"/>
  <int value="8" label="CONTEXT_LOST_INNOCENT"/>
  <int value="9" label="CONTEXT_LOST_UNKNOWN"/>
  <int value="10" label="CONTEXT_LOST_OUT_OF_MEMORY"/>
  <int value="11" label="CONTEXT_LOST_MAKECURRENT_FAILED"/>
  <int value="12" label="CONTEXT_LOST_INVALID_GPU_MESSAGE"/>
</enum>

<enum name="ContextMenuOption" type="int">
  <summary>The item selected from a context menu</summary>
  <int value="0" label="Open in new tab"/>
  <int value="1" label="Open in incognito tab"/>
  <int value="2" label="Copy link address"/>
  <int value="3" label="Copy email address"/>
  <int value="4" label="Copy link text"/>
  <int value="5" label="Save link"/>
  <int value="6" label="Save image"/>
  <int value="7" label="Open image"/>
  <int value="8" label="Open image in new tab"/>
  <int value="9" label="Copy image"/>
  <int value="10" label="Copy image URL"/>
  <int value="11" label="Search by image"/>
  <int value="12" label="Load images"/>
  <int value="13" label="Load original image"/>
  <int value="14" label="Save video"/>
  <int value="15" label="Open link in a new window"/>
  <int value="16" label="Print"/>
  <int value="17" label="Search web for..."/>
  <int value="18" label="Save media as"/>
  <int value="19" label="Share image"/>
  <int value="20" label="Open in new/other window"/>
</enum>

<enum name="ContextMenuSaveLinkType" type="int">
  <summary>
    The content type when user chooses save link context menu option
  </summary>
  <int value="0" label="Unknown"/>
  <int value="1" label="Text"/>
  <int value="2" label="Image"/>
  <int value="3" label="Audio"/>
  <int value="4" label="Video"/>
  <int value="5" label="Pdf"/>
</enum>

<enum name="ContextProviderPhase" type="int">
  <int value="0" label="Acquired"/>
  <int value="1" label="Released"/>
</enum>

<enum name="ContextualSearchBarOverlapSeen" type="int">
  <int value="0" label="Overlap seen from Tap"/>
  <int value="1" label="Overlap not seen from Tap"/>
  <int value="2" label="No overlap seen from Tap"/>
  <int value="3" label="No overlap not seen from Tap"/>
  <int value="4" label="Overlap seen from Longpress"/>
  <int value="5" label="Overlap not seen from Longpress"/>
  <int value="6" label="No overlap seen from Longpress"/>
  <int value="7" label="No overlap not seen from Longpress"/>
</enum>

<enum name="ContextualSearchBasePageProtocol" type="int">
  <int value="0" label="Is HTTP"/>
  <int value="1" label="Not HTTP"/>
</enum>

<enum name="ContextualSearchBlacklistSeen" type="int">
  <int value="0" label="None, Seen"/>
  <int value="1" label="None, Not Seen"/>
  <int value="2" label="Number, Seen"/>
  <int value="3" label="Number, Not Seen"/>
  <int value="4" label="Determiner, Seen"/>
  <int value="5" label="Determiner, Not Seen"/>
  <int value="6" label="Preposition, Seen"/>
  <int value="7" label="Preposition, Not Seen"/>
  <int value="8" label="Navigation, Seen"/>
  <int value="9" label="Navigation, Not Seen"/>
  <int value="10" label="Misc, Seen"/>
  <int value="11" label="Misc, Not Seen"/>
</enum>

<enum name="ContextualSearchEnterClosedStateChange" type="int">
  <int value="0" label="From Other"/>
  <int value="1" label="From Peeked (back press)"/>
  <int value="2" label="From Peeked (base page scroll)"/>
  <int value="3" label="From Peeked (text select tap)"/>
  <int value="4" label="From Expanded (back press)"/>
  <int value="5" label="From Expanded (base page tap)"/>
  <int value="6" label="From Expanded (fling)"/>
  <int value="7" label="From Maximized (back press)"/>
  <int value="8" label="From Maximized (fling)"/>
  <int value="9" label="From Maximized (tab promotion)"/>
  <int value="10" label="From Maximized (SERP navigation)"/>
</enum>

<enum name="ContextualSearchEnterExpandedStateChange" type="int">
  <int value="0" label="From Other"/>
  <int value="1" label="From Peeked (search bar tap)"/>
  <int value="2" label="From Peeked (swipe)"/>
  <int value="3" label="From Peeked (fling)"/>
  <int value="4" label="From Maximized (swipe)"/>
  <int value="5" label="From Maximized (fling)"/>
</enum>

<enum name="ContextualSearchEnterMaximizedStateChange" type="int">
  <int value="0" label="Other"/>
  <int value="1" label="From Peeked (swipe)"/>
  <int value="2" label="From Peeked (fling)"/>
  <int value="3" label="From Expanded (swipe)"/>
  <int value="4" label="From Expanded (fling)"/>
  <int value="5" label="From Expanded (SERP navigation)"/>
</enum>

<enum name="ContextualSearchEnterPeekedStateChange" type="int">
  <int value="0" label="From Other"/>
  <int value="1" label="From Closed (text select tap)"/>
  <int value="2" label="From Closed (text select long press)"/>
  <int value="3" label="From Peeked (text select tap)"/>
  <int value="4" label="From Peeked (text select long press)"/>
  <int value="5" label="From Expanded (search bar tap)"/>
  <int value="6" label="From Expanded (swipe)"/>
  <int value="7" label="From Expanded (fling)"/>
  <int value="8" label="From Maximized (swipe)"/>
  <int value="9" label="From Maximized (fling)"/>
</enum>

<enum name="ContextualSearchExitClosedStateChange" type="int">
  <int value="0" label="Other"/>
  <int value="1" label="Peek (text select tap)"/>
  <int value="2" label="Peek (text select long press)"/>
</enum>

<enum name="ContextualSearchExitExpandedStateChange" type="int">
  <int value="0" label="Other"/>
  <int value="1" label="Close (back press)"/>
  <int value="2" label="Close (base page tap)"/>
  <int value="3" label="Close (fling)"/>
  <int value="4" label="Peek (search bar tap)"/>
  <int value="5" label="Peek (swipe)"/>
  <int value="6" label="Peek (fling)"/>
  <int value="7" label="Maximize (swipe)"/>
  <int value="8" label="Maximize (fling)"/>
  <int value="9" label="Maximize (SERP navigation)"/>
</enum>

<enum name="ContextualSearchExitMaximizedStateChange" type="int">
  <int value="0" label="Other"/>
  <int value="1" label="Close (back press)"/>
  <int value="2" label="Close (fling)"/>
  <int value="3" label="Close (tab promotion)"/>
  <int value="4" label="Close (SERP navigation)"/>
  <int value="5" label="Peek (swipe)"/>
  <int value="6" label="Peek (fling)"/>
  <int value="7" label="Expand (swipe)"/>
  <int value="8" label="Expand (fling)"/>
</enum>

<enum name="ContextualSearchExitPeekedStateChange" type="int">
  <int value="0" label="Other"/>
  <int value="1" label="Close (back press)"/>
  <int value="2" label="Close (base page scroll)"/>
  <int value="3" label="Close (text select tap)"/>
  <int value="4" label="Peek (text select tap)"/>
  <int value="5" label="Peek (text select long press)"/>
  <int value="6" label="Expand (search bar tap)"/>
  <int value="7" label="Expand (swipe)"/>
  <int value="8" label="Expand (fling)"/>
  <int value="9" label="Maximize (swipe)"/>
  <int value="10" label="To Maximize (fling)"/>
</enum>

<enum name="ContextualSearchFirstRunPanelSeen" type="int">
  <int value="0" label="Seen"/>
  <int value="1" label="Unseen"/>
</enum>

<enum name="ContextualSearchIconSpriteAnimated" type="int">
  <int value="0" label="Animated, seen, from tap"/>
  <int value="1" label="Animated, not seen, from tap"/>
  <int value="2" label="Not animated, seen, from tap"/>
  <int value="3" label="Not animated, not seen, from tap"/>
  <int value="4" label="Animated, seen, from long press"/>
  <int value="5" label="Animated, not seen, from long press"/>
  <int value="6" label="Not animated, seen, from long press"/>
  <int value="7" label="Not animated, not seen, from long press"/>
</enum>

<enum name="ContextualSearchLoaded" type="int">
  <int value="0" label="Partially Loaded"/>
  <int value="1" label="Fully Loaded"/>
</enum>

<enum name="ContextualSearchOutcomeByGesture" type="int">
  <int value="0" label="Enabled, from Tap"/>
  <int value="1" label="Disabled, from Tap"/>
  <int value="2" label="Undecided from Tap"/>
  <int value="3" label="Enabled, from Long-press"/>
  <int value="4" label="Disabled, from Long-press"/>
  <int value="5" label="Undecided from Long-press"/>
</enum>

<enum name="ContextualSearchPeekPromoOutcome" type="int">
  <summary>The outcome of the Contextual Search Peek Promo.</summary>
  <int value="0" label="Peek Promo was seen, Panel was opened"/>
  <int value="1" label="Peek Promo was seen, Panel was not opened"/>
  <int value="2" label="Peek Promo was not seen, Panel was opened"/>
  <int value="3" label="Peek Promo was not seen, Panel was not opened"/>
</enum>

<enum name="ContextualSearchPreferenceState" type="int">
  <int value="0" label="Uninitialized"/>
  <int value="1" label="Enabled"/>
  <int value="2" label="Disabled"/>
</enum>

<enum name="ContextualSearchPrefetchSummary" type="int">
  <int value="0" label="Prefetched, partly loaded"/>
  <int value="1" label="Fully preloaded"/>
  <int value="2" label="Not prefetched"/>
</enum>

<enum name="ContextualSearchQuickAnswerSeen" type="int">
  <int value="0" label="Activated, answered and seen"/>
  <int value="1" label="Activated and answered but not seen"/>
  <int value="2" label="Activated, not answered but seen"/>
  <int value="3" label="Activated, not answered nor seen"/>
  <int value="4" label="Not activated but seen"/>
  <int value="5" label="Not activated nor seen"/>
</enum>

<enum name="ContextualSearchResolvedTermWords" type="int">
  <int value="0" label="Single Word"/>
  <int value="1" label="Multi Word"/>
</enum>

<enum name="ContextualSearchResultsSeen" type="int">
  <int value="0" label="Seen"/>
  <int value="1" label="Unseen"/>
</enum>

<enum name="ContextualSearchSearchRequestStatus" type="int">
  <int value="0" label="Not Failed"/>
  <int value="1" label="Failed"/>
</enum>

<enum name="ContextualSearchSeenByGesture" type="int">
  <int value="0" label="Seen, from Tap"/>
  <int value="1" label="Not seen, from Tap"/>
  <int value="2" label="Seen, from Long-press"/>
  <int value="3" label="Not seen, from Long-press"/>
</enum>

<enum name="ContextualSearchSelectionValid" type="int">
  <int value="0" label="Valid"/>
  <int value="1" label="Invalid"/>
</enum>

<enum name="ContextualSearchShouldTranslate" type="int">
  <summary>
    Notes when a translation one-box should be forced by Contextual Search.
  </summary>
  <int value="0" label="Did force a translation"/>
  <int value="1" label="Would force a translation (if not disabled)"/>
</enum>

<enum name="ContextualSearchTapSuppression" type="int">
  <int value="0" label="Tap suppressed"/>
  <int value="1" label="Tap not suppressed"/>
</enum>

<enum name="CookieDeleteEquivalent" type="int">
  <int value="0"
      label="Attempt to delete an equivalent cookie during a set cookie
             operation"/>
  <int value="1" label="Equivalent cookie to delete was found"/>
  <int value="2"
      label="Secure cookie was skipped because of strict secure cookies rules"/>
  <int value="3"
      label="Secure cookie that was skipped because of strict secure cookie
             rules would have been deleted in non-strict secure cookie case"/>
</enum>

<enum name="CookieDeletionCause" type="int">
  <summary>Reason why a cookie was removed from the cookie store</summary>
  <int value="0" label="explicit">
    The user explicitly requested that we delete a cookie
  </int>
  <int value="1" label="overwrite">
    The value of the cookie was overwritten by a new value
  </int>
  <int value="2" label="expired">The cookie expiration time passed</int>
  <int value="3" label="evicted">
    The cookie was evicted during garbage collection (replaced by
    domain_evicted/global_evicted below)
  </int>
  <int value="4" label="store_dup">
    The backing store had two copies of the cookie so one was removed (i.e.
    problems writing the backing store database)
  </int>
  <int value="5" label="dont_record">
    The cookie deletion should not be recorded because it occurred, e.g., during
    shutdown (the fact that these values showed up in the histogram is a bug,
    since fixed)
  </int>
  <int value="6" label="domain_evicted">
    The cookie was evicted during per-domain/eTLD+1 garbage collection
  </int>
  <int value="7" label="global_evicted">
    The cookie was evicted during whole store garbage collection.
  </int>
  <int value="8" label="domain_evicted_pre_safe">
    The cookie evicted during per-domain/eTLD+1 garbage collection, and would
    have been evicted by the global garbage collection process (because they
    hadn't been accessed recently enough).
  </int>
  <int value="9" label="domain_evicted_post_safe">
    The cookie evicted during per-domain/eTLD+1 garbage collection, and would
    not have been evicted by global metrics as well (because they had been
    accessed recently enough to save).
  </int>
  <int value="10" label="expired_overwrite">
    The cookie deletion occurred because the server overwrote it with an already
    expired cookie (this is a common idiom for server deletions of cookies).
  </int>
</enum>

<enum name="CookieOrCacheDeletion" type="int">
  <int value="0" label="Neither"/>
  <int value="1" label="Only cookies"/>
  <int value="2" label="Only cache"/>
  <int value="3" label="Both"/>
</enum>

<enum name="CookiePrefix" type="int">
  <int value="0" label="No special prefix"/>
  <int value="1" label="Secure prefix"/>
  <int value="2" label="Host prefix"/>
</enum>

<enum name="CookieSourceScheme" type="int">
  <int value="0" label="Secure cookie, source scheme is cryptographic"/>
  <int value="1" label="Secure cookie, source scheme is not cryptographic"/>
  <int value="2" label="Not Secure cookie, source scheme is cryptographic"/>
  <int value="3" label="Not Secure cookie, source scheme is not cryptographic"/>
</enum>

<enum name="CookieType" type="int">
  <summary>The type of a cookie when its added to the cookie store.</summary>
  <int value="0" label="Default"/>
  <int value="1" label="First-Party-Only"/>
  <int value="2" label="HttpOnly"/>
  <int value="3" label="First-Party-Only, HttpOnly"/>
  <int value="4" label="Secure"/>
  <int value="5" label="First-Party-Only, Secure"/>
  <int value="6" label="HttpOnly, Secure"/>
  <int value="7" label="First-Party-Only, HttpOnly, Secure"/>
</enum>

<enum name="CorruptExtensionDisabledReason" type="int">
  <summary>
    The reason why content verification flagged an extension as corrupted. See
    ContentVerifyJob::FailureReason in
    src/extensions/browser/content_verify_job.h.
  </summary>
  <int value="0" label="Unknown Reason"/>
  <int value="1" label="Missing All Hashes"/>
  <int value="2" label="Missing File Hash"/>
  <int value="3" label="Hash Mismatch"/>
</enum>

<enum name="CrashExitCodes" type="int">
  <int value="2" label="RESULT_CODE_HUNG"/>
  <int value="3" label="RESULT_CODE_KILLED_BAD_MESSAGE"/>
  <int value="4" label="RESULT_CODE_INVALID_CMDLINE_URL"/>
  <int value="5" label="RESULT_CODE_BAD_PROCESS_TYPE"/>
  <int value="6" label="RESULT_CODE_MISSING_DATA"/>
  <int value="7" label="RESULT_CODE_SHELL_INTEGRATION_FAILED"/>
  <int value="8" label="RESULT_CODE_MACHINE_LEVEL_INSTALL_EXISTS"/>
  <int value="9" label="RESULT_CODE_UNINSTALL_CHROME_ALIVE"/>
  <int value="10" label="RESULT_CODE_UNINSTALL_USER_CANCEL"/>
  <int value="11" label="RESULT_CODE_UNINSTALL_DELETE_PROFILE"/>
  <int value="12" label="RESULT_CODE_UNSUPPORTED_PARAM"/>
  <int value="13" label="RESULT_CODE_IMPORTER_HUNG"/>
  <int value="14" label="RESULT_CODE_RESPAWN_FAILED"/>
  <int value="15" label="RESULT_CODE_NORMAL_EXIT_EXP1"/>
  <int value="16" label="RESULT_CODE_NORMAL_EXIT_EXP2"/>
  <int value="17" label="RESULT_CODE_NORMAL_EXIT_EXP3"/>
  <int value="18" label="RESULT_CODE_NORMAL_EXIT_EXP4"/>
  <int value="19" label="RESULT_CODE_NORMAL_EXIT_CANCEL"/>
  <int value="20" label="RESULT_CODE_PROFILE_IN_USE"/>
  <int value="21" label="RESULT_CODE_PACK_EXTENSION_ERROR"/>
  <int value="22" label="RESULT_CODE_UNINSTALL_EXTENSION_ERROR"/>
  <int value="23" label="RESULT_CODE_NORMAL_EXIT_PROCESS_NOTIFIED"/>
  <int value="25" label="RESULT_CODE_INSTALL_FROM_WEBSTORE_ERROR_2"/>
  <int value="27" label="RESULT_CODE_EULA_REFUSED"/>
  <int value="28" label="RESULT_CODE_SXS_MIGRATION_FAILED"/>
  <int value="29" label="RESULT_CODE_ACTION_DISALLOWED_BY_POLICY"/>
  <int value="30" label="RESULT_CODE_INVALID_SANDBOX_STATE"/>
  <int value="7006" label="SBOX_FATAL_INTEGRITY"/>
  <int value="7007" label="SBOX_FATAL_DROPTOKEN"/>
  <int value="7008" label="SBOX_FATAL_FLUSHANDLES"/>
  <int value="7009" label="SBOX_FATAL_CACHEDISABLE"/>
  <int value="7010" label="SBOX_FATAL_CLOSEHANDLES"/>
  <int value="7011" label="SBOX_FATAL_MITIGATION"/>
  <int value="7012" label="SBOX_FATAL_MEMORY_EXCEEDED"/>
  <int value="7013" label="SBOX_FATAL_WARMUP"/>
  <int value="36862" label="Crashpad_FailedToCaptureProcess"/>
  <int value="36863" label="Crashpad_HandlerDidNotRespond"/>
  <int value="85436397" label="Crashpad_SimulatedCrash"/>
  <int value="529697949" label="CPP_EH_EXCEPTION"/>
  <int value="533692099" label="STATUS_GUARD_PAGE_VIOLATION"/>
  <int value="1073740791" label="STATUS_STACK_BUFFER_OVERRUN"/>
  <int value="1073741510" label="STATUS_CONTROL_C_EXIT"/>
  <int value="1073741515" label="STATUS_DLL_NOT_FOUND"/>
  <int value="1073741571" label="STATUS_STACK_OVERFLOW"/>
  <int value="1073741674" label="STATUS_PRIVILEGED_INSTRUCTION"/>
  <int value="1073741675" label="STATUS_INTEGER_OVERFLOW"/>
  <int value="1073741676" label="STATUS_INTEGER_DIVIDE_BY_ZERO"/>
  <int value="1073741677" label="STATUS_FLOAT_UNDERFLOW"/>
  <int value="1073741678" label="STATUS_FLOAT_STACK_CHECK"/>
  <int value="1073741679" label="STATUS_FLOAT_OVERFLOW"/>
  <int value="1073741680" label="STATUS_FLOAT_INVALID_OPERATION"/>
  <int value="1073741681" label="STATUS_FLOAT_INEXACT_RESULT"/>
  <int value="1073741682" label="STATUS_FLOAT_DIVIDE_BY_ZERO"/>
  <int value="1073741683" label="STATUS_FLOAT_DENORMAL_OPERAND"/>
  <int value="1073741684" label="STATUS_ARRAY_BOUNDS_EXCEEDED"/>
  <int value="1073741783" label="STATUS_INVALID_UNWIND_TARGET"/>
  <int value="1073741786" label="STATUS_INVALID_DISPOSITION"/>
  <int value="1073741787" label="STATUS_NONCONTINUABLE_EXCEPTION"/>
  <int value="1073741790" label="STATUS_ACCESS_DENIED"/>
  <int value="1073741795" label="STATUS_ILLEGAL_INSTRUCTION"/>
  <int value="1073741801" label="STATUS_NO_MEMORY"/>
  <int value="1073741811" label="STATUS_INVALID_PARAMETER"/>
  <int value="1073741816" label="STATUS_INVALID_HANDLE"/>
  <int value="1073741818" label="STATUS_IN_PAGE_ERROR"/>
  <int value="1073741819" label="STATUS_ACCESS_VIOLATION"/>
  <int value="1073741829" label="STATUS_SEGMENT_NOTIFICATION"/>
  <int value="2147483644" label="STATUS_SINGLE_STEP"/>
  <int value="2147483645" label="STATUS_BREAKPOINT"/>
  <int value="2147483646" label="STATUS_DATATYPE_MISALIGNMENT"/>
</enum>

<enum name="CreatePersistentHistogramResult" type="int">
  <int value="0" label="Success: Histogram created in persistent space."/>
  <int value="1" label="Error: Invalid metadata pointer. (coding error)"/>
  <int value="2" label="Error: Invalid metdata."/>
  <int value="3" label="Error: Invalid 'ranges' array."/>
  <int value="4" label="Error: Invalid 'counts' array."/>
  <int value="5" label="Failed: Allocator is corrupt."/>
  <int value="6" label="Failed: Allocator is full."/>
  <int value="7" label="Failed: Allocator failed (unknown error)."/>
  <int value="8" label="Error: Unknown histogram type."/>
  <int value="9" label="Error: Allocator has become corrupted."/>
</enum>

<enum name="CredentialFilteredType" type="int">
  <int value="0" label="No sync credentials present"/>
  <int value="1" label="Sync credentials were removed"/>
</enum>

<enum name="CrosBeamformingDeviceState" type="int">
  <int value="0" label="Default enabled"/>
  <int value="1" label="User enabled"/>
  <int value="2" label="Default disabled"/>
  <int value="3" label="User disabled"/>
</enum>

<enum name="CrosDisksArchiveType" type="int">
  <int value="0" label="Unknown"/>
  <int value="1" label="ZIP"/>
  <int value="2" label="RAR"/>
  <int value="3" label="Tar"/>
  <int value="4" label="Bzip2-compressed Tar"/>
  <int value="5" label="Gzip-compressed Tar"/>
</enum>

<enum name="CrosDisksDeviceMediaType" type="int">
  <int value="0" label="Unknown"/>
  <int value="1" label="USB Drive"/>
  <int value="2" label="SD Card"/>
  <int value="3" label="Optical Disc"/>
  <int value="4" label="Mobile Device"/>
  <int value="5" label="DVD"/>
</enum>

<enum name="CrosDisksFilesystemType" type="int">
  <int value="0" label="Unknown"/>
  <int value="1" label="Others"/>
  <int value="2" label="FAT"/>
  <int value="3" label="exFAT"/>
  <int value="4" label="NTFS"/>
  <int value="5" label="HFS+"/>
  <int value="6" label="Ext2"/>
  <int value="7" label="Ext3"/>
  <int value="8" label="Ext4"/>
  <int value="9" label="ISO9660"/>
  <int value="10" label="UDF"/>
</enum>

<enum name="CrosEnableDriveOfflineOutcome" type="int">
  <int value="0" label="Success: Offline mode enabled"/>
  <int value="1" label="Failure: Hosted app page timed out"/>
  <int value="2" label="Failure: Hosted app page load failed"/>
  <int value="3" label="Failure: Not a regular user account"/>
  <int value="4" label="Failure: Drive app not installed"/>
  <int value="5" label="Failure: Background page already exists"/>
</enum>

<enum name="CrosEventEnum" type="int">
  <int value="0" label="ModemManagerCommandSendFailure"/>
  <int value="1" label="HwWatchdogReboot"/>
  <int value="2" label="Cras.NoCodecsFoundAtBoot"/>
  <int value="3" label="Chaps.DatabaseCorrupted"/>
  <int value="4" label="Chaps.DatabaseRepairFailure"/>
  <int value="5" label="Chaps.DatabaseCreateFailure"/>
  <int value="6" label="Attestation.OriginSpecificExhausted"/>
  <int value="7" label="SpringPowerSupply.Original.High"/>
  <int value="8" label="SpringPowerSupply.Other.High"/>
  <int value="9" label="SpringPowerSupply.Original.Low"/>
  <int value="10" label="SpringPowerSupply.ChargerIdle"/>
  <int value="11" label="TPM.NonZeroDictionaryAttackCounter"/>
  <int value="12" label="TPM.EarlyResetDuringCommand"/>
</enum>

<enum name="CrosFirstRunTutorialCompletionType" type="int">
  <int value="0" label="Was not finished"/>
  <int value="1" label="Finished with &quot;Got It&quot; button"/>
  <int value="2" label="Finished with &quot;Keep Exploring&quot; button"/>
</enum>

<enum name="CrosShelfClickTarget" type="int">
  <obsolete>
    Deprecated as of 12/2013. Default pinned apps trial is finished.
  </obsolete>
  <int value="0" label="Chrome"/>
  <int value="1" label="AppLauncher"/>
  <int value="2" label="Gmail"/>
  <int value="3" label="Search"/>
  <int value="4" label="Youtube"/>
  <int value="5" label="Doc"/>
  <int value="6" label="Sheets"/>
  <int value="7" label="Slides"/>
  <int value="8" label="PlayMusic"/>
</enum>

<enum name="CrosTPMDictionaryAttackResetStatusEnum" type="int">
  <int value="0" label="Reset not necessary"/>
  <int value="1" label="Reset attempt succeeded"/>
  <int value="2" label="Reset attempt failed"/>
  <int value="3" label="TPM owner delegate not allowed to reset"/>
  <int value="4" label="TPM owner delegate does not exist"/>
  <int value="5" label="Failed to query dictionary attack counter"/>
</enum>

<enum name="CryptohomeChecksumStatus" type="int">
  <int value="0" label="Checksum OK"/>
  <int value="1" label="Checksum does not exist"/>
  <int value="2" label="Checksum read error"/>
  <int value="3" label="Checksum mismatch"/>
  <int value="4" label="Checksum out of sync"/>
</enum>

<enum name="CryptohomeError" type="int">
  <int value="1" label="TPM returned TPM_E_FAIL"/>
  <int value="2" label="TCS key load failed"/>
  <int value="3" label="TPM dictionary defense lock is running"/>
  <int value="4" label="Decrypt attempt but TPM key is missing"/>
  <int value="5" label="Decrypt attempt but TPM is not owned"/>
  <int value="6" label="Decrypt attempt but TPM is not available"/>
  <int value="7" label="Decrypt attempt but TPM key is mismatched"/>
  <int value="8" label="Decrypt attempt with TPM key failed (general)"/>
  <int value="9" label="Cannot load TPM SRK"/>
  <int value="10" label="Cannot read TPM SRK public info"/>
  <int value="11" label="Cannot load cryptohome TPM key"/>
  <int value="12" label="Cannot read cryptohome TPM key public info"/>
  <int value="13"
      label="TPM failed to load a key because of a bad key property"/>
  <int value="14" label="Failed to load a PKCS #11 token"/>
  <int value="15" label="Failed to encrypt with cryptohome TPM key"/>
  <int value="16" label="TSS communication error"/>
  <int value="17" label="TSS invalid handle"/>
</enum>

<enum name="CryptohomeMigrationToGaiaId" type="int">
  <int value="0" label="Not started"/>
  <int value="1" label="Already migrated"/>
  <int value="2" label="Success"/>
  <int value="3" label="Failure"/>
</enum>

<enum name="CTRequirementCompliance" type="int">
  <obsolete>
    Deprecated 1/2016.
  </obsolete>
  <int value="0" label="Not Compliant"/>
  <int value="1" label="Whitelisted"/>
  <int value="2" label="Has enough SCTs"/>
</enum>

<enum name="D3D11InitializeResult" type="int">
  <int value="0" label="Success"/>
  <int value="1" label="Error initializing compiler"/>
  <int value="2" label="Missing DLL dependency"/>
  <int value="3" label="D3D11CreateDevice returned E_INVALIDARG"/>
  <int value="4" label="D3D11CreateDevice returned other error"/>
  <int value="5" label="DXGI version not supported"/>
  <int value="6" label="Other initialization error"/>
  <int value="7" label="D3D11CreateDevice returned E_FAIL"/>
  <int value="8" label="D3D11CreateDevice returned E_NOTIMPL"/>
  <int value="9" label="D3D11CreateDevice returned E_OUTOFMEMORY"/>
  <int value="10" label="D3D11CreateDevice returned DXGI_ERROR_INVALID_CALL"/>
  <int value="11"
      label="D3D11CreateDevice returned DXGI_ERROR_SDK_COMPONENT_MISSING"/>
  <int value="12"
      label="D3D11CreateDevice returned DXGI_ERROR_WAS_STILL_DRAWING"/>
  <int value="13"
      label="D3D11CreateDevice returned DXGI_ERROR_NOT_CURRENTLY_AVAILABLE"/>
  <int value="14" label="D3D11CreateDevice returned DXGI_ERROR_DEVICE_HUNG"/>
</enum>

<enum name="D3D9InitializeResult" type="int">
  <int value="0" label="Success"/>
  <int value="1" label="Error initializing compiler"/>
  <int value="2" label="Missing DLL dependency"/>
  <int value="3" label="Error creating device"/>
  <int value="4" label="Shader version not supported"/>
  <int value="5" label="StretchRect from textures not supported"/>
  <int value="6" label="Device lost of out-of-memory error"/>
  <int value="7" label="Other initialization error"/>
</enum>

<enum name="D3DFeatureLevel" type="int">
  <int value="0" label="D3D_FEATURE_LEVEL_INVALID"/>
  <int value="1" label="D3D_FEATURE_LEVEL_9_3"/>
  <int value="2" label="D3D_FEATURE_LEVEL_10_0"/>
  <int value="3" label="D3D_FEATURE_LEVEL_10_1"/>
  <int value="4" label="D3D_FEATURE_LEVEL_11_0"/>
  <int value="5" label="D3D_FEATURE_LEVEL_11_1"/>
</enum>

<enum name="D3DHresult" type="int">
  <int value="-2147467263" label="E_NOTIMPL"/>
  <int value="-2147467262" label="E_NOINTERFACE"/>
  <int value="-2147467261" label="E_POINTER"/>
  <int value="-2147467260" label="E_ABORT"/>
  <int value="-2147467259" label="E_FAIL"/>
  <int value="-2147418113" label="E_UNEXPECTED"/>
  <int value="-2147024891" label="E_ACCESSDENIED"/>
  <int value="-2147024890" label="E_HANDLE"/>
  <int value="-2147024882" label="E_OUTOFMEMORY"/>
  <int value="-2147024809" label="E_INVALIDARG"/>
  <int value="-2005270527" label="DXGI_ERROR_INVALID_CALL"/>
  <int value="-2005270526" label="DXGI_ERROR_NOT_FOUND"/>
  <int value="-2005270525" label="DXGI_ERROR_MORE_DATA"/>
  <int value="-2005270524" label="DXGI_ERROR_UNSUPPORTED"/>
  <int value="-2005270523" label="DXGI_ERROR_DEVICE_REMOVED"/>
  <int value="-2005270522" label="DXGI_ERROR_DEVICE_HUNG"/>
  <int value="-2005270521" label="DXGI_ERROR_DEVICE_RESET"/>
  <int value="-2005270518" label="DXGI_ERROR_WAS_STILL_DRAWING"/>
  <int value="-2005270517" label="DXGI_ERROR_FRAME_STATISTICS_DISJOINT"/>
  <int value="-2005270516" label="DXGI_ERROR_GRAPHICS_VIDPN_SOURCE_IN_USE"/>
  <int value="-2005270496" label="DXGI_ERROR_DRIVER_INTERNAL_ERROR"/>
  <int value="-2005270495" label="DXGI_ERROR_NONEXCLUSIVE"/>
  <int value="-2005270494" label="DXGI_ERROR_NOT_CURRENTLY_AVAILABLE"/>
  <int value="-2005270493" label="DXGI_ERROR_REMOTE_CLIENT_DISCONNECTED"/>
  <int value="-2005270492" label="DXGI_ERROR_REMOTE_OUTOFMEMORY"/>
  <int value="-2005270490" label="DXGI_ERROR_ACCESS_LOST"/>
  <int value="-2005270489" label="DXGI_ERROR_WAIT_TIMEOUT"/>
  <int value="-2005270488" label="DXGI_ERROR_SESSION_DISCONNECTED"/>
  <int value="-2005270487" label="DXGI_ERROR_RESTRICT_TO_OUTPUT_STALE"/>
  <int value="-2005270486" label="DXGI_ERROR_CANNOT_PROTECT_CONTENT"/>
  <int value="-2005270485" label="DXGI_ERROR_ACCESS_DENIED"/>
  <int value="-2005270484" label="DXGI_ERROR_NAME_ALREADY_EXISTS"/>
  <int value="-2005270483" label="DXGI_ERROR_SDK_COMPONENT_MISSING"/>
</enum>

<enum name="DailyEventIntervalType" type="int">
  <int value="0" label="First Run"/>
  <int value="1" label="Day Elapsed"/>
  <int value="2" label="Clock Changed"/>
</enum>

<enum name="DarkResumeScanRetryResult" type="int">
  <int value="0" label="Not Connected"/>
  <int value="1" label="Connected"/>
</enum>

<enum name="DarkResumeUnmatchedScanResultReceived" type="int">
  <int value="0" label="False (all scan results match)"/>
  <int value="1" label="True (at least one unmatched scan result)"/>
</enum>

<enum name="DarkResumeWakeReason" type="int">
  <int value="0" label="Unsupported (or not reported)"/>
  <int value="1" label="Pattern"/>
  <int value="2" label="Disconnect"/>
  <int value="3" label="SSID"/>
</enum>

<enum name="DataChannelCounters" type="int">
  <int value="0" label="Channel created."/>
  <int value="1" label="Channel reached Open state."/>
  <int value="2" label="Channel is reliable."/>
  <int value="3" label="Channel is ordered."/>
  <int value="4" label="Channel is negotiated."/>
</enum>

<enum name="DataReductionProxyAutoLoFiAccuracy" type="int">
  <int value="0"
      label="Estimated network quality as slow and was actually slow"/>
  <int value="1"
      label="Estimated network quality as slow and was actually not slow"/>
  <int value="2"
      label="Estimated network quality as not slow and was actually slow"/>
  <int value="3"
      label="Estimated network quality as not slow and was actually not slow"/>
</enum>

<enum name="DataReductionProxyAutoLoFiRequestHeaderState" type="int">
  <int value="0" label="Empty to Empty"/>
  <int value="1" label="Empty to Low"/>
  <int value="2" label="Low to Empty"/>
  <int value="3" label="Low to Low"/>
</enum>

<enum name="DataReductionProxyBypassEventType_Deprecated" type="int">
  <int value="0" label="Short bypass"/>
  <int value="1" label="Long bypass"/>
  <int value="2" label="Bypass due to internal server error"/>
  <int value="3" label="Bypass due to other error"/>
  <int value="4" label="Bypass due to missing via header"/>
  <int value="5" label="Bypass due to 4xx response"/>
  <int value="6"
      label="Bypass due to 407 response from proxy without a challenge"/>
</enum>

<enum name="DataReductionProxyBypassType" type="int">
  <int value="0"
      label="Bypass due to explicit instruction for the current request"/>
  <int value="1"
      label="Short bypass: Bypass the proxy for less than one minute"/>
  <int value="2"
      label="Medium bypass: Bypass the proxy for one to five minutes"/>
  <int value="3"
      label="Long bypass: Bypass the proxy for more than five minutes"/>
  <int value="4" label="Bypass due to a 4xx missing via header"/>
  <int value="5"
      label="Bypass due to other missing via header, excluding 4xx errors"/>
  <int value="6"
      label="Bypass due to 407 response from proxy without a challenge"/>
  <int value="7" label="Bypass due to a 500 internal server error"/>
  <int value="8" label="Bypass because the request URI was too long"/>
  <int value="9" label="Bypass due to a 503 response"/>
  <int value="10" label="Bypass due to any network error"/>
</enum>

<enum name="DataReductionProxyConfigServiceAuthExpiredSessionKey" type="int">
  <int value="0"
      label="Current session key does not match the key in the request"/>
  <int value="1" label="Current session key matches the key in the request"/>
</enum>

<enum name="DataReductionProxyConfigServiceHTTPRequests" type="int">
  <int value="0" label="Request did not go through data saver proxy"/>
  <int value="1" label="Request went through data saver proxy"/>
</enum>

<enum name="DataReductionProxyEnabledState" type="int">
  <int value="0" label="Off-to-On"/>
  <int value="1" label="On-to-Off"/>
</enum>

<enum name="DataReductionProxyLoFiImplicitOptOutAction" type="int">
  <int value="0" label="Lo-Fi disabled for the remainder of the session"/>
  <int value="1" label="Lo-Fi disabled until next opt out epoch"/>
  <int value="2" label="Next implict opt out epoch, Lo-Fi re-enabled"/>
</enum>

<enum name="DataReductionProxyLoFiSessionState" type="int">
  <int value="0" label="Lo-Fi was used"/>
  <int value="1"
      label="Lo-Fi was not used because the network quality was always good"/>
  <int value="2"
      label="Lo-Fi was not used because the user implicitly permanently opted
             out"/>
  <int value="3"
      label="Lo-Fi was not used because the user implicitly temporarily opted
             out"/>
</enum>

<enum name="DataReductionProxyLoFiTransformationType" type="int">
  <int value="0" label="Pageloads that are Lo-Fi previews"/>
  <int value="1"
      label="Pageloads that requested Lo-Fi previews, but did not have the
             transformation"/>
</enum>

<enum name="DataReductionProxyLoFiUIAction" type="int">
  <int value="0" label="'Load images' snackbar shown"/>
  <int value="1" label="'Load images' snackbar clicked"/>
  <int value="2" label="'Load image' context menu item shown"/>
  <int value="3" label="'Load image' context menu item clicked"/>
  <int value="4"
      label="Pages where the user has clicked 'Load image' at least once"/>
  <int value="5" label="'Load images' context menu item shown"/>
  <int value="6" label="'Load images' context menu item clicked"/>
</enum>

<enum name="DataReductionProxyNetworkChangeEvent" type="int">
  <int value="0" label="IP Address Change"/>
  <int value="1" label="Proxy disabled on VPN (deprecated)"/>
</enum>

<enum name="DataReductionProxyProbeURLFetchResult" type="int">
  <int value="0" label="Internet disconnected"/>
  <int value="1" label="Probe failed, proxy disabled"/>
  <int value="2" label="Probe failed, proxy already disabled"/>
  <int value="3" label="Probe succeeded, proxy enabled"/>
  <int value="4" label="Probe succeeded, proxy already enabled"/>
  <int value="5" label="Probe started, proxy disabled"/>
</enum>

<enum name="DataReductionProxyPromoAction" type="int">
  <int value="0" label="Dismissed from first screen"/>
  <int value="1" label="Dismissed from second screen"/>
  <int value="2" label="Enabled from first screen"/>
  <int value="3" label="Enabled from second screen"/>
</enum>

<enum name="DataReductionProxyProxyPrefMigrationResult" type="int">
  <int value="0" label="Proxy pref not cleared"/>
  <int value="1" label="Empty proxy pref was cleared"/>
  <int value="2" label="System proxy pref was cleared"/>
  <int value="3" label="Proxy pref containing a DRP was cleared"/>
  <int value="4"
      label="Proxy pref containing a *.googlezip.net proxy was cleared"/>
  <int value="5"
      label="Proxy pref of an embedded PAC script containing a
             *.googlezip.net proxy was cleared"/>
</enum>

<enum name="DataReductionProxyResponseProxyServerStatus" type="int">
  <int value="0" label="Empty proxy server"/>
  <int value="1" label="DRP proxy server"/>
  <int value="2" label="Non-DRP proxy server without DRP via header"/>
  <int value="3" label="Non-DRP proxy server with DRP via header"/>
</enum>

<enum name="DataReductionProxySettingsConversion" type="int">
  <int value="0" label="OFF to OFF"/>
  <int value="1" label="OFF to ON"/>
  <int value="2" label="ON to OFF"/>
  <int value="3" label="ON to ON"/>
</enum>

<enum name="DataReductionProxyStartupState" type="int">
  <int value="0" label="Proxy not available"/>
  <int value="1" label="Proxy available but not enabled"/>
  <int value="2" label="Proxy available and enabled"/>
</enum>

<enum name="DataReductionProxyStoreStatus" type="int">
  <int value="0" label="OK"/>
  <int value="1" label="NOT_FOUND"/>
  <int value="2" label="CORRUPTED"/>
  <int value="3" label="IO_ERROR"/>
  <int value="4" label="MISC_ERROR"/>
</enum>

<enum name="DataReductionProxyUIAction" type="int">
  <int value="0" label="Enabled directly from the promo"/>
  <int value="1" label="Enabled then disabled from promo (iOS-only)"/>
  <int value="2"
      label="Promo settings link clicked, then enabled from settings"/>
  <int value="3"
      label="Promo settings link clicked, but not enabled from settings"/>
  <int value="4" label="Promo dismissed (no action performed)"/>
  <int value="5"
      label="Arrived at settings menu by another path: entered off, exited
             off"/>
  <int value="6"
      label="Arrived at settings menu by another path: entered off, exited on"/>
  <int value="7"
      label="Arrived at settings menu by another path: entered on, exited off"/>
  <int value="8"
      label="Arrived at settings menu by another path: entered on, exited on"/>
  <int value="9" label="Enabled directly from the First Run Experience"/>
  <int value="10" label="Disabled directly from the First Run Experience"/>
</enum>

<enum name="DataUsageReportSubmissionResult" type="int">
  <int value="0" label="Successful"/>
  <int value="1" label="Failed"/>
  <int value="2" label="Timed out"/>
  <int value="3" label="Lost"/>
</enum>

<enum name="DataUsageUIAction" type="int">
  <int value="0" label="Data use tracking started snackbar shown"/>
  <int value="1"
      label="Data use tracking started snackbar 'More' link clicked"/>
  <int value="2" label="Data use tracking ended snackbar shown"/>
  <int value="3" label="Data use tracking ended snackbar 'More' link clicked"/>
  <int value="4" label="Data use tracking ended dialog shown"/>
  <int value="5"
      label="Data use tracking ended dialog 'Continue' button clicked"/>
  <int value="6"
      label="Data use tracking ended dialog 'Cancel' button clicked"/>
  <int value="7"
      label="Data use tracking ended dialog 'Learn more' link clicked"/>
  <int value="8" label="Data use tracking ended dialog opted out"/>
</enum>

<enum name="DataUseServices" type="int">
  <int value="0" label="Not Tagged"/>
  <int value="1" label="Suggestions"/>
  <int value="2" label="Translate"/>
  <int value="3" label="Sync"/>
  <int value="4" label="Omnibox"/>
  <int value="5" label="Invalidation"/>
  <int value="6" label="Rappor"/>
  <int value="7" label="Variations"/>
  <int value="8" label="UMA"/>
  <int value="9" label="Domain Reliability"/>
  <int value="10" label="Profile Downloader"/>
  <int value="11" label="Google URL Tracker"/>
  <int value="12" label="Autofill"/>
  <int value="13" label="Policy"/>
  <int value="14" label="Spell Checker"/>
  <int value="15" label="NTPSnippets"/>
</enum>

<enum name="DecodedImageOrientation" type="int">
  <int value="0" label="Unknown"/>
  <int value="1" label="Top Left"/>
  <int value="2" label="Top Right"/>
  <int value="3" label="Bottom Right"/>
  <int value="4" label="Bottom Left"/>
  <int value="5" label="Left Top"/>
  <int value="6" label="Right Top"/>
  <int value="7" label="Right Bottom"/>
  <int value="8" label="Left Bottom"/>
</enum>

<enum name="DecodedImageType" type="int">
  <int value="0" label="kImageUnknown"/>
  <int value="1" label="kImageJPEG"/>
  <int value="2" label="kImagePNG"/>
  <int value="3" label="kImageGIF"/>
  <int value="4" label="kImageWebP"/>
  <int value="5" label="kImageICO"/>
  <int value="6" label="kImageBMP"/>
</enum>

<enum name="DefaultBrowserAsyncAttemptResult" type="int">
  <obsolete>
    Deprecated 2015/11. Renamed to SetDefaultAttemptResult.
  </obsolete>
  <int value="0" label="Success">No errors encountered.</int>
  <int value="1" label="Already default">
    Chrome was already the default web client. This counts as a successful
    attempt.
  </int>
  <int value="2" label="Failure">
    Chrome was not set as the default web client.
  </int>
  <int value="3" label="Abandoned">
    The attempt was abandoned because the observer was destroyed.
  </int>
  <int value="4" label="Launch failure">
    Failed to launch the process to set Chrome as the default web client
    asynchronously.
  </int>
  <int value="5" label="Other worker">
    Another worker is already in progress to make Chrome the default web client.
  </int>
  <int value="6" label="Retry">
    The user initiated another attempt while the asynchronous operation was
    already in progress.
  </int>
</enum>

<enum name="DefaultBrowserInfoBarUserInteraction" type="int">
  <int value="0" label="Accept">
    The user clicked the &quot;Set as default&quot; button.
  </int>
  <int value="1" label="Cancel">
    The user clicked the &quot;Don't ask again&quot; button.
  </int>
  <int value="2" label="Ignore">
    The user did not interact with the info bar.
  </int>
</enum>

<enum name="DefaultBrowserState" type="int">
  <int value="0" label="Not Default"/>
  <int value="1" label="Default"/>
  <int value="2" label="Unknown"/>
</enum>

<enum name="DefaultSearchChangeOrigin" type="int">
  <int value="0" label="DSP changed by synced Pref"/>
  <int value="1" label="DSP changed by Sync ADD"/>
  <int value="2" label="DSP changed by Sync DELETE"/>
  <int value="3" label="DSP changed by managed policy switch"/>
  <int value="4" label="DSP changed unintentionally by Sync"/>
  <int value="5" label="DSP changed by other non-Sync origin"/>
  <int value="6" label="DSP changed by Profile Reset feature"/>
  <int value="7" label="DSP changed by the extension Override Settings API"/>
  <int value="8" label="DSP set to new engine with no previous value in prefs"/>
</enum>

<enum name="DefaultWebClientState" type="int">
  <int value="0" label="Not default">Chrome is not the default web client.</int>
  <int value="1" label="Is default">Chrome is the default web client.</int>
  <int value="2" label="Unknown default">
    Chrome is in a unknown default state.
  </int>
</enum>

<enum name="DelayBasedEchoQuality" type="int">
  <int value="0" label="Good delays">
    Echo Cancellation quality most likely good.
  </int>
  <int value="1" label="Spurious delays">Echo Cancellation may suffer.</int>
  <int value="2" label="Poor delays">
    Echo Cancellation likely fails unless user is using headset.
  </int>
  <int value="3" label="Invalid delays">Insufficient amount of data.</int>
</enum>

<enum name="DeprecatedAcceleratorUsage" type="int">
  <int value="0" label="Deprecated key accelerator is used"/>
  <int value="1" label="New key accelerator is used"/>
</enum>

<enum name="DesktopCaptureCounters" type="int">
  <int value="0" label="Screen capturer created."/>
  <int value="1" label="Window capturer created."/>
  <int value="2" label="First screen capture call succeeded."/>
  <int value="3" label="First screen capture call failed."/>
  <int value="4" label="First window capture call succeeded."/>
  <int value="5" label="First window capture call failed."/>
  <int value="6" label="Tab video capturer created."/>
  <int value="7" label="Tab audio capturer created."/>
  <int value="8" label="System loopback audio capturer created."/>
</enum>

<enum name="DesktopSearchRedirectionInfobarCloseAction" type="int">
  <int value="0" label="Clicked the 'Manage search settings' link"/>
  <int value="1" label="Clicked the dismiss button"/>
  <int value="2" label="InfoBar dismissed implicitly (no interaction)"/>
</enum>

<enum name="DesktopSearchURLAction" type="int">
  <int value="0" label="No redirection - Feature disabled"/>
  <int value="1" label="No redirection - Default search engine is Bing"/>
  <int value="2" label="No redirection - Default search engine is invalid"/>
  <int value="3" label="Redirection to the default search engine"/>
</enum>

<enum name="DeviceIdMismatch" type="int">
  <int value="0" label="BOTH_NONEMPTY"/>
  <int value="1" label="SYNC_EMPTY"/>
  <int value="2" label="PREF_EMPTY"/>
</enum>

<enum name="DeviceOrientationSensorTypeAndroid" type="int">
  <int value="0" label="Not Available"/>
  <int value="1" label="ROTATION_VECTOR"/>
  <int value="2" label="ACCELEROMETER + MAGNETIC_FIELD"/>
  <int value="3" label="GAME_ROTATION_VECTOR"/>
</enum>

<enum name="DevicePermissionActions" type="int">
  <int value="0" label="AllowHttps"/>
  <int value="1" label="AllowHttp"/>
  <int value="2" label="Deny"/>
  <int value="3" label="Cancel"/>
</enum>

<enum name="DevicesPageEvents" type="int">
  <int value="0" label="OPENED"/>
  <int value="1" label="LOG_IN_STARTED_FROM_REGISTER_PROMO"/>
  <int value="2" label="LOG_IN_STARTED_FROM_DEVICE_LIST_PROMO"/>
  <int value="3" label="ADD_PRINTER_CLICKED"/>
  <int value="4" label="REGISTER_CLICKED"/>
  <int value="5" label="REGISTER_CONFIRMED"/>
  <int value="6" label="REGISTER_SUCCESS"/>
  <int value="7" label="REGISTER_CANCEL"/>
  <int value="8" label="REGISTER_FAILURE"/>
  <int value="9" label="MANAGE_CLICKED"/>
  <int value="10" label="REGISTER_CANCEL_ON_PRINTER"/>
  <int value="11" label="REGISTER_TIMEOUT"/>
  <int value="12" label="LOG_IN_STARTED_FROM_REGISTER_OVERLAY_PROMO"/>
</enum>

<enum name="DeviceTechnologyType" type="int">
  <int value="0" label="Unknown"/>
  <int value="1" label="Ethernet"/>
  <int value="2" label="WiFi"/>
  <int value="3" label="WiMax"/>
  <int value="4" label="Cellular"/>
</enum>

<enum name="DevToolsAction" type="int">
  <int value="1" label="Window docked"/>
  <int value="2" label="Window undocked"/>
  <int value="3" label="Scripts breakpoint set"/>
  <int value="4" label="Timeline started"/>
  <int value="5" label="CPU profile taken"/>
  <int value="6" label="Heap profile taken"/>
  <int value="7" label="Audits started"/>
  <int value="8" label="Console evaluated"/>
  <int value="9" label="File saved in workspace"/>
  <int value="10" label="Device mode enabled"/>
  <int value="11" label="Animations playback rate changed"/>
  <int value="12" label="Revision applied"/>
  <int value="13" label="File system directory content received"/>
  <int value="14" label="Style rule edited"/>
  <int value="15" label="Command evaluated in console panel"/>
  <int value="16" label="DOM properties expanded"/>
  <int value="17" label="Resized view in responsive mode"/>
</enum>

<enum name="DevToolsPanel" type="int">
  <int value="1" label="Elements"/>
  <int value="2" label="Resources"/>
  <int value="3" label="Network"/>
  <int value="4" label="Scripts"/>
  <int value="5" label="Timeline"/>
  <int value="6" label="Profiles"/>
  <int value="7" label="Audits"/>
  <int value="8" label="Console"/>
  <int value="9" label="Layers"/>
  <int value="10" label="Drawer - Console"/>
  <int value="11" label="Drawer - Animations"/>
  <int value="12" label="Drawer - Network config"/>
  <int value="13" label="Drawer - Rendering"/>
  <int value="14" label="Drawer - Sensors"/>
  <int value="15" label="Drawer - Search"/>
  <int value="16" label="Security"/>
</enum>

<enum name="DevToolsSetting" type="int">
  <int value="1" label="Elements DOM wrap on"/>
  <int value="2" label="Elements DOM wrap off"/>
  <int value="3" label="Console monitor XHR on"/>
  <int value="4" label="Console monitor XHR off"/>
  <int value="5" label="Console preserve log on"/>
  <int value="6" label="Console preserve log off"/>
  <int value="7" label="Network show large rows on"/>
  <int value="8" label="Network show large rows off"/>
</enum>

<enum name="DiagnosticsRecoveryRun" type="int">
  <int value="0" label="Recovery not run"/>
  <int value="1" label="Recovery run because of crash"/>
  <int value="2" label="Recovery run by user"/>
</enum>

<enum name="DiagnosticsResult" type="int">
  <int value="0" label="Not run (regular startup)"/>
  <int value="1" label="Success (crash startup)"/>
  <int value="2" label="Failure (crash startup)"/>
  <int value="3" label="Skipped (crash startup)"/>
</enum>

<enum name="DiagnosticsTestName" type="int">
  <int value="0" label="Conflicting DLLs Test"/>
  <int value="1" label="Disk Space Test"/>
  <int value="2" label="Install Type Test"/>
  <int value="3" label="JSON Bookmarks Test"/>
  <int value="4" label="JSON Local State Test"/>
  <int value="5" label="JSON Preferences Test"/>
  <int value="6" label="Operating System Test"/>
  <int value="7" label="Path Dictionaries Test"/>
  <int value="8" label="Path Local State Test"/>
  <int value="9" label="Path Resources Test"/>
  <int value="10" label="Path User Data Test"/>
  <int value="11" label="Version Test"/>
  <int value="12" label="SQLite Integrity App Cache Test"/>
  <int value="13" label="SQLite Integrity Archived History Test (obsolete)"/>
  <int value="14" label="SQLite Integrity Cookie Test"/>
  <int value="15" label="SQLite Integrity Database Tracker Test"/>
  <int value="16" label="SQLite Integrity History Test"/>
  <int value="17" label="SQLite Integrity Nss Cert Test"/>
  <int value="18" label="SQLite Integrity Nss Key Test"/>
  <int value="19" label="SQLite Integrity Thumbnails Test"/>
  <int value="20" label="SQLite Integrity Web Data Test"/>
</enum>

<enum name="DifferentPrimaryAccounts" type="int">
  <int value="0" label="Primary Accounts the same"/>
  <int value="1" label="(obsolete) Primary Accounts different"/>
  <int value="2" label="No GAIA account in cookie jar"/>
  <int value="3" label="Primary accounts present but different"/>
</enum>

<enum name="DirectoryDatabaseRepairResult" type="int">
  <int value="0" label="Succeeded"/>
  <int value="1" label="Failed"/>
</enum>

<enum name="DirectWriteFontFallbackResult" type="int">
  <int value="0" label="Failed: no font matched"/>
  <int value="1" label="Success: mapped from cache"/>
  <int value="2" label="Success: mapped using IPC"/>
</enum>

<enum name="DirectWriteFontLoaderType" type="int">
  <int value="0" label="File: system font directory"/>
  <int value="1" label="File: outside sandbox whitelist"/>
  <int value="2" label="Non-file loader"/>
</enum>

<enum name="DirectWriteLoadFamilyResult" type="int">
  <int value="0" label="Success: single family"/>
  <int value="1" label="Success: matched from collection"/>
  <int value="2" label="Error: multiple families"/>
  <int value="3" label="Error: no families"/>
  <int value="4" label="Error: failed to create colleciton"/>
</enum>

<enum name="DistillableType" type="int">
  <int value="0" label="Not distillable"/>
  <int value="1" label="Non-mobile-friendly distillable"/>
  <int value="2" label="Mobile-friendly distillable"/>
</enum>

<enum name="DistillableType2" type="int">
  <int value="0" label="Non-mobile-friendly, not distillable"/>
  <int value="1" label="Mobile-friendly, not distillable"/>
  <int value="2" label="Non-mobile-friendly, distillable"/>
  <int value="3" label="Mobile-friendly, distillable"/>
</enum>

<enum name="DistillRejection" type="int">
  <int value="0" label="Not an article"/>
  <int value="1" label="Mobile-friendly"/>
  <int value="2" label="Domain is blacklisted"/>
  <int value="3" label="Predicted to be short"/>
  <int value="4" label="Not rejected"/>
</enum>

<enum name="DllHash" type="int">
<!-- Generated by chrome_elf/dll_hash/dll_hash_main.cc -->

  <int value="26393601" label="wajam_goblin_64.dll"/>
  <int value="44551499" label="949ba8b6a9.dll"/>
  <int value="79515758" label="crdli.dll"/>
  <int value="114416212" label="virtualcamera.ax"/>
  <int value="141490347" label="minisp.dll"/>
  <int value="231333778" label="libapi2hook.dll"/>
  <int value="272828651" label="activedetect64.dll"/>
  <int value="295718620" label="cespy.dll"/>
  <int value="313484566" label="vntsrv.dll"/>
  <int value="447643466" label="libinject.dll"/>
  <int value="604217493" label="explorerex.dll"/>
  <int value="684728064" label="offerswizarddll.dll"/>
  <int value="685821492" label="smdmf.dll"/>
  <int value="750761702" label="systemk.dll"/>
  <int value="777975221" label="activedetect32.dll"/>
  <int value="803283353" label="lmrn.dll"/>
  <int value="839518885" label="libinject2.dll"/>
  <int value="851064219" label="wajam_goblin.dll"/>
  <int value="888528780" label="ycwebcamerasource.ax"/>
  <int value="989714890" label="datamngr.dll"/>
  <int value="1114335935" label="libredir2.dll"/>
  <int value="1120295191" label="windowsapihookdll64.dll"/>
  <int value="1148809156" label="chrmxtn.dll"/>
  <int value="1270622879" label="hk.dll"/>
  <int value="1409376135" label="windowsapihookdll32.dll"/>
  <int value="1617407227" label="spappsv32.dll"/>
  <int value="1671476533" label="crdli64.dll"/>
  <int value="1680432366" label="virtualCamera.ax"/>
  <int value="1736709911" label="bitguard.dll"/>
  <int value="1763208296" label="safetynut.dll"/>
  <int value="1806942655" label="dpinterface32.dll"/>
  <int value="1850669228" label="YCWebCameraSource.ax"/>
  <int value="1979101632" label="bsvc.dll"/>
  <int value="1996673448" label="scdetour.dll"/>
  <int value="2060768492" label="libwinhook.dll"/>
  <int value="2074150225" label="minisp32.dll"/>
  <int value="2117903235" label="cplushook.dll"/>
  <int value="2132270559" label="libsvn_tsvn32.dll"/>
</enum>

<enum name="DNS.AddressListDeltaType" type="int">
  <int value="0" label="Same addresses in the same order"/>
  <int value="1" label="Same addresses in a different order"/>
  <int value="2" label="Some but not all addresses in common"/>
  <int value="3" label="No addresses in common"/>
</enum>

<enum name="DNS.HostCache.EraseReason" type="int">
  <int value="0" label="Entry evicted"/>
  <int value="1" label="Cache cleared"/>
  <int value="2" label="Cache destroyed"/>
</enum>

<enum name="DNS.HostCache.LookupOutcome" type="int">
  <int value="0" label="Miss (absent)"/>
  <int value="1" label="Miss (stale when not requested)"/>
  <int value="2" label="Hit (valid)"/>
  <int value="3" label="Hit (stale when requested)"/>
</enum>

<enum name="DNS.HostCache.SetOutcome" type="int">
  <int value="0" label="Inserted new entry"/>
  <int value="1" label="Updated valid entry"/>
  <int value="2" label="Updated stale entry"/>
</enum>

<enum name="DNSEmptyAddressListAndNoError" type="int">
  <int value="0" label="Error reported or Address List is not empty"/>
  <int value="1" label="Success reported but Address List is empty"/>
</enum>

<enum name="DnsProbe.JobResult" type="int">
  <int value="0" label="SERVERS_UNKNOWN"/>
  <int value="1" label="SERVERS_CORRECT"/>
  <int value="2" label="SERVERS_INCORRECT"/>
  <int value="3" label="SERVERS_FAILING"/>
  <int value="4" label="SERVERS_UNREACHABLE"/>
</enum>

<enum name="DnsProbe.ObsoleteProbeResult" type="int">
  <int value="0" label="INCONCLUSIVE"/>
  <int value="1" label="NO_INTERNET"/>
  <int value="2" label="BAD_CONFIG"/>
  <int value="3" label="NXDOMAIN"/>
</enum>

<enum name="DnsProbe.ProbeStatus" type="int">
  <int value="0" label="POSSIBLE"/>
  <int value="1" label="NOT_RUN"/>
  <int value="2" label="STARTED"/>
  <int value="3" label="FINISHED_INCONCLUSIVE"/>
  <int value="4" label="FINISHED_NO_INTERNET"/>
  <int value="5" label="FINISHED_BAD_CONFIG"/>
  <int value="6" label="FINISHED_NXDOMAIN"/>
</enum>

<enum name="DnsProbe.SystemIsLocalhost" type="int">
  <int value="0" label="Not just 127.0.0.1">
    127.0.0.1 was not the only nameserver in the system DNS config.
  </int>
  <int value="1" label="Just 127.0.0.1">
    127.0.0.1 was the only nameserver in the system DNS config.
  </int>
</enum>

<enum name="DockedAction" type="int">
  <int value="0" label="None"/>
  <int value="1" label="Dock"/>
  <int value="2" label="Undock"/>
  <int value="3" label="Resize"/>
  <int value="4" label="Reorder"/>
  <int value="5" label="Evict"/>
  <int value="6" label="Maximize"/>
  <int value="7" label="Minimize"/>
  <int value="8" label="Restore"/>
  <int value="9" label="Close"/>
</enum>

<enum name="DockedActionSource" type="int">
  <int value="0" label="Unknown"/>
  <int value="1" label="Mouse"/>
  <int value="2" label="Touch"/>
  <int value="3" label="Keyboard"/>
</enum>

<enum name="DocumentWriteGatedEvaluation" type="int">
  <int value="0" label="Script too long"/>
  <int value="1" label="No likely external script write"/>
  <int value="2" label="Looping construct found"/>
  <int value="3" label="Script uses popular library"/>
  <int value="4" label="Script uses non-determinism"/>
</enum>

<enum name="DomainBoundCerts.GetCertResult" type="int">
  <int value="0" label="SYNC_SUCCESS"/>
  <int value="1" label="ASYNC_SUCCESS"/>
  <int value="2" label="ASYNC_CANCELLED"/>
  <int value="3" label="ASYNC_FAILURE_KEYGEN"/>
  <int value="4" label="ASYNC_FAILURE_CREATE_CERT"/>
  <int value="5" label="ASYNC_FAILURE_EXPORT_KEY"/>
  <int value="6" label="ASYNC_FAILURE_UNKNOWN"/>
  <int value="7" label="INVALID_ARGUMENT"/>
  <int value="8" label="UNSUPPORTED_TYPE"/>
  <int value="9" label="TYPE_MISMATCH"/>
  <int value="10" label="WORKER_FAILURE"/>
</enum>

<enum name="DomainBoundCerts.Support" type="int">
  <int value="0" label="DISABLED"/>
  <int value="1" label="CLIENT_ONLY"/>
  <int value="2" label="CLIENT_AND_SERVER"/>
  <int value="3" label="CLIENT_NO_ECC">
    Channel ID was enabled, but the client did not support elliptic curve key
    generation.
  </int>
  <int value="4" label="CLIENT_BAD_SYSTEM_TIME">
    Channel ID was enabled, but the client had an invalid system time which
    prevented using it.
  </int>
  <int value="5" label="CLIENT_NO_SERVER_BOUND_CERT_SERVICE">
    The SSLClientSocket was created without a ServerBoundCertService.
  </int>
</enum>

<enum name="DomainReliability.BooleanFailover" type="int">
  <int value="0" label="Used first collector"/>
  <int value="1" label="Failed over to another collector"/>
</enum>

<enum name="DoubleGetExperimentMethods" type="int">
  <int value="0" label="POST"/>
  <int value="1" label="GET_CACHABLE"/>
  <int value="2" label="GET_NON_CACHABLE"/>
</enum>

<enum name="DownloadContentDisposition" type="int">
  <int value="0" label="Content-Disposition header present"/>
  <int value="1" label="Valid"/>
  <int value="2" label="Has disposition-type"/>
  <int value="3" label="Has unknown disposition-type"/>
  <int value="4" label="Has 'name' attribute (Obsolete 04/2015)"/>
  <int value="5" label="Has 'filename' attribute"/>
  <int value="6" label="Has 'filename*' attribute"/>
  <int value="7" label="Has non-ASCII strings"/>
  <int value="8" label="Has percent encoded strings"/>
  <int value="9" label="Has RFC 2047 encoded strings"/>
  <int value="10" label="Has 'name' attribute only (Obsolete 04/2015)"/>
</enum>

<enum name="DownloadContentType" type="int">
  <int value="0" label="UNRECOGNIZED"/>
  <int value="1" label="TEXT"/>
  <int value="2" label="IMAGE"/>
  <int value="3" label="AUDIO"/>
  <int value="4" label="VIDEO"/>
  <int value="5" label="OCTET_STREAM"/>
  <int value="6" label="PDF"/>
  <int value="7" label="DOC"/>
  <int value="8" label="XLS"/>
  <int value="9" label="PPT"/>
  <int value="10" label="ARCHIVE"/>
  <int value="11" label="EXE"/>
  <int value="12" label="DMG"/>
  <int value="13" label="CRX"/>
</enum>

<enum name="DownloadCountType" type="int">
  <int value="0" label="Initiated by Navigation (Obsolete)"/>
  <int value="1" label="Initiated by Context Menu (Obsolete)"/>
  <int value="2" label="Initiated by SavePackage Failure (Obsolete)"/>
  <int value="3" label="Initiated by Drag-n-drop (Obsolete)"/>
  <int value="4" label="Initiated by Renderer (Obsolete)"/>
  <int value="5" label="Initiated and Unthrottled"/>
  <int value="6" label="Completed"/>
  <int value="7" label="Cancelled"/>
  <int value="8" label="Started"/>
  <int value="9" label="Interrupted"/>
  <int value="10" label="Calls to AppendDataToFile (Size) (Obsolete 8/2013)"/>
  <int value="11" label="Calls to AppendDataToFile (Count) (Obsolete 8/2013)"/>
  <int value="12" label="Interrupted at End of Download"/>
  <int value="13" label="Attempt to Append to Detached File"/>
  <int value="14" label="File Missing After Successful Scan"/>
  <int value="15" label="Supports ranges and strong ETag (Obsolete 11/2013)"/>
  <int value="16" label="No WebContents at interruption"/>
  <int value="17" label="Supports ranges and strong validation"/>
</enum>

<enum name="DownloadDatabaseRecordDroppedType" type="int">
  <int value="0" label="Bad State"/>
  <int value="1" label="Bad Danger Type"/>
</enum>

<enum name="DownloadDOMEvent" type="int">
  <int value="0" label="GetDownloads"/>
  <int value="1" label="OpenFile"/>
  <int value="2" label="Drag"/>
  <int value="3" label="SaveDangerous"/>
  <int value="4" label="DiscardDangerous"/>
  <int value="5" label="Show"/>
  <int value="6" label="Pause"/>
  <int value="7" label="Remove"/>
  <int value="8" label="Cancel"/>
  <int value="9" label="ClearAll"/>
  <int value="10" label="OpenFolder"/>
  <int value="11" label="Resume"/>
</enum>

<enum name="DownloadFilePickerResult" type="int">
  <int value="0" label="SAME"/>
  <int value="1" label="DIFFERENT_DIR"/>
  <int value="2" label="DIFFERENT_NAME"/>
  <int value="3" label="CANCEL"/>
</enum>

<enum name="DownloadFunctions" type="int">
  <int value="0" label="download"/>
  <int value="1" label="search"/>
  <int value="2" label="pause"/>
  <int value="3" label="resume"/>
  <int value="4" label="cancel"/>
  <int value="5" label="erase"/>
  <int value="6" label="set_destination"/>
  <int value="7" label="accept_danger"/>
  <int value="8" label="show"/>
  <int value="9" label="drag"/>
</enum>

<enum name="DownloadImageType" type="int">
  <int value="0" label="Unrecognized"/>
  <int value="1" label="GIF"/>
  <int value="2" label="JPEG"/>
  <int value="3" label="PNG"/>
  <int value="4" label="TIFF"/>
  <int value="5" label="ICON"/>
  <int value="6" label="WEBP"/>
</enum>

<enum name="DownloadInterruptedUnknownSizeType" type="int">
  <int value="0" label="Size Known"/>
  <int value="1" label="Size Unknown"/>
</enum>

<enum name="DownloadItem.DangerousFileType" type="int">
  <int value="0" label="unknown"/>
  <int value="1" label="ad"/>
  <int value="2" label="ade"/>
  <int value="3" label="adp"/>
  <int value="4" label="ah"/>
  <int value="5" label="apk"/>
  <int value="6" label="app"/>
  <int value="7" label="application"/>
  <int value="8" label="asp"/>
  <int value="9" label="asx"/>
  <int value="10" label="bas"/>
  <int value="11" label="bash"/>
  <int value="12" label="bat"/>
  <int value="13" label="cfg"/>
  <int value="14" label="chi"/>
  <int value="15" label="chm"/>
  <int value="16" label="class"/>
  <int value="17" label="cmd"/>
  <int value="18" label="com"/>
  <int value="19" label="command"/>
  <int value="20" label="crt"/>
  <int value="21" label="crx"/>
  <int value="22" label="csh"/>
  <int value="23" label="deb"/>
  <int value="24" label="dex"/>
  <int value="25" label="dll"/>
  <int value="26" label="drv"/>
  <int value="27" label="exe"/>
  <int value="28" label="fxp"/>
  <int value="29" label="grp"/>
  <int value="30" label="hlp"/>
  <int value="31" label="hta"/>
  <int value="32" label="htm"/>
  <int value="33" label="html"/>
  <int value="34" label="htt"/>
  <int value="35" label="inf"/>
  <int value="36" label="ini"/>
  <int value="37" label="ins"/>
  <int value="38" label="isp"/>
  <int value="39" label="jar"/>
  <int value="40" label="jnlp"/>
  <int value="41" label="user.js"/>
  <int value="42" label="js"/>
  <int value="43" label="jse"/>
  <int value="44" label="ksh"/>
  <int value="45" label="lnk"/>
  <int value="46" label="local"/>
  <int value="47" label="mad"/>
  <int value="48" label="maf"/>
  <int value="49" label="mag"/>
  <int value="50" label="mam"/>
  <int value="51" label="manifest"/>
  <int value="52" label="maq"/>
  <int value="53" label="mar"/>
  <int value="54" label="mas"/>
  <int value="55" label="mat"/>
  <int value="56" label="mau"/>
  <int value="57" label="mav"/>
  <int value="58" label="maw"/>
  <int value="59" label="mda"/>
  <int value="60" label="mdb"/>
  <int value="61" label="mde"/>
  <int value="62" label="mdt"/>
  <int value="63" label="mdw"/>
  <int value="64" label="mdz"/>
  <int value="65" label="mht"/>
  <int value="66" label="mhtml"/>
  <int value="67" label="mmc"/>
  <int value="68" label="mof"/>
  <int value="69" label="msc"/>
  <int value="70" label="msh"/>
  <int value="71" label="mshxml"/>
  <int value="72" label="msi"/>
  <int value="73" label="msp"/>
  <int value="74" label="mst"/>
  <int value="75" label="ocx"/>
  <int value="76" label="ops"/>
  <int value="77" label="pcd"/>
  <int value="78" label="pif"/>
  <int value="79" label="pkg"/>
  <int value="80" label="pl"/>
  <int value="81" label="plg"/>
  <int value="82" label="prf"/>
  <int value="83" label="prg"/>
  <int value="84" label="pst"/>
  <int value="85" label="py"/>
  <int value="86" label="pyc"/>
  <int value="87" label="pyw"/>
  <int value="88" label="rb"/>
  <int value="89" label="reg"/>
  <int value="90" label="rpm"/>
  <int value="91" label="scf"/>
  <int value="92" label="scr"/>
  <int value="93" label="sct"/>
  <int value="94" label="sh"/>
  <int value="95" label="shar"/>
  <int value="96" label="shb"/>
  <int value="97" label="shs"/>
  <int value="98" label="shtm"/>
  <int value="99" label="shtml"/>
  <int value="100" label="spl"/>
  <int value="101" label="svg"/>
  <int value="102" label="swf"/>
  <int value="103" label="sys"/>
  <int value="104" label="tcsh"/>
  <int value="105" label="url"/>
  <int value="106" label="vb"/>
  <int value="107" label="vbe"/>
  <int value="108" label="vbs"/>
  <int value="109" label="vsd"/>
  <int value="110" label="vsmacros"/>
  <int value="111" label="vss"/>
  <int value="112" label="vst"/>
  <int value="113" label="vsw"/>
  <int value="114" label="ws"/>
  <int value="115" label="wsc"/>
  <int value="116" label="wsf"/>
  <int value="117" label="wsh"/>
  <int value="118" label="xbap"/>
  <int value="119" label="xht"/>
  <int value="120" label="xhtm"/>
  <int value="121" label="xhtml"/>
  <int value="122" label="xml"/>
  <int value="123" label="xsl"/>
  <int value="124" label="xslt"/>
  <int value="125" label="website"/>
  <int value="126" label="msh1"/>
  <int value="127" label="msh2"/>
  <int value="128" label="msh1xml"/>
  <int value="129" label="msh2xml"/>
  <int value="130" label="ps1"/>
  <int value="131" label="ps1xml"/>
  <int value="132" label="ps2"/>
  <int value="133" label="ps2xml"/>
  <int value="134" label="psc1"/>
  <int value="135" label="psc2"/>
  <int value="136" label="xnk"/>
  <int value="137" label="appref-ms"/>
  <int value="138" label="gadget"/>
  <int value="139" label="efi"/>
  <int value="140" label="fon"/>
  <int value="141" label="partial"/>
  <int value="142" label="svg"/>
  <int value="143" label="xml"/>
  <int value="144" label="xrm_ms"/>
  <int value="145" label="xsl"/>
  <int value="146" label="action"/>
  <int value="147" label="bin"/>
  <int value="148" label="inx"/>
  <int value="149" label="ipa"/>
  <int value="150" label="isu"/>
  <int value="151" label="job"/>
  <int value="152" label="out"/>
  <int value="153" label="pad"/>
  <int value="154" label="paf"/>
  <int value="155" label="rgs"/>
  <int value="156" label="u3p"/>
  <int value="157" label="vbscript"/>
  <int value="158" label="workflow"/>
  <int value="159" label="001"/>
  <int value="160" label="7z"/>
  <int value="161" label="ace"/>
  <int value="162" label="arc"/>
  <int value="163" label="arj"/>
  <int value="164" label="b64"/>
  <int value="165" label="balz"/>
  <int value="166" label="bhx"/>
  <int value="167" label="bz"/>
  <int value="168" label="bz2"/>
  <int value="169" label="bzip2"/>
  <int value="170" label="cab"/>
  <int value="171" label="cpio"/>
  <int value="172" label="fat"/>
  <int value="173" label="gz"/>
  <int value="174" label="gzip"/>
  <int value="175" label="hfs"/>
  <int value="176" label="hqx"/>
  <int value="177" label="iso"/>
  <int value="178" label="lha"/>
  <int value="179" label="lpaq1"/>
  <int value="180" label="lpaq5"/>
  <int value="181" label="lpaq8"/>
  <int value="182" label="lzh"/>
  <int value="183" label="lzma"/>
  <int value="184" label="mim"/>
  <int value="185" label="ntfs"/>
  <int value="186" label="paq8f"/>
  <int value="187" label="paq8jd"/>
  <int value="188" label="paq8l"/>
  <int value="189" label="paq8o"/>
  <int value="190" label="pea"/>
  <int value="191" label="quad"/>
  <int value="192" label="r00"/>
  <int value="193" label="r01"/>
  <int value="194" label="r02"/>
  <int value="195" label="r03"/>
  <int value="196" label="r04"/>
  <int value="197" label="r05"/>
  <int value="198" label="r06"/>
  <int value="199" label="r07"/>
  <int value="200" label="r08"/>
  <int value="201" label="r09"/>
  <int value="202" label="r10"/>
  <int value="203" label="r11"/>
  <int value="204" label="r12"/>
  <int value="205" label="r13"/>
  <int value="206" label="r14"/>
  <int value="207" label="r15"/>
  <int value="208" label="r16"/>
  <int value="209" label="r17"/>
  <int value="210" label="r18"/>
  <int value="211" label="r19"/>
  <int value="212" label="r20"/>
  <int value="213" label="r21"/>
  <int value="214" label="r22"/>
  <int value="215" label="r23"/>
  <int value="216" label="r24"/>
  <int value="217" label="r25"/>
  <int value="218" label="r26"/>
  <int value="219" label="r27"/>
  <int value="220" label="r28"/>
  <int value="221" label="r29"/>
  <int value="222" label="rar"/>
  <int value="223" label="squashfs"/>
  <int value="224" label="swm"/>
  <int value="225" label="tar"/>
  <int value="226" label="taz"/>
  <int value="227" label="tbz"/>
  <int value="228" label="tbz2"/>
  <int value="229" label="tgz"/>
  <int value="230" label="tpz"/>
  <int value="231" label="txz"/>
  <int value="232" label="tz"/>
  <int value="233" label="udf"/>
  <int value="234" label="uu"/>
  <int value="235" label="uue"/>
  <int value="236" label="vhd"/>
  <int value="237" label="vmdk"/>
  <int value="238" label="wim"/>
  <int value="239" label="wrc"/>
  <int value="240" label="xar"/>
  <int value="241" label="xxe"/>
  <int value="242" label="xz"/>
  <int value="243" label="z"/>
  <int value="244" label="zip"/>
  <int value="245" label="zipx"/>
  <int value="246" label="zpaq"/>
  <int value="247" label="cdr"/>
  <int value="248" label="dart"/>
  <int value="249" label="dc42"/>
  <int value="250" label="diskcopy42"/>
  <int value="251" label="dmg"/>
  <int value="252" label="dmgpart"/>
  <int value="253" label="dvdr"/>
  <int value="254" label="img"/>
  <int value="255" label="imgpart"/>
  <int value="256" label="ndif"/>
  <int value="257" label="smi"/>
  <int value="258" label="sparsebundle"/>
  <int value="259" label="sparseimage"/>
  <int value="260" label="toast"/>
  <int value="261" label="udif"/>
  <int value="262" label="run"/>
  <int value="263" label="ad"/>
</enum>

<enum name="DownloadItem.DangerType" type="int">
  <int value="0" label="NOT_DANGEROUS"/>
  <int value="1" label="DANGEROUS_FILE"/>
  <int value="2" label="DANGEROUS_URL"/>
  <int value="3" label="DANGEROUS_CONTENT"/>
  <int value="4" label="MAYBE_DANGEROUS_CONTENT"/>
  <int value="5" label="UNCOMMON_CONTENT"/>
  <int value="6" label="USER_VALIDATED"/>
  <int value="7" label="DANGEROUS_HOST"/>
  <int value="8" label="POTENTIALLY_UNWANTED"/>
</enum>

<enum name="DownloadOpenMethod" type="int">
  <int value="0" label="Opened with plaform handler by default"/>
  <int value="1" label="Opened in browser by default"/>
  <int value="2" label="Opened with plaform handler by user choice"/>
</enum>

<enum name="DownloadOriginStateOnResumption" type="int">
  <int value="0" label="No changes"/>
  <int value="1" label="New redirects"/>
  <int value="2" label="New validators"/>
  <int value="3" label="New redirects + validators"/>
  <int value="4" label="New Content-Disposition"/>
  <int value="5" label="New redirects + Content-Disposition"/>
  <int value="6" label="New validators + Content-Disposition"/>
  <int value="7" label="New redirects + validators + Content-Disposition"/>
</enum>

<enum name="DownloadPassKitResult" type="int">
  <int value="0" label="Successful"/>
  <int value="1" label="Other Failure"/>
  <int value="2" label="Unauthorized Failure"/>
  <int value="3" label="Wrong MIME Type Failure"/>
</enum>

<enum name="DownloadSavePackageEvent" type="int">
  <int value="0" label="Started"/>
  <int value="1" label="Cancelled"/>
  <int value="2" label="Finished"/>
  <int value="3" label="Write to already completed file"/>
  <int value="4" label="Write to already failed file"/>
</enum>

<enum name="DownloadSource" type="int">
  <int value="0" label="Initiated by Save Package on Non-HTML content"/>
  <int value="1" label="Initiated by Drag-and-drop"/>
  <int value="2" label="Initiated by RPC from Renderer"/>
  <int value="3" label="Initiated by Save from Pepper"/>
  <int value="4" label="Initiated by Resumption"/>
</enum>

<enum name="DragDropEventSource" type="int">
  <int value="0" label="Mouse"/>
  <int value="1" label="Touch"/>
</enum>

<enum name="DriveApiErrorCode" type="int">
<!-- Generated from google_apis/drive/drive_api_error_codes.h -->

  <int value="200" label="HTTP_SUCCESS"/>
  <int value="201" label="HTTP_CREATED"/>
  <int value="204" label="HTTP_NO_CONTENT"/>
  <int value="302" label="HTTP_FOUND"/>
  <int value="304" label="HTTP_NOT_MODIFIED"/>
  <int value="308" label="HTTP_RESUME_INCOMPLETE"/>
  <int value="400" label="HTTP_BAD_REQUEST"/>
  <int value="401" label="HTTP_UNAUTHORIZED"/>
  <int value="403" label="HTTP_FORBIDDEN"/>
  <int value="404" label="HTTP_NOT_FOUND"/>
  <int value="409" label="HTTP_CONFLICT"/>
  <int value="410" label="HTTP_GONE"/>
  <int value="411" label="HTTP_LENGTH_REQUIRED"/>
  <int value="412" label="HTTP_PRECONDITION"/>
  <int value="500" label="HTTP_INTERNAL_SERVER_ERROR"/>
  <int value="501" label="HTTP_NOT_IMPLEMENTED"/>
  <int value="502" label="HTTP_BAD_GATEWAY"/>
  <int value="503" label="HTTP_SERVICE_UNAVAILABLE"/>
  <int value="1000" label="DRIVE_PARSE_ERROR"/>
  <int value="1001" label="DRIVE_FILE_ERROR"/>
  <int value="1002" label="DRIVE_CANCELLED"/>
  <int value="1003" label="DRIVE_OTHER_ERROR"/>
  <int value="1004" label="DRIVE_NO_CONNECTION"/>
  <int value="1005" label="DRIVE_NOT_READY"/>
  <int value="1006" label="DRIVE_NO_SPACE"/>
  <int value="1007" label="DRIVE_RESPONSE_TOO_LARGE"/>
</enum>

<enum name="DriveCacheDBOpenStatus" type="int">
  <int value="0" label="Success"/>
  <int value="1" label="Corrupt database"/>
  <int value="2" label="Unknown recoverable failure"/>
  <int value="3" label="Unrecoverable (disk full?) failure"/>
</enum>

<enum name="DriveEntryKind" type="int">
  <int value="0" label="Unknown"/>
  <int value="1" label="Item"/>
  <int value="2" label="Site"/>
  <int value="3" label="Document"/>
  <int value="4" label="Spereadsheet"/>
  <int value="5" label="Presentation"/>
  <int value="6" label="Drawing"/>
  <int value="7" label="Table"/>
  <int value="8" label="External app"/>
  <int value="9" label="Folder"/>
  <int value="10" label="File"/>
  <int value="11" label="PDF"/>
</enum>

<enum name="DriveFileFormat" type="int">
  <int value="0" label="AAC"/>
  <int value="1" label="ASF"/>
  <int value="2" label="AVI"/>
  <int value="3" label="CSV"/>
  <int value="4" label="DOC"/>
  <int value="5" label="DOCX"/>
  <int value="6" label="FLV"/>
  <int value="7" label="JPG"/>
  <int value="8" label="MJPG"/>
  <int value="9" label="MOV"/>
  <int value="10" label="MP3"/>
  <int value="11" label="MP4"/>
  <int value="12" label="MPG"/>
  <int value="13" label="OTHER"/>
  <int value="14" label="PDF"/>
  <int value="15" label="PPT"/>
  <int value="16" label="PPTX"/>
  <int value="17" label="PSD"/>
  <int value="18" label="RAR"/>
  <int value="19" label="WMA"/>
  <int value="20" label="WMV"/>
  <int value="21" label="XLS"/>
  <int value="22" label="XLSX"/>
  <int value="23" label="ZIP"/>
</enum>

<enum name="DriveMetadataDBInitStatus" type="int">
  <int value="0" label="Success"/>
  <int value="1" label="Not found"/>
  <int value="2" label="Corruption"/>
  <int value="3" label="IO error"/>
  <int value="4" label="Failed to open DB for unknown reason"/>
  <int value="5" label="Incompatible DB format"/>
  <int value="6" label="DB is broken"/>
  <int value="7" label="Opened existing DB."/>
  <int value="8" label="No existing DB was found. Created new DB."/>
  <int value="9" label="Cannot open existing DB. Created new DB."/>
</enum>

<enum name="DriveMetadataDBValidityCheckFailureReason" type="int">
  <int value="0" label="Invalid header"/>
  <int value="1" label="Broken ID entry"/>
  <int value="2" label="Broken entry"/>
  <int value="3" label="Invalid local ID"/>
  <int value="4" label="Invalid parent ID"/>
  <int value="5" label="Broken child map"/>
  <int value="6" label="Child entry count mismatch"/>
  <int value="7" label="Iterator error"/>
</enum>

<enum name="DriveUploadProtocol" type="int">
  <int value="0" label="Resumable"/>
  <int value="1" label="Multipart"/>
  <int value="2" label="Batch"/>
</enum>

<enum name="DTLS_SRTPCryptoSuite" type="int">
  <summary>
    DTLS/SRTP crypto suites from the IANA registry as specified at
    https://tools.ietf.org/html/rfc5764#section-4.1.2
  </summary>
  <int value="1" label="SRTP_AES128_CM_SHA1_80"/>
  <int value="2" label="SRTP_AES128_CM_SHA1_32"/>
  <int value="5" label="SRTP_NULL_SHA1_80"/>
  <int value="6" label="SRTP_NULL_SHA1_32"/>
</enum>

<enum name="DumpOutcome" type="int">
  <int value="0" label="Success"/>
  <int value="1" label="Failure"/>
  <int value="2" label="Unknown"/>
</enum>

<enum name="EAPInnerProtocol" type="int">
  <int value="0" label="UNKNOWN"/>
  <int value="1" label="NONE"/>
  <int value="2" label="PEAP-MD5"/>
  <int value="3" label="PEAP-MSCHAPV2"/>
  <int value="4" label="TTLS-EAP-MD5"/>
  <int value="5" label="TTLS-EAP-MSCHAPV2"/>
  <int value="6" label="TTLS-MSCHAPV2"/>
  <int value="7" label="TTLS-MSCHAP"/>
  <int value="8" label="TTLS-PAP"/>
  <int value="9" label="TTLS-CHAP"/>
</enum>

<enum name="EAPOuterProtocol" type="int">
  <int value="0" label="UNKNOWN"/>
  <int value="1" label="LEAP"/>
  <int value="2" label="PEAP"/>
  <int value="3" label="TLS"/>
  <int value="4" label="TTLS"/>
</enum>

<enum name="EasyUnlockAuthEvent" type="int">
  <int value="0" label="Smart Lock success"/>
  <int value="1" label="Smart Lock failure"/>
  <int value="2" label="Password entry: No pairing"/>
  <int value="3" label="Password entry: Pairing changed"/>
  <int value="4" label="Password entry: User hardlock"/>
  <int value="5" label="Password entry: Service not active"/>
  <int value="6" label="Password entry: No Bluetooth"/>
  <int value="7" label="Password entry: Bluetooth connecting"/>
  <int value="8" label="Password entry: No phone"/>
  <int value="9" label="Password entry: Phone not authenticated"/>
  <int value="10" label="Password entry: Phone locked"/>
  <int value="11" label="Password entry: Phone not lockable"/>
  <int value="12" label="Password entry: RSSI too low"/>
  <int value="13" label="Password entry: Phone not supported"/>
  <int value="14" label="Password entry: Phone authenticated"/>
  <int value="15" label="Password entry: Tx power too high"/>
  <int value="16" label="Password entry: Easy sign-in failed"/>
  <int value="17" label="Password entry: Pairing added"/>
  <int value="18" label="Password entry: No screenlock state handler"/>
  <int value="19" label="Password entry: Phone locked and tx power too high"/>
</enum>

<enum name="EasyUnlockBluetoothType" type="int">
  <int value="0" label="No adapter"/>
  <int value="1" label="Normal"/>
  <int value="2" label="Low energy"/>
</enum>

<enum name="EasyUnlockButton" type="int">
  <int value="0" label="Setup app launches"/>
  <int value="1" label="Find device"/>
  <int value="2" label="Pair device"/>
  <int value="3" label="Try out"/>
  <int value="4" label="Enable"/>
  <int value="5" label="Disable"/>
  <int value="6" label="Dismiss ('done')"/>
</enum>

<enum name="EasyUnlockDeviceIneligibilityReason" type="int">
  <int value="0" label="Unrecognized reason">
    The server reported a reason that the client is not aware of. This should
    only be recorded if the client's list of possible reasons is out of date.
  </int>
  <int value="1" label="Unknown">
    The server returned the value &quot;Unknown&quot;.
  </int>
  <int value="2" label="Screen too large"/>
  <int value="3" label="Phone lacks Bluetooth"/>
  <int value="4" label="Bad OS version"/>
  <int value="5" label="Bad software version (GMS Core)"/>
  <int value="6" label="Auto unlocking not supported"/>
  <int value="7" label="Invalid credentials"/>
  <int value="8" label="Device offline"/>
  <int value="9" label="No recent updates"/>
</enum>

<enum name="EasyUnlockDeviceModelHash" type="int">
  <int value="-1829584143" label="Motorola XT1097"/>
  <int value="-1429808627" label="HTC One"/>
  <int value="-1168032746" label="Motorola Nexus 6"/>
  <int value="-617422855" label="LGE Nexus 4"/>
  <int value="684891985" label="Motorola Moto X"/>
  <int value="1286382027" label="Motorola XT1095"/>
  <int value="1412446710" label="Motorola XT1096"/>
  <int value="1881443083" label="LGE Nexus 5"/>
</enum>

<enum name="EasyUnlockDidUserManuallyUnlockPhone" type="int">
  <int value="0" label="Never locked"/>
  <int value="1" label="Manually unlocked"/>
</enum>

<enum name="EasyUnlockHasSecureScreenLock" type="int">
  <int value="0" label="Lacks secure screen lock"/>
  <int value="1" label="Has secure screen lock"/>
</enum>

<enum name="EasyUnlockHasTrustAgentEnabled" type="int">
  <int value="0" label="No trust agents enabled"/>
  <int value="1" label="1+ trust agents enabled"/>
</enum>

<enum name="EasyUnlockNotificationEvent" type="int">
  <int value="0" label="Set up notification shown"/>
  <int value="1" label="Set up notification clicked"/>
  <int value="2" label="Try out notification shown"/>
  <int value="3" label="Try out notification clicked"/>
</enum>

<enum name="EasyUnlockPromoNotificationEvent" type="int">
  <int value="0" label="Promo notification shown"/>
  <int value="1" label="Promo notification clicked"/>
  <int value="2" label="Promo notification dismissed"/>
  <int value="3" label="Setup app launched"/>
  <int value="4" label="Setup completed successfully"/>
</enum>

<enum name="EasyUnlockRemoteLockScreenState" type="int">
  <int value="0" label="Unknown state"/>
  <int value="1" label="Lock screen disabled, trust agent unsupported"/>
  <int value="2" label="Lock screen disabled, trust agent disabled"/>
  <int value="3" label="Lock screen disabled, trust agent enabled"/>
  <int value="4" label="Lock screen enabled, trust agent unsupported"/>
  <int value="5" label="Lock screen enabled, trust agent disabled"/>
  <int value="6" label="Lock screen enabled, trust agent enabled"/>
</enum>

<enum name="EasyUnlockSetupState" type="int">
  <int value="0" label="Success"/>
  <int value="1" label="Scan (initial)"/>
  <int value="2" label="Scan (in progress)"/>
  <int value="3" label="Scan (error)"/>
  <int value="4" label="Pairing (initial)"/>
  <int value="5" label="Pairing (in progress)"/>
  <int value="6" label="Pairing (error)"/>
  <int value="7" label="Help"/>
</enum>

<enum name="EasyUnlockTrialRunEvents" type="int">
  <int value="0" label="Trial run launched"/>
  <int value="1" label="User clicked lock icon"/>
</enum>

<enum name="EasyUnlockUnlockEvent" type="int">
  <int value="0" label="Screen unlocked (total)"/>
  <int value="1" label="Screen unlocked (via EasyUnlock)"/>
</enum>

<enum name="ECDHECurves" type="int">
  <int value="21" label="P-224"/>
  <int value="23" label="P-256"/>
  <int value="24" label="P-384"/>
  <int value="25" label="P-521"/>
  <int value="29" label="X25519"/>
</enum>

<enum name="EGLDisplayType" type="int">
  <int value="0" label="Default"/>
  <int value="1" label="SwiftShader"/>
  <int value="2" label="ANGLE WARP"/>
  <int value="3" label="ANGLE D3D9"/>
  <int value="4" label="ANGLE D3D11"/>
  <int value="5" label="ANGLE OpenGL"/>
  <int value="6" label="ANGLE OpenGL ES"/>
</enum>

<enum name="EmbeddedWorkerStartingPhase" type="int">
  <int value="0" label="NOT_STARTING"/>
  <int value="1" label="ALLOCATING_PROCESS"/>
  <int value="2" label="REGISTERING_TO_DEVTOOLS"/>
  <int value="3" label="SENT_START_WORKER"/>
  <int value="4" label="SCRIPT_DOWNLOADING"/>
  <int value="5" label="SCRIPT_LOADED"/>
  <int value="6" label="SCRIPT_EVALUATED"/>
  <int value="7" label="THREAD_STARTED"/>
  <int value="8" label="SCRIPT_READ_STARTED"/>
  <int value="9" label="SCRIPT_READ_FINISHED"/>
</enum>

<enum name="EncodingMethod" type="int">
  <int value="0" label="UNKNOWN"/>
  <int value="1" label="Big5"/>
  <int value="2" label="EUC-JP"/>
  <int value="3" label="EUC-KR"/>
  <int value="4" label="GBK"/>
  <int value="5" label="IBM866"/>
  <int value="6" label="ISO-2022-JP"/>
  <int value="7" label="ISO-8859-10"/>
  <int value="8" label="ISO-8859-13"/>
  <int value="9" label="ISO-8859-14"/>
  <int value="10" label="ISO-8859-15"/>
  <int value="11" label="ISO-8859-16"/>
  <int value="12" label="ISO-8859-2"/>
  <int value="13" label="ISO-8859-3"/>
  <int value="14" label="ISO-8859-4"/>
  <int value="15" label="ISO-8859-5"/>
  <int value="16" label="ISO-8859-6"/>
  <int value="17" label="ISO-8859-7"/>
  <int value="18" label="ISO-8859-8"/>
  <int value="19" label="ISO-8859-8-I"/>
  <int value="20" label="KOI8-R"/>
  <int value="21" label="KOI8-U"/>
  <int value="22" label="Shift_JIS"/>
  <int value="23" label="UTF-16LE"/>
  <int value="24" label="UTF-8"/>
  <int value="25" label="gb18030"/>
  <int value="26" label="macintosh"/>
  <int value="27" label="windows-1250"/>
  <int value="28" label="windows-1251"/>
  <int value="29" label="windows-1252"/>
  <int value="30" label="windows-1253"/>
  <int value="31" label="windows-1254"/>
  <int value="32" label="windows-1255"/>
  <int value="33" label="windows-1256"/>
  <int value="34" label="windows-1257"/>
  <int value="35" label="windows-1258"/>
  <int value="36" label="windows-874"/>
</enum>

<enum name="EnhancedBookmarkViewMode" type="int">
  <obsolete>
    Deprecated 9/2015.
  </obsolete>
  <int value="0" label="Default view mode"/>
  <int value="1" label="List view mode"/>
  <int value="2" label="Grid view mode"/>
</enum>

<enum name="EnrollmentStatus" type="int">
  <int value="0" label="Non-managed"/>
  <int value="1" label="Managed EDU (Deprecated)"/>
  <int value="2" label="Managed"/>
  <int value="3" label="Error"/>
</enum>

<enum name="EnterpriseAttributesTPMConsistencyType" type="int">
  <int value="0" label="no attributes, other mode, TPM unlocked">
    valid: machine in pristine state
  </int>
  <int value="1" label="locked attributes, other mode, TPM unlocked">
    rare: install attributes locked but TPM clear (could happen if taking TPM
    ownership carries over a reboot)
  </int>
  <int value="2" label="no attributes, enterprise mode, TPM unlocked">
    impossible: non-existent install attributes cannot yield enterprise mode
  </int>
  <int value="3" label="locked attributes, enterprise mode, TPM unlocked">
    rare: install attributes locked but TPM clear (could happen if taking TPM
    ownership carries over a reboot)
  </int>
  <int value="4" label="no attributes, other mode, TPM locked">
    inconsistent: install attributes clear but TPM locked
  </int>
  <int value="5" label="locked attributes, other mode, TPM locked">
    valid: consumer owned
  </int>
  <int value="6" label="no attributes, enterprise mode, TPM locked">
    impossible: non-existent install attributes cannot yield enterprise mode
  </int>
  <int value="7" label="locked attributes, enterprise mode, TPM locked">
    valid: enterprise enrolled
  </int>
  <int value="8" label="TPM unreachable">error: cryptohomed unreachable</int>
</enum>

<enum name="EnterpriseCheckError" type="int">
  <summary>
    Defined as DomainCheckErrors in
    components/policy/core/common/policy_loader_win.cc.
  </summary>
  <int value="0" label="Cound not get net join info."/>
  <int value="1" label="Cound not bind to domain controller."/>
</enum>

<enum name="EnterpriseDeviceManagementStatus" type="int">
  <summary>
    Status codes produced by DeviceManagementService for requests made to the
    device management server as defined in
    components/policy/core/common/cloud/cloud_policy_constants.h.
  </summary>
  <int value="0" label="SUCCESS"/>
  <int value="1" label="REQUEST_INVALID"/>
  <int value="2" label="REQUEST_FAILED"/>
  <int value="3" label="TEMPORARY_UNAVAILABLE"/>
  <int value="4" label="HTTP_STATUS_ERROR"/>
  <int value="5" label="RESPONSE_DECODING_ERROR"/>
  <int value="6" label="SERVICE_MANAGEMENT_NOT_SUPPORTED"/>
  <int value="7" label="SERVICE_DEVICE_NOT_FOUND"/>
  <int value="8" label="SERVICE_MANAGEMENT_TOKEN_INVALID"/>
  <int value="9" label="SERVICE_ACTIVATION_PENDING"/>
  <int value="10" label="SERVICE_INVALID_SERIAL_NUMBER"/>
  <int value="11" label="SERVICE_DEVICE_ID_CONFLICT"/>
  <int value="12" label="SERVICE_MISSING_LICENSES"/>
  <int value="13" label="SERVICE_DEPROVISIONED"/>
  <int value="14" label="SERVICE_DOMAIN_MISMATCH"/>
  <int value="902" label="SERVICE_POLICY_NOT_FOUND"/>
</enum>

<enum name="EnterpriseDMTokenType" type="int">
  <summary>
    Result of DMToken operations as defined in
    components/policy/core/common/cloud/enterprise_metrics.h.
  </summary>
  <int value="0" label="Load Succeeded">
    A cached token was successfully loaded from disk.
  </int>
  <int value="1" label="Load Failed">
    Reading a cached token from disk failed.
  </int>
  <int value="2" label="Fetch Requested">
    A token fetch request was sent to the DM server.
  </int>
  <int value="3" label="Fetch Request Failed">
    The request was invalid, or the HTTP request failed.
  </int>
  <int value="4" label="Fetch Server Failed">
    Error HTTP status received, or the DM server failed in another way.
  </int>
  <int value="5" label="Fetch Response Received">
    A response to the fetch request was received.
  </int>
  <int value="6" label="Fetch Bad Response">
    The response received was invalid. This happens when some expected data was
    not present in the response.
  </int>
  <int value="7" label="Fetch Management Not Supported">
    DM server reported that management is not supported.
  </int>
  <int value="8" label="Fetch Device Not Found">
    DM server reported that the given device ID was not found.
  </int>
  <int value="9" label="Fetch OK">DM token successfully retrieved.</int>
  <int value="10" label="Store Succeeded">
    Successfully cached a token to disk.
  </int>
  <int value="11" label="Store Failed">Caching a token to disk failed.</int>
  <int value="12" label="Device ID Conflict">The Device-ID is not unique.</int>
  <int value="13" label="Invalid Serial">
    Serial number rejected by DMServer.
  </int>
  <int value="14" label="Missing Licenses">
    No more licenses available for that domain.
  </int>
</enum>

<enum name="EnterpriseDomainRegex" type="int">
  <summary>Which domain regex generated an ICU error.</summary>
  <int value="0" label="aol"/>
  <int value="1" label="googlemail"/>
  <int value="2" label="gmail"/>
  <int value="3" label="hotmail"/>
  <int value="4" label="live"/>
  <int value="5" label="mail.ru"/>
  <int value="6" label="msn"/>
  <int value="7" label="qq"/>
  <int value="8" label="yahoo"/>
  <int value="9" label="yandex"/>
</enum>

<enum name="EnterpriseEnrollmentType" type="int">
  <summary>
    Result of device enrollment as defined in
    components/policy/core/common/cloud/enterprise_metrics.h.
  </summary>
  <int value="0" label="Cancelled">
    User pressed 'Cancel' during the enrollment process.
  </int>
  <int value="1" label="Started with valid credentials">
    The user submitted valid GAIA credentials to start the enrollment process.
  </int>
  <int value="2" label="OAuth fetch: network failed">
    OAuth token fetch failed: network error.
  </int>
  <int value="3" label="Login Failed">
    OAuth token fetch failed: login error.
  </int>
  <int value="4" label="Not Supported">
    Registration / policy fetch failed: DM server reports management not
    supported.
  </int>
  <int value="5" label="Policy Failed (unused)">
    UNUSED: Enrollment failed because it failed to apply device policy.
  </int>
  <int value="6" label="Other Failed (unused)">
    UNUSED: Enrollment failed due to an unexpected error. This currently happens
    when the GAIA auth token is not issued for the DM service, the device cloud
    policy subsystem isn't initialized, or when fetching GAIA tokens fails for
    an unknown reason.
  </int>
  <int value="7" label="OK">Enrollment was successful.</int>
  <int value="8" label="Registration/fetch: invalid Serial">
    Registration / policy fetch failed: DM server reports that the serial number
    we try to register is not assigned to the domain used.
  </int>
  <int value="9" label="Auto-enrollment Started (unused)">
    UNUSED: Auto-enrollment started automatically after sign-in.
  </int>
  <int value="10" label="Auto-enrollment Failed (unused)">
    UNUSED: Auto-enrollment failed.
  </int>
  <int value="11" label="Auto-enrollment Restarted (unused)">
    UNUSED: Auto-enrollment started again after a failure.
  </int>
  <int value="12" label="Auto-enrollment Cancelled (unused)">
    UNUSED: User opted-out of auto-enrollment.
  </int>
  <int value="13" label="Auto-enrollment OK (unused)">
    UNUSED: Auto-enrollment OK.
  </int>
  <int value="14" label="Invalid enrollment mode">
    Registration failed: DM server returns unknown/disallowed enrollment mode.
  </int>
  <int value="15" label="Auto-enrollment not supported (unused)">
    UNUSED: Auto-enrollment is not supported for the mode supplied by the
    server.  This presently means trying to auto-enroll in kiosk mode.
  </int>
  <int value="16" label="Install attributes timeout">
    Lockbox initialization took too long to complete.
  </int>
  <int value="17" label="Lockbox domain mismatch on re-enrollment">
    Lockbox error on re-enrollment: domain does not match install attributes.
  </int>
  <int value="18" label="Registration/fetch: missing licenses">
    Registration / policy fetch failed: DM server reports licenses expired or
    exhausted.
  </int>
  <int value="19" label="Robot auth code fetch failed">
    Failed to fetch device robot authorization code from DM Server.
  </int>
  <int value="20" label="Robot refresh token fetch failed">
    Failed to fetch device robot refresh token from GAIA.
  </int>
  <int value="21" label="Robot refresh token store failed">
    Failed to persist robot account refresh token on device.
  </int>
  <int value="22" label="Registration/fetch: deprovisioned device">
    Registration / policy fetch failed: DM server reports administrator
    deprovisioned the device.
  </int>
  <int value="23" label="Registration/fetch: domain mismatch">
    Registration / policy fetch failed: DM server reports domain mismatch.
  </int>
  <int value="24" label="Triggered">
    Enrollment has been triggered, the webui login screen has been shown.
  </int>
  <int value="25" label="Restarted with valid credentials">
    The user submitted valid GAIA credentials to start the enrollment process
    for the second (or further) time.
  </int>
  <int value="26" label="Store token and ID failed">
    Failed to store DM token and device ID.
  </int>
  <int value="27" label="Error getting FRE state keys">
    Failed to obtain FRE state keys.
  </int>
  <int value="28" label="Error validating policy">
    Failed to validate policy.
  </int>
  <int value="29" label="Error in CloudPolicyStore">
    Failed due to error in CloudPolicyStore.
  </int>
  <int value="30" label="Error locking device (unused)">
    UNUSED: Failed to lock device.
  </int>
  <int value="31" label="Registration/fetch: request payload invalid">
    Registration / policy fetch failed: DM server reports invalid request
    payload.
  </int>
  <int value="32" label="Registration/fetch: device not found">
    Registration / policy fetch failed: DM server reports device not found.
  </int>
  <int value="33" label="Registration/fetch: DM token invalid">
    Registration / policy fetch failed: DM server reports DM token invalid.
  </int>
  <int value="34" label="Registration/fetch: activation pending">
    Registration / policy fetch failed: DM server reports activation pending.
  </int>
  <int value="35" label="Registration/fetch: device ID conflict">
    Registration / policy fetch failed: DM server reports device ID conflict.
  </int>
  <int value="36" label="Registration/fetch: policy not found">
    Registration / policy fetch failed: DM server can't find policy.
  </int>
  <int value="37" label="Registration/fetch: HTTP request failed">
    Registration / policy fetch failed: HTTP request failed.
  </int>
  <int value="38" label="Registration/fetch: temporary unavailable">
    Registration / policy fetch failed: DM server reports temporary problem.
  </int>
  <int value="39" label="Registration/fetch: HTTP error response">
    Registration / policy fetch failed: DM server returns non-success HTTP
    status code.
  </int>
  <int value="40" label="Registration/fetch: invalid response">
    Registration / policy fetch failed: can't decode DM server response.
  </int>
  <int value="41" label="OAuth fetch: account not signed up">
    OAuth token fetch failed: account not signed up.
  </int>
  <int value="42" label="OAuth fetch: account deleted">
    OAuth token fetch failed: account deleted.
  </int>
  <int value="43" label="OAuth fetch: account disabled">
    OAuth token fetch failed: account disabled.
  </int>
  <int value="44" label="Re-enrollment: pre-check domain mismatch">
    Re-enrollment pre-check failed: domain does not match install attributes.
  </int>
  <int value="45" label="Lockbox initialization failed">
    Lockbox backend failed to initialize.
  </int>
  <int value="46" label="Lockbox already locked">
    Lockbox backend (TPM) already locked.
  </int>
  <int value="47" label="Lockbox set attribute failed">
    Lockbox failure setting attributes.
  </int>
  <int value="48" label="Lockbox locking failed">
    Lockbox failure during locking.
  </int>
  <int value="49" label="Lockbox inconsistent read back">
    Lockbox read back is inconsistent.
  </int>
  <int value="50" label="Device attributes update failed">
    Failed to update device attributes.
  </int>
  <int value="51" label="Lockbox device mode mismatch">
    Enrollment mode does not match already locked install attributes.
  </int>
</enum>

<enum name="EnterprisePolicies" type="int">
<!-- Generated from components/policy/resources/policy_templates.json -->

  <int value="1" label="Configure the home page URL"/>
  <int value="2" label="Use New Tab Page as homepage"/>
  <int value="3" label="Set Google Chrome as Default Browser"/>
  <int value="4" label="Application locale"/>
  <int value="5" label="Enable alternate error pages"/>
  <int value="6" label="Enable search suggestions"/>
  <int value="7" label="Enable network prediction"/>
  <int value="8" label="Disable SPDY protocol"/>
  <int value="9" label="Enable JavaScript"/>
  <int value="10" label="Enable Incognito mode"/>
  <int value="11" label="Disable saving browser history"/>
  <int value="12" label="Enable printing"/>
  <int value="13" label="Enable Google Cloud Print proxy"/>
  <int value="14" label="Enable Safe Browsing"/>
  <int value="15" label="Enable reporting of usage and crash-related data"/>
  <int value="16" label="Enable saving passwords to the password manager"/>
  <int value="17" label="Allow users to show passwords in Password Manager"/>
  <int value="18" label="Enable AutoFill"/>
  <int value="19" label="Specify a list of disabled plugins"/>
  <int value="20" label="Disable synchronization of data with Google"/>
  <int value="21" label="Choose how to specify proxy server settings"/>
  <int value="22" label="Choose how to specify proxy server settings"/>
  <int value="23" label="Address or URL of proxy server"/>
  <int value="24" label="URL to a proxy .pac file"/>
  <int value="25" label="Proxy bypass rules"/>
  <int value="26" label="Supported authentication schemes"/>
  <int value="27"
      label="Disable CNAME lookup when negotiating Kerberos authentication"/>
  <int value="28" label="Include non-standard port in Kerberos SPN"/>
  <int value="29" label="Authentication server whitelist"/>
  <int value="30" label="Kerberos delegation server whitelist"/>
  <int value="31" label="GSSAPI library name"/>
  <int value="32" label="Configure extension installation blacklist"/>
  <int value="33" label="Configure extension installation whitelist"/>
  <int value="34"
      label="Configure the list of force-installed apps and extensions"/>
  <int value="35" label="Show Home button on toolbar"/>
  <int value="36" label="Disable Developer Tools"/>
  <int value="37" label="Action on startup"/>
  <int value="38" label="URLs to open on startup"/>
  <int value="39" label="Block third party cookies"/>
  <int value="40" label="Enable the default search provider"/>
  <int value="41" label="Default search provider name"/>
  <int value="42" label="Default search provider keyword"/>
  <int value="43" label="Default search provider search URL"/>
  <int value="44" label="Default search provider suggest URL"/>
  <int value="45" label="Default search provider instant URL"/>
  <int value="46" label="Default search provider icon"/>
  <int value="47" label="Default search provider encodings"/>
  <int value="48" label="Default cookies setting"/>
  <int value="49" label="Default images setting"/>
  <int value="50" label="Default JavaScript setting"/>
  <int value="51" label="Default plugins setting"/>
  <int value="52" label="Default popups setting"/>
  <int value="53" label="Default notification setting"/>
  <int value="54" label="Default geolocation setting"/>
  <int value="55" label="Disable support for 3D graphics APIs"/>
  <int value="56" label="Refresh rate for user policy"/>
  <int value="57" label="Default HTML renderer for Google Chrome Frame"/>
  <int value="58"
      label="Always render the following URL patterns in Google Chrome Frame"/>
  <int value="59"
      label="Always render the following URL patterns in the host browser"/>
  <int value="60"
      label="Allow Google Chrome Frame to handle the listed content types"/>
  <int value="61" label="Enable lock when the device become idle or suspended"/>
  <int value="62" label="Enable Instant"/>
  <int value="63" label="Set user data directory"/>
  <int value="64" label="Set download directory"/>
  <int value="65" label="Clear site data on browser shutdown (deprecated)"/>
  <int value="66" label="Specify whether the plugin finder should be disabled"/>
  <int value="67" label="Block cookies on these sites"/>
  <int value="68" label="Allow session only cookies on these sites"/>
  <int value="69" label="Allow images on these sites"/>
  <int value="70" label="Block images on these sites"/>
  <int value="71" label="Allow JavaScript on these sites"/>
  <int value="72" label="Block JavaScript on these sites"/>
  <int value="73" label="Allow plugins on these sites"/>
  <int value="74" label="Block plugins on these sites"/>
  <int value="75" label="Allow popups on these sites"/>
  <int value="76" label="Block popups on these sites"/>
  <int value="77" label="Allow cookies on these sites"/>
  <int value="78" label="Specify a list of enabled plugins"/>
  <int value="79"
      label="Specify a list of plugins that the user can enable or disable"/>
  <int value="80" label="Enable Translate"/>
  <int value="81" label="Allow running plugins that are outdated"/>
  <int value="82" label="Enable Bookmark Bar"/>
  <int value="83" label="Enables or disables bookmark editing"/>
  <int value="84" label="Allow invocation of file selection dialogs"/>
  <int value="85" label="Disable URL protocol schemes"/>
  <int value="86" label="Always runs plugins that require authorization"/>
  <int value="87" label="Set Google Chrome Frame user data directory"/>
  <int value="88" label="Set disk cache directory"/>
  <int value="89" label="Cross-origin HTTP Basic Auth prompts"/>
  <int value="90" label="Refresh rate for Device Policy"/>
  <int value="91" label="Release channel"/>
  <int value="92"
      label="Maximal number of concurrent connections to the proxy server"/>
  <int value="93" label="Incognito mode availability"/>
  <int value="94" label="Enable firewall traversal from remote access client"/>
  <int value="95" label="Enable firewall traversal from remote access host"/>
  <int value="96"
      label="Prevent app promotions from appearing on the new tab page"/>
  <int value="97" label="Import bookmarks from default browser on first run"/>
  <int value="98"
      label="Import browsing history from default browser on first run"/>
  <int value="99" label="Import of homepage from default browser on first run"/>
  <int value="100"
      label="Import search engines from default browser on first run"/>
  <int value="101"
      label="Import saved passwords from default browser on first run"/>
  <int value="102"
      label="Automatically select client certificates for these sites"/>
  <int value="103" label="Block access to a list of URLs"/>
  <int value="104" label="Allows access to a list of URLs"/>
  <int value="105" label="Allow notifications on these sites"/>
  <int value="106" label="Block notifications on these sites"/>
  <int value="107" label="User-level network configuration"/>
  <int value="108" label="Device-level network configuration"/>
  <int value="109"
      label="Enable submission of documents to Google Cloud Print"/>
  <int value="110" label="Set disk cache size in bytes"/>
  <int value="111" label="Set media disk cache size in bytes"/>
  <int value="112" label="Enterprise web store URL (deprecated)"/>
  <int value="113" label="Enterprise web store name (deprecated)"/>
  <int value="114"
      label="Enable TLS domain-bound certificates extension (deprecated)"/>
  <int value="115"
      label="Enable reporting memory info (JS heap size) to page (deprecated)"/>
  <int value="116" label="Proxy settings"/>
  <int value="117" label="Disable Print Preview (deprecated)"/>
  <int value="118" label="Disable TLS False Start"/>
  <int value="119" label="Report OS and firmware version"/>
  <int value="120" label="Report device activity times"/>
  <int value="121" label="Report device boot mode"/>
  <int value="122" label="Login user white list"/>
  <int value="123" label="Allow creation of new user accounts"/>
  <int value="124" label="Enable guest mode"/>
  <int value="125" label="Show usernames on login screen"/>
  <int value="126" label="Enable data roaming"/>
  <int value="127" label="Enable metrics reporting"/>
  <int value="128" label="Wipe user data on sign-out"/>
  <int value="129" label="Whether online OCSP/CRL checks are performed"/>
  <int value="130" label="Timeout until idle user log-out is executed"/>
  <int value="131" label="Duration of the idle log-out warning message"/>
  <int value="132"
      label="Screen saver to be used on the sign-in screen in retail mode"/>
  <int value="133"
      label="Duration of inactivity before the screen saver is shown on the
             sign-in screen in retail mode"/>
  <int value="134"
      label="Whether the release channel should be configurable by the user"/>
  <int value="135" label="List of AppPack extensions"/>
  <int value="136" label="Disables Auto Update"/>
  <int value="137" label="Load specified urls on demo login"/>
  <int value="138"
      label="Continue running background apps when Google Chrome is closed"/>
  <int value="139" label="Disables Drive in the Google Chrome OS Files app"/>
  <int value="140"
      label="Disables Google Drive over cellular connections in the Google
             Chrome OS Files app"/>
  <int value="141"
      label="Additional command line parameters for Google Chrome"/>
  <int value="142" label="Target Auto Update Version"/>
  <int value="143" label="Report device location"/>
  <int value="144" label="List of pinned apps to show in the launcher"/>
  <int value="145" label="Auto update scatter factor"/>
  <int value="146" label="Connection types allowed for updates"/>
  <int value="147"
      label="Restrict which users are allowed to sign in to Google Chrome"/>
  <int value="148"
      label="Configure extension, app, and user script install sources"/>
  <int value="149" label="Default mediastream setting"/>
  <int value="150"
      label="Disable proceeding from the Safe Browsing warning page"/>
  <int value="151" label="Enable or disable spell checking web service"/>
  <int value="152" label="Disable mounting of external storage"/>
  <int value="153" label="Disable taking screenshots"/>
  <int value="154"
      label="Configure the required domain name for remote access hosts"/>
  <int value="155"
      label="Enable two-factor authentication for remote access hosts"/>
  <int value="156"
      label="Configure the TalkGadget prefix for remote access hosts"/>
  <int value="157" label="Enable curtaining of remote access hosts"/>
  <int value="158" label="Timezone"/>
  <int value="159" label="Allow playing audio"/>
  <int value="160" label="Allow or deny audio capture"/>
  <int value="161"
      label="List of alternate URLs for the default search provider"/>
  <int value="162" label="Force SafeSearch"/>
  <int value="163" label="Device-local accounts"/>
  <int value="164" label="Add a logout button to the system tray"/>
  <int value="165" label="Use built-in DNS client"/>
  <int value="166" label="Control shelf auto-hiding"/>
  <int value="167" label="Allow or deny video capture"/>
  <int value="168" label="Configure allowed app/extension types"/>
  <int value="169" label="Set the display name for device-local accounts"/>
  <int value="170" label="Limit the session length"/>
  <int value="171"
      label="Parameter controlling search term placement for the default
             search provider"/>
  <int value="172" label="Screen dim delay when running on AC power"/>
  <int value="173" label="Screen off delay when running on AC power"/>
  <int value="174" label="Screen lock delay when running on AC power"/>
  <int value="175" label="Idle delay when running on AC power"/>
  <int value="176" label="Screen dim delay when running on battery power"/>
  <int value="177" label="Screen off delay when running on battery power"/>
  <int value="178" label="Screen lock delay when running on battery power"/>
  <int value="179" label="Idle delay when running on battery power"/>
  <int value="180" label="Action to take when the idle delay is reached"/>
  <int value="181" label="Action to take when the user closes the lid"/>
  <int value="182"
      label="Specify whether audio activity affects power management"/>
  <int value="183"
      label="Specify whether video activity affects power management"/>
  <int value="184"
      label="Percentage by which to scale the idle delay in presentation mode
             (deprecated)"/>
  <int value="185"
      label="Allow users to redeem offers through Chrome OS Registration"/>
  <int value="186" label="Set the Terms of Service for a device-local account"/>
  <int value="187" label="Enable deleting browser and download history"/>
  <int value="188" label="Show accessibility options in system tray menu"/>
  <int value="189"
      label="Hide the web store from the New Tab Page and app launcher"/>
  <int value="190" label="Allows sign in to Google Chrome"/>
  <int value="191"
      label="System wide flags to be applied on Google Chrome start-up"/>
  <int value="192" label="Limit device uptime by automatically rebooting"/>
  <int value="193" label="Automatically reboot after update"/>
  <int value="194" label="Public session for auto-login"/>
  <int value="195" label="Public session auto-login timer"/>
  <int value="196"
      label="Set the restriction on the fetching of the Variations seed"/>
  <int value="197" label="Idle warning delay when running on AC power"/>
  <int value="198" label="Idle warning delay when running on battery power"/>
  <int value="199"
      label="Set the restriction on the fetching of the Variations seed"/>
  <int value="200" label="Enable remote attestation for the user"/>
  <int value="201"
      label="Extensions allowed to to use the remote attestation API"/>
  <int value="202" label="Enable bailout keyboard shortcut for auto-login"/>
  <int value="203" label="Allow screen wake locks"/>
  <int value="204" label="Default behavior for sites not in any content pack"/>
  <int value="205" label="Managed user manual exception hosts"/>
  <int value="206" label="Managed user manual exception URLs"/>
  <int value="207" label="Enable remote attestation for the device"/>
  <int value="208"
      label="URLs that will be granted access to audio capture devices
             without prompt"/>
  <int value="209"
      label="URLs that will be granted access to video capture devices
             without prompt"/>
  <int value="210"
      label="Percentage by which to scale the screen dim delay if the user
             becomes active after dimming"/>
  <int value="211" label="Enable large cursor"/>
  <int value="212" label="Enable spoken feedback"/>
  <int value="213" label="Enable high contrast mode"/>
  <int value="214" label="Set screen magnifier type"/>
  <int value="215"
      label="Set default state of the large cursor on the login screen"/>
  <int value="216"
      label="Set the default state of spoken feedback on the login screen"/>
  <int value="217"
      label="Set the default state of high contrast mode on the login screen"/>
  <int value="218"
      label="Set the default screen magnifier type enabled on the login
             screen"/>
  <int value="219" label="Enable supervised users"/>
  <int value="220"
      label="Percentage by which to scale the screen dim delay in
             presentation mode"/>
  <int value="221" label="Suppress the Google Chrome Frame turndown prompt"/>
  <int value="222"
      label="Action to take when the idle delay is reached while running on
             battery power"/>
  <int value="223" label="Enable creation of supervised users"/>
  <int value="224" label="Report device network interfaces"/>
  <int value="225" label="Power management on the login screen"/>
  <int value="226"
      label="Action to take when the idle delay is reached while running on
             AC power"/>
  <int value="227" label="Managed Bookmarks"/>
  <int value="228" label="Maximum fetch delay after a policy invalidation"/>
  <int value="229"
      label="Parameter providing search-by-image feature for the default
             search provider"/>
  <int value="230" label="Parameters for search URL which uses POST"/>
  <int value="231" label="Parameters for suggest URL which uses POST"/>
  <int value="232" label="Parameters for instant URL which uses POST"/>
  <int value="233" label="Parameters for image URL which uses POST"/>
  <int value="234"
      label="Enable or disable PIN-less authentication for remote access
             hosts"/>
  <int value="235"
      label="Whether online OCSP/CRL checks are required for local trust
             anchors"/>
  <int value="236" label="Use 24 hour clock by default"/>
  <int value="237" label="Default search provider new tab page URL"/>
  <int value="238" label="Skip the meta tag check in Google Chrome Frame"/>
  <int value="239"
      label="Enable the use of remote attestation for content protection for
             the device"/>
  <int value="240" label="Allow fullscreen mode"/>
  <int value="241" label="Enable the data compression proxy feature"/>
  <int value="242" label="Auto update p2p enabled"/>
  <int value="243" label="Allow autoupdate downloads via HTTP"/>
  <int value="244" label="Control the user behavior in a multiprofile session"/>
  <int value="245" label="Ephemeral profile"/>
  <int value="246"
      label="Selects the strategy used to free up disk space during automatic
             clean-up (deprecated)"/>
  <int value="247" label="Wait for initial user activity"/>
  <int value="248" label="Report device users"/>
  <int value="249" label="User avatar image"/>
  <int value="250" label="Enable network configuration prompt when offline"/>
  <int value="251" label="Configure native messaging blacklist"/>
  <int value="252" label="Configure native messaging whitelist"/>
  <int value="253"
      label="Allow user-level Native Messaging hosts (installed without admin
             permissions)."/>
  <int value="254"
      label="Limit the time for which a user authenticated via SAML can log
             in offline"/>
  <int value="255" label="Enable on-screen keyboard"/>
  <int value="256"
      label="Set default state of the on-screen keyboard on the login screen"/>
  <int value="257" label="Allow gnubby authentication for remote access hosts"/>
  <int value="258"
      label="Power management settings when the user becomes idle"/>
  <int value="259" label="Screen lock delays"/>
  <int value="260" label="Media keys default to function keys"/>
  <int value="261" label="Enable WPAD optimization"/>
  <int value="262" label="Wallpaper image"/>
  <int value="263"
      label="Enable the use of relay servers by the remote access host"/>
  <int value="264"
      label="Restrict the UDP port range used by the remote access host"/>
  <int value="265" label="Enables the old web-based signin"/>
  <int value="266" label="Block developer mode"/>
  <int value="267" label="Show the apps shortcut in the bookmark bar"/>
  <int value="268" label="Register protocol handlers"/>
  <int value="269" label="Enable virtual keyboard"/>
  <int value="270"
      label="Enable deprecated web platform features for a limited time"/>
  <int value="271" label="Transfer SAML IdP cookies during login"/>
  <int value="272" label="Allows Smart Lock to be used"/>
  <int value="273" label="Enable network prediction"/>
  <int value="274" label="Set the recommended locales for a public session"/>
  <int value="275" label="Enable guest mode in browser"/>
  <int value="276" label="Enable add person in profile manager"/>
  <int value="277"
      label="Import autofill form data from default browser on first run"/>
  <int value="278" label="Extension management settings"/>
  <int value="279" label="Minimum SSL version enabled"/>
  <int value="280" label="Minimum TLS version to fallback to"/>
  <int value="281" label="Enable Touch to Search"/>
  <int value="282" label="Force Google SafeSearch"/>
  <int value="283" label="Force YouTube Safety Mode"/>
  <int value="284" label="Automatic reboot on device shutdown"/>
  <int value="285"
      label="Requires that the name of the local user and the remote access
             host owner match"/>
  <int value="286"
      label="URL where remote access clients should obtain their
             authentication token"/>
  <int value="287"
      label="URL for validating remote access client authentication token"/>
  <int value="288"
      label="Client certificate for connecting to
             RemoteAccessHostTokenValidationUrl"/>
  <int value="289"
      label="Policy overrides for Debug builds of the remote access host"/>
  <int value="290" label="Report hardware status"/>
  <int value="291" label="Report information about active kiosk sessions"/>
  <int value="292" label="Frequency of device status report uploads"/>
  <int value="293" label="Send monitoring heartbeats to the management server"/>
  <int value="294" label="Frequency of monitoring heartbeats"/>
  <int value="295" label="Captive portal authentication ignores proxy"/>
  <int value="296" label="Set Apps and Extensions cache size (in bytes)"/>
  <int value="297" label="Enable domain name autocomplete during user sign in"/>
  <int value="298" label="Maximize the first browser window on first run"/>
  <int value="299"
      label="Allow users to opt in to Safe Browsing extended reporting"/>
  <int value="300" label="Allow proceeding from the SSL warning page"/>
  <int value="301" label="Allows QUIC protocol"/>
  <int value="302" label="Key Permissions"/>
  <int value="303"
      label="Enable showing the welcome page on the first browser launch
             following OS upgrade."/>
  <int value="304" label="Use hardware acceleration when available"/>
  <int value="305" label="Account type for HTTP Negotiate authentication"/>
  <int value="306" label="Send system logs to the management server"/>
  <int value="307"
      label="Make Unified Desktop available and turn on by default."/>
  <int value="308" label="Default printer selection rules"/>
  <int value="309" label="Allow Dinosaur Easter Egg Game"/>
  <int value="310" label="Whether RC4 cipher suites in TLS are enabled"/>
  <int value="311"
      label="Set default display rotation, reapplied on every reboot"/>
  <int value="312" label="Enable the supervised user content provider"/>
  <int value="313" label="Default key generation setting"/>
  <int value="314" label="Allow key generation on these sites"/>
  <int value="315" label="Block key generation on these sites"/>
  <int value="316"
      label="Configure the required domain name for remote access clients"/>
  <int value="317" label="ARC Enabled"/>
  <int value="318" label="Configure ARC"/>
  <int value="319"
      label="Allow the auto launched with zero delay kiosk app to control
             ChromeOS version"/>
  <int value="320" label="Control use of the Web Bluetooth API"/>
  <int value="321" label="Configure the login authentication behavior"/>
  <int value="322" label="Whitelist of USB detachable devices"/>
  <int value="323" label="Allow bluetooth on device"/>
  <int value="324" label="Suppress the unsupported OS warning"/>
  <int value="325" label="Enable queries to Quirks Server"/>
  <int value="326" label="Configure the automatic timezone detection method"/>
  <int value="327" label="Enable ending processes in Task Manager"/>
  <int value="328"
      label="URLs that will be granted access to video capture devices on
             SAML login pages"/>
  <int value="329" label="Permit locking the screen"/>
  <int value="330" label="Set certificate availability for ARC-apps"/>
</enum>

<enum name="EnterprisePolicyInvalidations" type="int">
  <summary>
    Defined as PolicyInvalidationType in
    components/policy/core/common/cloud/enterprise_metrics.h.
  </summary>
  <int value="0" label="No payload; not expired"/>
  <int value="1" label="Payload; not expired"/>
  <int value="3" label="No payload; expired"/>
  <int value="4" label="Payload; expired"/>
</enum>

<enum name="EnterprisePolicyKeyVerification" type="int">
  <summary>
    Defined as MetricPolicyKeyVerification in
    components/policy/core/common/cloud/cloud_policy_validator.cc.
  </summary>
  <int value="0" label="Key missing">Client has no verification key.</int>
  <int value="1" label="Signature missing">
    The Policy being verified has no key signature (e.g. policy fetched before
    the server supported the verification key).
  </int>
  <int value="2" label="Verification failed">
    The key signature did not match the expected value (in theory, this should
    only happen after key rotation or if the policy cached on disk has been
    modified).
  </int>
  <int value="3" label="Verification succeeded">
    Key verification succeeded.
  </int>
</enum>

<enum name="EnterprisePolicyLoadStatus" type="int">
  <summary>
    Status codes produced by the policy loaders that pull policy settings from
    the platform-specific management infrastructure, such as Windows Group
    Policy.  Defined as PolicyLoadStatus in
    components/policy/core/common/policy_load_status.h.
  </summary>
  <int value="0" label="STARTED">
    Policy load attempt started. This gets logged for each policy load attempt
    to get a baseline on the number of requests, and an arbitrary number of the
    below status codes may get added in addition.
  </int>
  <int value="1" label="QUERY_FAILED">
    System failed to determine whether there's policy.
  </int>
  <int value="2" label="NO_POLICY">No policy present.</int>
  <int value="3" label="INACCCESSIBLE">
    Data inaccessible, such as non-local policy file.
  </int>
  <int value="4" label="MISSING">
    Data missing, such as policy file not present.
  </int>
  <int value="5" label="WOW64_REDIRECTION_DISABLED">
    Trying with Wow64 redirection disabled.
  </int>
  <int value="6" label="READ_ERROR">
    Data read error, for example file reading errors.
  </int>
  <int value="7" label="TOO_BIG">Data too large to process.</int>
  <int value="8" label="PARSE_ERROR">Parse error.</int>
</enum>

<enum name="EnterprisePolicyRefresh" type="int">
  <summary>
    Defined as MetricPolicyRefresh in
    components/policy/core/common/cloud/enterprise_metrics.h.
  </summary>
  <int value="0" label="Changed"/>
  <int value="1" label="Changed; Invalidations disabled"/>
  <int value="2" label="Unchanged"/>
  <int value="3" label="Invalidated; Changed"/>
  <int value="4" label="Invalidated; Unchanged"/>
</enum>

<enum name="EnterprisePolicyType" type="int">
  <summary>
    Result of Policy operations as defined as MetricPolicy in
    components/policy/core/common/cloud/enterprise_metrics.h.
  </summary>
  <int value="0" label="Load Succeeded">
    A cached policy was successfully loaded from disk.
  </int>
  <int value="1" label="Load Failed">
    Reading a cached policy from disk failed.
  </int>
  <int value="2" label="Fetch Requested">
    A policy fetch request was sent to the DM server.
  </int>
  <int value="3" label="Fetch Request Failed">
    The request was invalid, or the HTTP request failed.
  </int>
  <int value="4" label="Fetch Server Failed">
    Error HTTP status received, or the DM server failed in another way.
  </int>
  <int value="5" label="Fetch Not Found">
    Policy not found for the given user or device.
  </int>
  <int value="6" label="Fetch Invalid Token">
    DM server didn't accept the token used in the request.
  </int>
  <int value="7" label="Fetch Response Received">
    A response to the policy fetch request was received.
  </int>
  <int value="8" label="Fetch Bad Response">
    The policy response message didn't contain a policy, or other data was
    missing.
  </int>
  <int value="9" label="Fetch Invalid Policy">Failed to decode the policy.</int>
  <int value="10" label="Fetch Bad Signature">
    The device policy was rejected because its signature was invalid.
  </int>
  <int value="11" label="Fetch Timestamp In Future">
    Rejected policy because its timestamp is in the future.
  </int>
  <int value="12" label="Fetch Non Enterprise Device">
    Device policy rejected because the device is not managed.
  </int>
  <int value="13" label="Fetch User Mismatch">
    The policy was provided for a username that is different from the device
    owner, and the policy was rejected.
  </int>
  <int value="14" label="Fetch Other Failed">
    The policy was rejected for another reason. Currently this can happen only
    for device policies, when the SignedSettings fail to store or retrieve a
    stored policy.
  </int>
  <int value="15" label="Fetch OK">The fetched policy was accepted.</int>
  <int value="16" label="Fetch Not Modified">
    The policy just fetched didn't have any changes compared to the cached
    policy.
  </int>
  <int value="17" label="Store Succeeded">
    Successfully cached a policy to disk.
  </int>
  <int value="18" label="Store Failed">Caching a policy to disk failed.</int>
</enum>

<enum name="ErrorCodesGetAdaptersAddresses" type="int">
  <int value="8" label="ERROR_NOT_ENOUGH_MEMORY"/>
  <int value="87" label="ERROR_INVALID_PARAMETER"/>
  <int value="111" label="ERROR_BUFFER_OVERFLOW"/>
  <int value="232" label="ERROR_NO_DATA"/>
  <int value="1228" label="ERROR_ADDRESS_NOT_ASSOCIATED"/>
</enum>

<enum name="ErrorCodesGetaddrinfo_All" type="int">
  <int value="1" label="EAI_BADFLAGS(L)"/>
  <int value="2" label="EAI_NONAME(L) EAI_AGAIN(M)"/>
  <int value="3" label="EAI_AGAIN(L) EAI_BADFLAGS(M)"/>
  <int value="4" label="EAI_FAIL"/>
  <int value="5" label="EAI_NODATA(L) EAI_FAMILY(M)"/>
  <int value="6" label="WSA_INVALID_HANDLE EAI_FAMILY(L) EAI_MEMORY(M)"/>
  <int value="7" label="EAI_SOCKTYPE(L) EAI_NODATA(M)"/>
  <int value="8" label="WSA_NOT_ENOUGH_MEMORY EAI_SERVICE(L) EAI_NONAME(M)"/>
  <int value="9" label="EAI_ADDRFAMILY EAI_SERVICE(M)"/>
  <int value="10" label="EAI_MEMORY(L) EAI_SOCKTYPE(L)"/>
  <int value="11" label="EAI_SYSTEM"/>
  <int value="12" label="EAI_OVERFLOW"/>
  <int value="10022" label="WSAEINVAL"/>
  <int value="10044" label="WSAESOCKTNOSUPPORT"/>
  <int value="10047" label="WSAEAFNOSUPPORT"/>
  <int value="10093" label="WSANOTINITIALISED"/>
  <int value="10109" label="WSA_TYPE_NOT_FOUND"/>
  <int value="11001" label="WSA_HOST_NOT_FOUND"/>
  <int value="11002" label="WSATRY_AGAIN"/>
  <int value="11003" label="WSA_ANO_RECOVERY"/>
  <int value="11004" label="WSANO_DATA"/>
</enum>

<enum name="ErrorCodesGetaddrinfo_Linux" type="int">
  <int value="1" label="EAI_BADFLAGS"/>
  <int value="2" label="EAI_NONAME"/>
  <int value="3" label="EAI_AGAIN"/>
  <int value="4" label="EAI_FAIL"/>
  <int value="5" label="EAI_NODATA"/>
  <int value="6" label="EAI_FAMILY"/>
  <int value="7" label="EAI_SOCKTYPE"/>
  <int value="8" label="EAI_SERVICE"/>
  <int value="9" label="EAI_ADDRFAMILY"/>
  <int value="10" label="EAI_MEMORY"/>
  <int value="11" label="EAI_SYSTEM"/>
  <int value="12" label="EAI_OVERFLOW"/>
</enum>

<enum name="ErrorCodesGetaddrinfo_Mac" type="int">
  <int value="1" label="EAI_ADDRFAMILY"/>
  <int value="2" label="EAI_AGAIN"/>
  <int value="3" label="EAI_BADFLAGS"/>
  <int value="4" label="EAI_FAIL"/>
  <int value="5" label="EAI_FAMILY"/>
  <int value="6" label="EAI_MEMORY"/>
  <int value="7" label="EAI_NODATA"/>
  <int value="8" label="EAI_NONAME"/>
  <int value="9" label="EAI_SERVICE"/>
  <int value="10" label="EAI_SOCKTYPE"/>
  <int value="11" label="EAI_SYSTEM"/>
  <int value="12" label="EAI_BADHINTS"/>
  <int value="13" label="EAI_PROTOCOL"/>
  <int value="14" label="EAI_OVERFLOW"/>
</enum>

<enum name="ErrorCodesGetaddrinfo_Win" type="int">
  <int value="6" label="WSA_INVALID_HANDLE"/>
  <int value="8" label="WSA_NOT_ENOUGH_MEMORY or EAI_SERVICE"/>
  <int value="10022" label="WSAEINVAL"/>
  <int value="10044" label="WSAESOCKTNOSUPPORT"/>
  <int value="10047" label="WSAEAFNOSUPPORT"/>
  <int value="10093" label="WSANOTINITIALISED"/>
  <int value="10109" label="WSA_TYPE_NOT_FOUND"/>
  <int value="11001" label="WSA_HOST_NOT_FOUND"/>
  <int value="11002" label="WSATRY_AGAIN"/>
  <int value="11003" label="WSA_ANO_RECOVERY"/>
  <int value="11004" label="WSANO_DATA"/>
</enum>

<enum name="ErrorPageButton" type="int">
  <int value="0" label="NO_BUTTON"/>
  <int value="1" label="RELOAD_BUTTON"/>
  <int value="2" label="SHOW_SAVED_COPY_BUTTON"/>
  <int value="3" label="MORE_BUTTON"/>
  <int value="4" label="EASTER_EGG"/>
  <int value="5" label="SHOW_CACHED_COPY_BUTTON"/>
  <int value="6" label="SHOW_CACHED_PAGE_BUTTON"/>
</enum>

<enum name="ErrorPageUnexpectedStates" type="int">
  <int value="0" label="OK"/>
  <int value="1" label="NON_ERROR_PAGE_URL"/>
  <int value="2" label="NO_ERROR_INFO"/>
  <int value="3" label="NON_ERROR_PAGE_URL_AND_NO_ERROR_INFO"/>
</enum>

<enum name="EVCTCompliance" type="int">
  <int value="0" label="EV policy does not apply"/>
  <int value="1" label="Compliant because certificate is whitelisted"/>
  <int value="2" label="Compliant because SCTs satisfy CT policy"/>
  <int value="3" label="Not compliant because there are not enough SCTs"/>
  <int value="4"
      label="Not compliant because there are not diverse enough SCTs"/>
  <int value="5" label="Not compliant because the build is not timely"/>
</enum>

<enum name="EventHitTest" type="int">
  <int value="0" label="Miss, not found in cache."/>
  <int value="1" label="Miss, explicitly avoided."/>
  <int value="2" label="Miss, validity region matches; type doesn't."/>
  <int value="3" label="Hit, exact point."/>
  <int value="4" label="Hit, region matched."/>
</enum>

<enum name="EventHitTestValidity" type="int">
  <int value="0" label="Valid, exact match."/>
  <int value="1" label="Valid, region match."/>
  <int value="2" label="Incorrect, exact match (rect query)."/>
  <int value="3" label="Incorrect, exact match (point query)."/>
  <int value="4" label="Incorrect, region match (rect query)."/>
  <int value="5" label="Incorrect, region match (point query)."/>
</enum>

<enum name="EventHitTestValidityScore" type="int">
  <int value="0" label="Nothing matched."/>
  <int value="1" label="Over widget matched."/>
  <int value="2" label="Scrollbar matched."/>
  <int value="4" label="URL element matched."/>
  <int value="8" label="Local point matched."/>
  <int value="16" label="Point in inner frame matched."/>
  <int value="32" label="Inner pseudo node matched."/>
  <int value="64" label="Inner node matched."/>
  <int value="128" label="Request type matched."/>
</enum>

<enum name="EventResultType" type="int">
  <int value="0" label="Passive"/>
  <int value="1" label="Uncancelable"/>
  <int value="2" label="Suppressed"/>
  <int value="3" label="Cancelable and not canceled"/>
  <int value="4" label="Cancelable and canceled"/>
  <int value="5" label="Forced Non-Blocking"/>
</enum>

<enum name="EVWhitelistStatus" type="int">
  <int value="0" label="Not present"/>
  <int value="1" label="Invalid"/>
  <int value="2" label="Valid"/>
</enum>

<enum name="ExecutionPhase" type="int">
  <int value="0" label="UNINITIALIZED_PHASE"/>
  <int value="100" label="START_METRICS_RECORDING"/>
  <int value="200" label="CREATE_PROFILE"/>
  <int value="300" label="STARTUP_TIMEBOMB_ARM"/>
  <int value="400" label="THREAD_WATCHER_START"/>
  <int value="500" label="MAIN_MESSAGE_LOOP_RUN"/>
  <int value="600" label="SHUTDOWN_TIMEBOMB_ARM"/>
  <int value="700" label="SHUTDOWN_COMPLETE"/>
</enum>

<enum name="ExtensionBackgroundPageType" type="int">
  <int value="0" label="None"/>
  <int value="1" label="Persistent"/>
  <int value="2" label="Event Page"/>
</enum>

<enum name="ExtensionBubbleAction" type="int">
  <int value="0" label="Learn more"/>
  <int value="1" label="Execute"/>
  <int value="2" label="Dismiss"/>
</enum>

<enum name="ExtensionCreationFlags" type="int">
  <int value="0" label="REQUIRE_KEY"/>
  <int value="1" label="REQUIRE_MODERN_MANIFEST_VERSION"/>
  <int value="2" label="ALLOW_FILE_ACCESS"/>
  <int value="3" label="FROM_WEBSTORE"/>
  <int value="4" label="FROM_BOOKMARK"/>
  <int value="5" label="FOLLOW_SYMLINKS_ANYWHERE"/>
  <int value="6" label="ERROR_ON_PRIVATE_KEY"/>
  <int value="7" label="WAS_INSTALLED_BY_DEFAULT"/>
  <int value="8" label="REQUIRE_PERMISSIONS_CONSENT"/>
  <int value="9" label="IS_EPHEMERAL_DEPRECATED"/>
  <int value="10" label="WAS_INSTALLED_BY_OEM"/>
</enum>

<enum name="ExtensionDisabledUIUserResponse" type="int">
  <int value="0" label="IGNORED"/>
  <int value="1" label="REENABLE"/>
  <int value="2" label="UNINSTALL"/>
</enum>

<enum name="ExtensionDisableReason" type="int">
  <int value="0" label="UNKNOWN"/>
  <int value="1" label="USER_ACTION"/>
  <int value="2" label="PERMISSIONS_INCREASE"/>
  <int value="4" label="RELOAD"/>
  <int value="8" label="UNSUPPORTED_REQUIREMENT"/>
  <int value="16" label="SIDELOAD_WIPEOUT"/>
  <int value="32" label="UNKNOWN_FROM_SYNC"/>
  <int value="64" label="DEPRECATED_PERMISSIONS_CONSENT"/>
  <int value="128" label="DEPRECATED_KNOWN_DISABLED"/>
  <int value="256" label="NOT_VERIFIED"/>
  <int value="512" label="GREYLIST"/>
  <int value="1024" label="CORRUPTED"/>
  <int value="2048" label="REMOTE_INSTALL"/>
  <int value="4096" label="INACTIVE_EPHEMERAL_APP_DEPRECATED"/>
  <int value="8192" label="EXTERNAL_EXTENSION"/>
  <int value="16384" label="UPDATE_REQUIRED_BY_POLICY"/>
</enum>

<enum name="ExtensionEvents" type="int">
<!-- Generated from extensions/browser/extension_event_histogram_value.h -->

  <int value="0" label="UNKNOWN"/>
  <int value="1" label="FOR_TEST"/>
  <int value="2" label="ACCESSIBILITY_PRIVATE_ON_INTRODUCE_CHROME_VOX"/>
  <int value="3" label="ACTIVITY_LOG_PRIVATE_ON_EXTENSION_ACTIVITY"/>
  <int value="4" label="ALARMS_ON_ALARM"/>
  <int value="5" label="APP_CURRENT_WINDOW_INTERNAL_ON_ALPHA_ENABLED_CHANGED"/>
  <int value="6" label="APP_CURRENT_WINDOW_INTERNAL_ON_BOUNDS_CHANGED"/>
  <int value="7" label="APP_CURRENT_WINDOW_INTERNAL_ON_CLOSED"/>
  <int value="8" label="APP_CURRENT_WINDOW_INTERNAL_ON_FULLSCREENED"/>
  <int value="9" label="APP_CURRENT_WINDOW_INTERNAL_ON_MAXIMIZED"/>
  <int value="10" label="APP_CURRENT_WINDOW_INTERNAL_ON_MINIMIZED"/>
  <int value="11" label="APP_CURRENT_WINDOW_INTERNAL_ON_RESTORED"/>
  <int value="12"
      label="APP_CURRENT_WINDOW_INTERNAL_ON_WINDOW_SHOWN_FOR_TESTS"/>
  <int value="13" label="APP_RUNTIME_ON_EMBED_REQUESTED"/>
  <int value="14" label="APP_RUNTIME_ON_LAUNCHED"/>
  <int value="15" label="APP_RUNTIME_ON_RESTARTED"/>
  <int value="16" label="APP_WINDOW_ON_BOUNDS_CHANGED"/>
  <int value="17" label="APP_WINDOW_ON_CLOSED"/>
  <int value="18" label="APP_WINDOW_ON_FULLSCREENED"/>
  <int value="19" label="APP_WINDOW_ON_MAXIMIZED"/>
  <int value="20" label="APP_WINDOW_ON_MINIMIZED"/>
  <int value="21" label="APP_WINDOW_ON_RESTORED"/>
  <int value="22" label="AUDIO_MODEM_ON_RECEIVED"/>
  <int value="23" label="AUDIO_MODEM_ON_TRANSMIT_FAIL"/>
  <int value="24" label="AUDIO_ON_DEVICE_CHANGED"/>
  <int value="25" label="AUDIO_ON_DEVICES_CHANGED"/>
  <int value="26" label="AUDIO_ON_LEVEL_CHANGED"/>
  <int value="27" label="AUDIO_ON_MUTE_CHANGED"/>
  <int value="28" label="AUTOFILL_PRIVATE_ON_ADDRESS_LIST_CHANGED"/>
  <int value="29" label="AUTOFILL_PRIVATE_ON_CREDIT_CARD_LIST_CHANGED"/>
  <int value="30" label="AUTOMATION_INTERNAL_ON_ACCESSIBILITY_EVENT"/>
  <int value="31" label="AUTOMATION_INTERNAL_ON_ACCESSIBILITY_TREE_DESTROYED"/>
  <int value="32" label="BLUETOOTH_LOW_ENERGY_ON_CHARACTERISTIC_VALUE_CHANGED"/>
  <int value="33" label="BLUETOOTH_LOW_ENERGY_ON_DESCRIPTOR_VALUE_CHANGED"/>
  <int value="34" label="BLUETOOTH_LOW_ENERGY_ON_SERVICE_ADDED"/>
  <int value="35" label="BLUETOOTH_LOW_ENERGY_ON_SERVICE_CHANGED"/>
  <int value="36" label="BLUETOOTH_LOW_ENERGY_ON_SERVICE_REMOVED"/>
  <int value="37" label="BLUETOOTH_ON_ADAPTER_STATE_CHANGED"/>
  <int value="38" label="BLUETOOTH_ON_DEVICE_ADDED"/>
  <int value="39" label="BLUETOOTH_ON_DEVICE_CHANGED"/>
  <int value="40" label="BLUETOOTH_ON_DEVICE_REMOVED"/>
  <int value="41" label="BLUETOOTH_PRIVATE_ON_PAIRING"/>
  <int value="42" label="BLUETOOTH_SOCKET_ON_ACCEPT"/>
  <int value="43" label="BLUETOOTH_SOCKET_ON_ACCEPT_ERROR"/>
  <int value="44" label="BLUETOOTH_SOCKET_ON_RECEIVE"/>
  <int value="45" label="BLUETOOTH_SOCKET_ON_RECEIVE_ERROR"/>
  <int value="46" label="BOOKMARK_MANAGER_PRIVATE_ON_DRAG_ENTER"/>
  <int value="47" label="BOOKMARK_MANAGER_PRIVATE_ON_DRAG_LEAVE"/>
  <int value="48" label="BOOKMARK_MANAGER_PRIVATE_ON_DROP"/>
  <int value="49" label="BOOKMARK_MANAGER_PRIVATE_ON_META_INFO_CHANGED"/>
  <int value="50" label="BOOKMARKS_ON_CHANGED"/>
  <int value="51" label="BOOKMARKS_ON_CHILDREN_REORDERED"/>
  <int value="52" label="BOOKMARKS_ON_CREATED"/>
  <int value="53" label="BOOKMARKS_ON_IMPORT_BEGAN"/>
  <int value="54" label="BOOKMARKS_ON_IMPORT_ENDED"/>
  <int value="55" label="BOOKMARKS_ON_MOVED"/>
  <int value="56" label="BOOKMARKS_ON_REMOVED"/>
  <int value="57" label="BRAILLE_DISPLAY_PRIVATE_ON_DISPLAY_STATE_CHANGED"/>
  <int value="58" label="BRAILLE_DISPLAY_PRIVATE_ON_KEY_EVENT"/>
  <int value="59" label="BROWSER_ACTION_ON_CLICKED"/>
  <int value="60" label="CAST_STREAMING_RTP_STREAM_ON_ERROR"/>
  <int value="61" label="CAST_STREAMING_RTP_STREAM_ON_STARTED"/>
  <int value="62" label="CAST_STREAMING_RTP_STREAM_ON_STOPPED"/>
  <int value="63" label="COMMANDS_ON_COMMAND"/>
  <int value="64" label="CONTEXT_MENUS_INTERNAL_ON_CLICKED"/>
  <int value="65" label="CONTEXT_MENUS_ON_CLICKED"/>
  <int value="66" label="COOKIES_ON_CHANGED"/>
  <int value="67" label="COPRESENCE_ON_MESSAGES_RECEIVED"/>
  <int value="68" label="COPRESENCE_ON_STATUS_UPDATED"/>
  <int value="69" label="COPRESENCE_PRIVATE_ON_CONFIG_AUDIO"/>
  <int value="70" label="COPRESENCE_PRIVATE_ON_DECODE_SAMPLES_REQUEST"/>
  <int value="71" label="COPRESENCE_PRIVATE_ON_ENCODE_TOKEN_REQUEST"/>
  <int value="72" label="DEBUGGER_ON_DETACH"/>
  <int value="73" label="DEBUGGER_ON_EVENT"/>
  <int value="74" label="DECLARATIVE_CONTENT_ON_PAGE_CHANGED"/>
  <int value="75" label="DECLARATIVE_WEB_REQUEST_ON_MESSAGE"/>
  <int value="76" label="DECLARATIVE_WEB_REQUEST_ON_REQUEST"/>
  <int value="77" label="DEVELOPER_PRIVATE_ON_ITEM_STATE_CHANGED"/>
  <int value="78" label="DEVELOPER_PRIVATE_ON_PROFILE_STATE_CHANGED"/>
  <int value="79" label="DEVTOOLS_INSPECTED_WINDOW_ON_RESOURCE_ADDED"/>
  <int value="80"
      label="DEVTOOLS_INSPECTED_WINDOW_ON_RESOURCE_CONTENT_COMMITTED"/>
  <int value="81" label="DEVTOOLS_NETWORK_ON_NAVIGATED"/>
  <int value="82" label="DEVTOOLS_NETWORK_ON_REQUEST_FINISHED"/>
  <int value="83" label="DOWNLOADS_ON_CHANGED"/>
  <int value="84" label="DOWNLOADS_ON_CREATED"/>
  <int value="85" label="DOWNLOADS_ON_DETERMINING_FILENAME"/>
  <int value="86" label="DOWNLOADS_ON_ERASED"/>
  <int value="87" label="EASY_UNLOCK_PRIVATE_ON_START_AUTO_PAIRING"/>
  <int value="88" label="EASY_UNLOCK_PRIVATE_ON_USER_INFO_UPDATED"/>
  <int value="89" label="EXPERIENCE_SAMPLING_PRIVATE_ON_DECISION"/>
  <int value="90" label="EXPERIENCE_SAMPLING_PRIVATE_ON_DISPLAYED"/>
  <int value="91" label="EXPERIMENTAL_DEVTOOLS_CONSOLE_ON_MESSAGE_ADDED"/>
  <int value="92" label="EXTENSION_ON_REQUEST"/>
  <int value="93" label="EXTENSION_ON_REQUEST_EXTERNAL"/>
  <int value="94" label="EXTENSION_OPTIONS_INTERNAL_ON_CLOSE"/>
  <int value="95" label="EXTENSION_OPTIONS_INTERNAL_ON_LOAD"/>
  <int value="96" label="EXTENSION_OPTIONS_INTERNAL_ON_PREFERRED_SIZE_CHANGED"/>
  <int value="97" label="FEEDBACK_PRIVATE_ON_FEEDBACK_REQUESTED"/>
  <int value="98" label="FILE_BROWSER_HANDLER_ON_EXECUTE"/>
  <int value="99" label="FILE_MANAGER_PRIVATE_ON_COPY_PROGRESS"/>
  <int value="100" label="FILE_MANAGER_PRIVATE_ON_DEVICE_CHANGED"/>
  <int value="101" label="FILE_MANAGER_PRIVATE_ON_DIRECTORY_CHANGED"/>
  <int value="102"
      label="FILE_MANAGER_PRIVATE_ON_DRIVE_CONNECTION_STATUS_CHANGED"/>
  <int value="103" label="FILE_MANAGER_PRIVATE_ON_DRIVE_SYNC_ERROR"/>
  <int value="104" label="FILE_MANAGER_PRIVATE_ON_FILE_TRANSFERS_UPDATED"/>
  <int value="105" label="FILE_MANAGER_PRIVATE_ON_MOUNT_COMPLETED"/>
  <int value="106" label="FILE_MANAGER_PRIVATE_ON_PREFERENCES_CHANGED"/>
  <int value="107" label="FILE_SYSTEM_ON_VOLUME_LIST_CHANGED"/>
  <int value="108" label="FILE_SYSTEM_PROVIDER_ON_ABORT_REQUESTED"/>
  <int value="109" label="FILE_SYSTEM_PROVIDER_ON_ADD_WATCHER_REQUESTED"/>
  <int value="110" label="FILE_SYSTEM_PROVIDER_ON_CLOSE_FILE_REQUESTED"/>
  <int value="111" label="FILE_SYSTEM_PROVIDER_ON_CONFIGURE_REQUESTED"/>
  <int value="112" label="FILE_SYSTEM_PROVIDER_ON_COPY_ENTRY_REQUESTED"/>
  <int value="113" label="FILE_SYSTEM_PROVIDER_ON_CREATE_DIRECTORY_REQUESTED"/>
  <int value="114" label="FILE_SYSTEM_PROVIDER_ON_CREATE_FILE_REQUESTED"/>
  <int value="115" label="FILE_SYSTEM_PROVIDER_ON_DELETE_ENTRY_REQUESTED"/>
  <int value="116" label="FILE_SYSTEM_PROVIDER_ON_GET_METADATA_REQUESTED"/>
  <int value="117" label="FILE_SYSTEM_PROVIDER_ON_MOUNT_REQUESTED"/>
  <int value="118" label="FILE_SYSTEM_PROVIDER_ON_MOVE_ENTRY_REQUESTED"/>
  <int value="119" label="FILE_SYSTEM_PROVIDER_ON_OPEN_FILE_REQUESTED"/>
  <int value="120" label="FILE_SYSTEM_PROVIDER_ON_READ_DIRECTORY_REQUESTED"/>
  <int value="121" label="FILE_SYSTEM_PROVIDER_ON_READ_FILE_REQUESTED"/>
  <int value="122" label="FILE_SYSTEM_PROVIDER_ON_REMOVE_WATCHER_REQUESTED"/>
  <int value="123" label="FILE_SYSTEM_PROVIDER_ON_TRUNCATE_REQUESTED"/>
  <int value="124" label="FILE_SYSTEM_PROVIDER_ON_UNMOUNT_REQUESTED"/>
  <int value="125" label="FILE_SYSTEM_PROVIDER_ON_WRITE_FILE_REQUESTED"/>
  <int value="126" label="FONT_SETTINGS_ON_DEFAULT_FIXED_FONT_SIZE_CHANGED"/>
  <int value="127" label="FONT_SETTINGS_ON_DEFAULT_FONT_SIZE_CHANGED"/>
  <int value="128" label="FONT_SETTINGS_ON_FONT_CHANGED"/>
  <int value="129" label="FONT_SETTINGS_ON_MINIMUM_FONT_SIZE_CHANGED"/>
  <int value="130" label="GCD_PRIVATE_ON_DEVICE_REMOVED"/>
  <int value="131" label="GCD_PRIVATE_ON_DEVICE_STATE_CHANGED"/>
  <int value="132" label="GCM_ON_MESSAGE"/>
  <int value="133" label="GCM_ON_MESSAGES_DELETED"/>
  <int value="134" label="GCM_ON_SEND_ERROR"/>
  <int value="135" label="HANGOUTS_PRIVATE_ON_HANGOUT_REQUESTED_DEPRECATED"/>
  <int value="136" label="HID_ON_DEVICE_ADDED"/>
  <int value="137" label="HID_ON_DEVICE_REMOVED"/>
  <int value="138" label="HISTORY_ON_VISITED"/>
  <int value="139" label="HISTORY_ON_VISIT_REMOVED"/>
  <int value="140" label="HOTWORD_PRIVATE_ON_DELETE_SPEAKER_MODEL"/>
  <int value="141" label="HOTWORD_PRIVATE_ON_ENABLED_CHANGED"/>
  <int value="142" label="HOTWORD_PRIVATE_ON_FINALIZE_SPEAKER_MODEL"/>
  <int value="143" label="HOTWORD_PRIVATE_ON_HOTWORD_SESSION_REQUESTED"/>
  <int value="144" label="HOTWORD_PRIVATE_ON_HOTWORD_SESSION_STOPPED"/>
  <int value="145" label="HOTWORD_PRIVATE_ON_HOTWORD_TRIGGERED"/>
  <int value="146" label="HOTWORD_PRIVATE_ON_MICROPHONE_STATE_CHANGED"/>
  <int value="147" label="HOTWORD_PRIVATE_ON_SPEAKER_MODEL_EXISTS"/>
  <int value="148" label="HOTWORD_PRIVATE_ON_SPEAKER_MODEL_SAVED"/>
  <int value="149" label="IDENTITY_ON_SIGN_IN_CHANGED"/>
  <int value="150" label="IDENTITY_PRIVATE_ON_WEB_FLOW_REQUEST"/>
  <int value="151" label="IDLE_ON_STATE_CHANGED"/>
  <int value="152" label="IMAGE_WRITER_PRIVATE_ON_DEVICE_INSERTED"/>
  <int value="153" label="IMAGE_WRITER_PRIVATE_ON_DEVICE_REMOVED"/>
  <int value="154" label="IMAGE_WRITER_PRIVATE_ON_WRITE_COMPLETE"/>
  <int value="155" label="IMAGE_WRITER_PRIVATE_ON_WRITE_ERROR"/>
  <int value="156" label="IMAGE_WRITER_PRIVATE_ON_WRITE_PROGRESS"/>
  <int value="157" label="INPUT_IME_ON_ACTIVATE"/>
  <int value="158" label="INPUT_IME_ON_BLUR"/>
  <int value="159" label="INPUT_IME_ON_CANDIDATE_CLICKED"/>
  <int value="160" label="INPUT_IME_ON_DEACTIVATED"/>
  <int value="161" label="INPUT_IME_ON_FOCUS"/>
  <int value="162" label="INPUT_IME_ON_INPUT_CONTEXT_UPDATE"/>
  <int value="163" label="INPUT_IME_ON_KEY_EVENT"/>
  <int value="164" label="INPUT_IME_ON_MENU_ITEM_ACTIVATED"/>
  <int value="165" label="INPUT_IME_ON_RESET"/>
  <int value="166" label="INPUT_IME_ON_SURROUNDING_TEXT_CHANGED"/>
  <int value="167" label="INPUT_METHOD_PRIVATE_ON_CHANGED"/>
  <int value="168" label="INPUT_METHOD_PRIVATE_ON_COMPOSITION_BOUNDS_CHANGED"/>
  <int value="169" label="INPUT_METHOD_PRIVATE_ON_DICTIONARY_CHANGED"/>
  <int value="170" label="INPUT_METHOD_PRIVATE_ON_DICTIONARY_LOADED"/>
  <int value="171" label="INSTANCE_ID_ON_TOKEN_REFRESH"/>
  <int value="172" label="DELETED_LOCATION_ON_LOCATION_ERROR"/>
  <int value="173" label="DELETED_LOCATION_ON_LOCATION_UPDATE"/>
  <int value="174" label="LOG_PRIVATE_ON_CAPTURED_EVENTS"/>
  <int value="175" label="MANAGEMENT_ON_DISABLED"/>
  <int value="176" label="MANAGEMENT_ON_ENABLED"/>
  <int value="177" label="MANAGEMENT_ON_INSTALLED"/>
  <int value="178" label="MANAGEMENT_ON_UNINSTALLED"/>
  <int value="179" label="MDNS_ON_SERVICE_LIST"/>
  <int value="180" label="MEDIA_GALLERIES_ON_GALLERY_CHANGED"/>
  <int value="181" label="MEDIA_GALLERIES_ON_SCAN_PROGRESS"/>
  <int value="182" label="MEDIA_PLAYER_PRIVATE_ON_NEXT_TRACK"/>
  <int value="183" label="MEDIA_PLAYER_PRIVATE_ON_PREV_TRACK"/>
  <int value="184" label="MEDIA_PLAYER_PRIVATE_ON_TOGGLE_PLAY_STATE"/>
  <int value="185" label="NETWORKING_CONFIG_ON_CAPTIVE_PORTAL_DETECTED"/>
  <int value="186" label="NETWORKING_PRIVATE_ON_DEVICE_STATE_LIST_CHANGED"/>
  <int value="187" label="NETWORKING_PRIVATE_ON_NETWORK_LIST_CHANGED"/>
  <int value="188" label="NETWORKING_PRIVATE_ON_NETWORKS_CHANGED"/>
  <int value="189" label="NETWORKING_PRIVATE_ON_PORTAL_DETECTION_COMPLETED"/>
  <int value="190" label="NOTIFICATION_PROVIDER_ON_CLEARED"/>
  <int value="191" label="NOTIFICATION_PROVIDER_ON_CREATED"/>
  <int value="192" label="NOTIFICATION_PROVIDER_ON_UPDATED"/>
  <int value="193" label="NOTIFICATIONS_ON_BUTTON_CLICKED"/>
  <int value="194" label="NOTIFICATIONS_ON_CLICKED"/>
  <int value="195" label="NOTIFICATIONS_ON_CLOSED"/>
  <int value="196" label="NOTIFICATIONS_ON_PERMISSION_LEVEL_CHANGED"/>
  <int value="197" label="NOTIFICATIONS_ON_SHOW_SETTINGS"/>
  <int value="198" label="OMNIBOX_ON_INPUT_CANCELLED"/>
  <int value="199" label="OMNIBOX_ON_INPUT_CHANGED"/>
  <int value="200" label="OMNIBOX_ON_INPUT_ENTERED"/>
  <int value="201" label="OMNIBOX_ON_INPUT_STARTED"/>
  <int value="202" label="PAGE_ACTION_ON_CLICKED"/>
  <int value="203"
      label="PASSWORDS_PRIVATE_ON_PASSWORD_EXCEPTIONS_LIST_CHANGED"/>
  <int value="204" label="PASSWORDS_PRIVATE_ON_PLAINTEXT_PASSWORD_RETRIEVED"/>
  <int value="205" label="PASSWORDS_PRIVATE_ON_SAVED_PASSWORDS_LIST_CHANGED"/>
  <int value="206" label="PERMISSIONS_ON_ADDED"/>
  <int value="207" label="PERMISSIONS_ON_REMOVED"/>
  <int value="208" label="PRINTER_PROVIDER_ON_GET_CAPABILITY_REQUESTED"/>
  <int value="209" label="PRINTER_PROVIDER_ON_GET_PRINTERS_REQUESTED"/>
  <int value="210" label="PRINTER_PROVIDER_ON_GET_USB_PRINTER_INFO_REQUESTED"/>
  <int value="211" label="PRINTER_PROVIDER_ON_PRINT_REQUESTED"/>
  <int value="212" label="PROCESSES_ON_CREATED"/>
  <int value="213" label="PROCESSES_ON_EXITED"/>
  <int value="214" label="PROCESSES_ON_UNRESPONSIVE"/>
  <int value="215" label="PROCESSES_ON_UPDATED"/>
  <int value="216" label="PROCESSES_ON_UPDATED_WITH_MEMORY"/>
  <int value="217" label="PROXY_ON_PROXY_ERROR"/>
  <int value="218" label="RUNTIME_ON_BROWSER_UPDATE_AVAILABLE"/>
  <int value="219" label="RUNTIME_ON_CONNECT"/>
  <int value="220" label="RUNTIME_ON_CONNECT_EXTERNAL"/>
  <int value="221" label="RUNTIME_ON_INSTALLED"/>
  <int value="222" label="RUNTIME_ON_MESSAGE"/>
  <int value="223" label="RUNTIME_ON_MESSAGE_EXTERNAL"/>
  <int value="224" label="RUNTIME_ON_RESTART_REQUIRED"/>
  <int value="225" label="RUNTIME_ON_STARTUP"/>
  <int value="226" label="RUNTIME_ON_SUSPEND"/>
  <int value="227" label="RUNTIME_ON_SUSPEND_CANCELED"/>
  <int value="228" label="RUNTIME_ON_UPDATE_AVAILABLE"/>
  <int value="229" label="SEARCH_ENGINES_PRIVATE_ON_SEARCH_ENGINES_CHANGED"/>
  <int value="230" label="SERIAL_ON_RECEIVE"/>
  <int value="231" label="SERIAL_ON_RECEIVE_ERROR"/>
  <int value="232" label="SESSIONS_ON_CHANGED"/>
  <int value="233" label="SETTINGS_PRIVATE_ON_PREFS_CHANGED"/>
  <int value="234" label="SIGNED_IN_DEVICES_ON_DEVICE_INFO_CHANGE"/>
  <int value="235" label="SOCKETS_TCP_ON_RECEIVE"/>
  <int value="236" label="SOCKETS_TCP_ON_RECEIVE_ERROR"/>
  <int value="237" label="SOCKETS_TCP_SERVER_ON_ACCEPT"/>
  <int value="238" label="SOCKETS_TCP_SERVER_ON_ACCEPT_ERROR"/>
  <int value="239" label="SOCKETS_UDP_ON_RECEIVE"/>
  <int value="240" label="SOCKETS_UDP_ON_RECEIVE_ERROR"/>
  <int value="241" label="STORAGE_ON_CHANGED"/>
  <int value="242" label="STREAMS_PRIVATE_ON_EXECUTE_MIME_TYPE_HANDLER"/>
  <int value="243" label="SYNC_FILE_SYSTEM_ON_FILE_STATUS_CHANGED"/>
  <int value="244" label="SYNC_FILE_SYSTEM_ON_SERVICE_STATUS_CHANGED"/>
  <int value="245" label="SYSTEM_DISPLAY_ON_DISPLAY_CHANGED"/>
  <int value="246" label="SYSTEM_INDICATOR_ON_CLICKED"/>
  <int value="247" label="SYSTEM_PRIVATE_ON_BRIGHTNESS_CHANGED"/>
  <int value="248" label="SYSTEM_PRIVATE_ON_SCREEN_UNLOCKED"/>
  <int value="249" label="SYSTEM_PRIVATE_ON_VOLUME_CHANGED"/>
  <int value="250" label="SYSTEM_PRIVATE_ON_WOKE_UP"/>
  <int value="251" label="SYSTEM_STORAGE_ON_ATTACHED"/>
  <int value="252" label="SYSTEM_STORAGE_ON_DETACHED"/>
  <int value="253" label="TAB_CAPTURE_ON_STATUS_CHANGED"/>
  <int value="254" label="TABS_ON_ACTIVATED"/>
  <int value="255" label="TABS_ON_ACTIVE_CHANGED"/>
  <int value="256" label="TABS_ON_ATTACHED"/>
  <int value="257" label="TABS_ON_CREATED"/>
  <int value="258" label="TABS_ON_DETACHED"/>
  <int value="259" label="TABS_ON_HIGHLIGHT_CHANGED"/>
  <int value="260" label="TABS_ON_HIGHLIGHTED"/>
  <int value="261" label="TABS_ON_MOVED"/>
  <int value="262" label="TABS_ON_REMOVED"/>
  <int value="263" label="TABS_ON_REPLACED"/>
  <int value="264" label="TABS_ON_SELECTION_CHANGED"/>
  <int value="265" label="TABS_ON_UPDATED"/>
  <int value="266" label="TABS_ON_ZOOM_CHANGE"/>
  <int value="267" label="TERMINAL_PRIVATE_ON_PROCESS_OUTPUT"/>
  <int value="268" label="TEST_ON_MESSAGE"/>
  <int value="269" label="TTS_ENGINE_ON_PAUSE"/>
  <int value="270" label="TTS_ENGINE_ON_RESUME"/>
  <int value="271" label="TTS_ENGINE_ON_SPEAK"/>
  <int value="272" label="TTS_ENGINE_ON_STOP"/>
  <int value="273" label="USB_ON_DEVICE_ADDED"/>
  <int value="274" label="USB_ON_DEVICE_REMOVED"/>
  <int value="275" label="VIRTUAL_KEYBOARD_PRIVATE_ON_BOUNDS_CHANGED"/>
  <int value="276" label="VIRTUAL_KEYBOARD_PRIVATE_ON_TEXT_INPUT_BOX_FOCUSED"/>
  <int value="277" label="VPN_PROVIDER_ON_CONFIG_CREATED"/>
  <int value="278" label="VPN_PROVIDER_ON_CONFIG_REMOVED"/>
  <int value="279" label="VPN_PROVIDER_ON_PACKET_RECEIVED"/>
  <int value="280" label="VPN_PROVIDER_ON_PLATFORM_MESSAGE"/>
  <int value="281" label="VPN_PROVIDER_ON_UI_EVENT"/>
  <int value="282" label="WALLPAPER_PRIVATE_ON_WALLPAPER_CHANGED_BY_3RD_PARTY"/>
  <int value="283" label="WEB_NAVIGATION_ON_BEFORE_NAVIGATE"/>
  <int value="284" label="WEB_NAVIGATION_ON_COMMITTED"/>
  <int value="285" label="WEB_NAVIGATION_ON_COMPLETED"/>
  <int value="286" label="WEB_NAVIGATION_ON_CREATED_NAVIGATION_TARGET"/>
  <int value="287" label="WEB_NAVIGATION_ON_DOM_CONTENT_LOADED"/>
  <int value="288" label="WEB_NAVIGATION_ON_ERROR_OCCURRED"/>
  <int value="289" label="WEB_NAVIGATION_ON_HISTORY_STATE_UPDATED"/>
  <int value="290" label="WEB_NAVIGATION_ON_REFERENCE_FRAGMENT_UPDATED"/>
  <int value="291" label="WEB_NAVIGATION_ON_TAB_REPLACED"/>
  <int value="292" label="WEB_REQUEST_ON_AUTH_REQUIRED"/>
  <int value="293" label="WEB_REQUEST_ON_BEFORE_REDIRECT"/>
  <int value="294" label="WEB_REQUEST_ON_BEFORE_REQUEST"/>
  <int value="295" label="WEB_REQUEST_ON_BEFORE_SEND_HEADERS"/>
  <int value="296" label="WEB_REQUEST_ON_COMPLETED"/>
  <int value="297" label="WEB_REQUEST_ON_ERROR_OCCURRED"/>
  <int value="298" label="WEB_REQUEST_ON_HEADERS_RECEIVED"/>
  <int value="299" label="WEB_REQUEST_ON_RESPONSE_STARTED"/>
  <int value="300" label="WEB_REQUEST_ON_SEND_HEADERS"/>
  <int value="301" label="WEBRTC_AUDIO_PRIVATE_ON_SINKS_CHANGED"/>
  <int value="302" label="WEBSTORE_ON_DOWNLOAD_PROGRESS"/>
  <int value="303" label="WEBSTORE_ON_INSTALL_STAGE_CHANGED"/>
  <int value="304" label="WEBSTORE_WIDGET_PRIVATE_ON_SHOW_WIDGET"/>
  <int value="305" label="WEBVIEW_TAG_CLOSE"/>
  <int value="306" label="WEBVIEW_TAG_CONSOLEMESSAGE"/>
  <int value="307" label="WEBVIEW_TAG_CONTENTLOAD"/>
  <int value="308" label="WEBVIEW_TAG_DIALOG"/>
  <int value="309" label="WEBVIEW_TAG_EXIT"/>
  <int value="310" label="WEBVIEW_TAG_FINDUPDATE"/>
  <int value="311" label="WEBVIEW_TAG_LOADABORT"/>
  <int value="312" label="WEBVIEW_TAG_LOADCOMMIT"/>
  <int value="313" label="WEBVIEW_TAG_LOADREDIRECT"/>
  <int value="314" label="WEBVIEW_TAG_LOADSTART"/>
  <int value="315" label="WEBVIEW_TAG_LOADSTOP"/>
  <int value="316" label="WEBVIEW_TAG_NEWWINDOW"/>
  <int value="317" label="WEBVIEW_TAG_PERMISSIONREQUEST"/>
  <int value="318" label="WEBVIEW_TAG_RESPONSIVE"/>
  <int value="319" label="WEBVIEW_TAG_SIZECHANGED"/>
  <int value="320" label="WEBVIEW_TAG_UNRESPONSIVE"/>
  <int value="321" label="WEBVIEW_TAG_ZOOMCHANGE"/>
  <int value="322" label="WINDOWS_ON_CREATED"/>
  <int value="323" label="WINDOWS_ON_FOCUS_CHANGED"/>
  <int value="324" label="WINDOWS_ON_REMOVED"/>
  <int value="325" label="FILE_SYSTEM_PROVIDER_ON_EXECUTE_ACTION_REQUESTED"/>
  <int value="326" label="FILE_SYSTEM_PROVIDER_ON_GET_ACTIONS_REQUESTED"/>
  <int value="327" label="LAUNCHER_SEARCH_PROVIDER_ON_QUERY_STARTED"/>
  <int value="328" label="LAUNCHER_SEARCH_PROVIDER_ON_QUERY_ENDED"/>
  <int value="329" label="LAUNCHER_SEARCH_PROVIDER_ON_OPEN_RESULT"/>
  <int value="330" label="CHROME_WEB_VIEW_INTERNAL_ON_CLICKED"/>
  <int value="331" label="WEB_VIEW_INTERNAL_CONTEXT_MENUS"/>
  <int value="332" label="CONTEXT_MENUS"/>
  <int value="333" label="TTS_ON_EVENT"/>
  <int value="334" label="LAUNCHER_PAGE_ON_TRANSITION_CHANGED"/>
  <int value="335" label="LAUNCHER_PAGE_ON_POP_SUBPAGE"/>
  <int value="336" label="DIAL_ON_DEVICE_LIST"/>
  <int value="337" label="DIAL_ON_ERROR"/>
  <int value="338" label="CAST_CHANNEL_ON_MESSAGE"/>
  <int value="339" label="CAST_CHANNEL_ON_ERROR"/>
  <int value="340" label="SCREENLOCK_PRIVATE_ON_CHANGED"/>
  <int value="341" label="SCREENLOCK_PRIVATE_ON_AUTH_ATTEMPTED"/>
  <int value="342" label="TYPES_CHROME_SETTING_ON_CHANGE"/>
  <int value="343" label="TYPES_PRIVATE_CHROME_DIRECT_SETTING_ON_CHANGE"/>
  <int value="344" label="WEB_VIEW_INTERNAL_ON_MESSAGE"/>
  <int value="345" label="EXTENSION_VIEW_INTERNAL_ON_LOAD_COMMIT"/>
  <int value="346" label="RUNTIME_ON_REQUEST"/>
  <int value="347" label="RUNTIME_ON_REQUEST_EXTERNAL"/>
  <int value="348" label="CHROME_WEB_VIEW_INTERNAL_ON_CONTEXT_MENU_SHOW"/>
  <int value="349" label="WEB_VIEW_INTERNAL_ON_BEFORE_REQUEST"/>
  <int value="350" label="WEB_VIEW_INTERNAL_ON_BEFORE_SEND_HEADERS"/>
  <int value="351" label="WEB_VIEW_INTERNAL_ON_CLOSE"/>
  <int value="352" label="WEB_VIEW_INTERNAL_ON_COMPLETED"/>
  <int value="353" label="WEB_VIEW_INTERNAL_ON_CONSOLE_MESSAGE"/>
  <int value="354" label="WEB_VIEW_INTERNAL_ON_CONTENT_LOAD"/>
  <int value="355" label="WEB_VIEW_INTERNAL_ON_DIALOG"/>
  <int value="356" label="WEB_VIEW_INTERNAL_ON_DROP_LINK"/>
  <int value="357" label="WEB_VIEW_INTERNAL_ON_EXIT"/>
  <int value="358" label="WEB_VIEW_INTERNAL_ON_EXIT_FULLSCREEN"/>
  <int value="359" label="WEB_VIEW_INTERNAL_ON_FIND_REPLY"/>
  <int value="360" label="WEB_VIEW_INTERNAL_ON_FRAME_NAME_CHANGED"/>
  <int value="361" label="WEB_VIEW_INTERNAL_ON_HEADERS_RECEIVED"/>
  <int value="362" label="WEB_VIEW_INTERNAL_ON_LOAD_ABORT"/>
  <int value="363" label="WEB_VIEW_INTERNAL_ON_LOAD_COMMIT"/>
  <int value="364" label="WEB_VIEW_INTERNAL_ON_LOAD_PROGRESS"/>
  <int value="365" label="WEB_VIEW_INTERNAL_ON_LOAD_REDIRECT"/>
  <int value="366" label="WEB_VIEW_INTERNAL_ON_LOAD_START"/>
  <int value="367" label="WEB_VIEW_INTERNAL_ON_LOAD_STOP"/>
  <int value="368" label="WEB_VIEW_INTERNAL_ON_NEW_WINDOW"/>
  <int value="369" label="WEB_VIEW_INTERNAL_ON_PERMISSION_REQUEST"/>
  <int value="370" label="WEB_VIEW_INTERNAL_ON_RESPONSE_STARTED"/>
  <int value="371" label="WEB_VIEW_INTERNAL_ON_RESPONSIVE"/>
  <int value="372" label="WEB_VIEW_INTERNAL_ON_SIZE_CHANGED"/>
  <int value="373" label="WEB_VIEW_INTERNAL_ON_UNRESPONSIVE"/>
  <int value="374" label="WEB_VIEW_INTERNAL_ON_ZOOM_CHANGE"/>
  <int value="375" label="GUEST_VIEW_INTERNAL_ON_RESIZE"/>
  <int value="376" label="LANGUAGE_SETTINGS_PRIVATE_ON_INPUT_METHOD_ADDED"/>
  <int value="377" label="LANGUAGE_SETTINGS_PRIVATE_ON_INPUT_METHOD_REMOVED"/>
  <int value="378"
      label="LANGUAGE_SETTINGS_PRIVATE_ON_SPELLCHECK_DICTIONARIES_CHANGED"/>
  <int value="379"
      label="LANGUAGE_SETTINGS_PRIVATE_ON_CUSTOM_DICTIONARY_CHANGED"/>
  <int value="380" label="CAST_DEVICES_PRIVATE_ON_UPDATE_DEVICES_REQUESTED"/>
  <int value="381" label="CAST_DEVICES_PRIVATE_ON_START_CAST"/>
  <int value="382" label="CAST_DEVICES_PRIVATE_ON_STOP_CAST"/>
  <int value="383" label="CERTIFICATEPROVIDER_ON_CERTIFICATES_REQUESTED"/>
  <int value="384" label="CERTIFICATEPROVIDER_ON_SIGN_DIGEST_REQUESTED"/>
  <int value="385" label="WEB_VIEW_INTERNAL_ON_AUTH_REQUIRED"/>
  <int value="386" label="WEB_VIEW_INTERNAL_ON_BEFORE_REDIRECT"/>
  <int value="387" label="WEB_VIEW_INTERNAL_ON_ERROR_OCCURRED"/>
  <int value="388" label="WEB_VIEW_INTERNAL_ON_SEND_HEADERS"/>
  <int value="389" label="EASY_UNLOCK_PRIVATE_ON_CONNECTION_STATUS_CHANGED"/>
  <int value="390" label="EASY_UNLOCK_PRIVATE_ON_DATA_RECEIVED"/>
  <int value="391" label="EASY_UNLOCK_PRIVATE_ON_SEND_COMPLETED"/>
  <int value="392" label="DISPLAY_SOURCE_ON_SINKS_UPDATED"/>
  <int value="393" label="INPUT_IME_ON_COMPOSITION_BOUNDS_CHANGED"/>
  <int value="394" label="INPUT_METHOD_PRIVATE_ON_IME_MENU_ACTIVATION_CHANGED"/>
  <int value="395" label="INPUT_METHOD_PRIVATE_ON_IME_MENU_LIST_CHANGED"/>
  <int value="396" label="INPUT_METHOD_PRIVATE_ON_IME_MENU_ITEMS_CHANGED"/>
  <int value="397" label="BLUETOOTH_LOW_ENERGY_ON_CHARACTERISTIC_READ_REQUEST"/>
  <int value="398"
      label="BLUETOOTH_LOW_ENERGY_ON_CHARACTERISTIC_WRITE_REQUEST"/>
  <int value="399" label="BLUETOOTH_LOW_ENERGY_ON_DESCRIPTOR_READ_REQUEST"/>
  <int value="400" label="BLUETOOTH_LOW_ENERGY_ON_DESCRIPTOR_WRITE_REQUEST"/>
  <int value="401" label="ACCESSIBILITY_PRIVATE_ON_ACCESSIBILITY_GESTURE"/>
</enum>

<enum name="ExtensionFileWriteResult" type="int">
  <obsolete>
    Deprecated 10/2013.
  </obsolete>
  <int value="0" label="SUCCESS"/>
  <int value="1" label="CANT_CREATE_TEMP_CRX"/>
  <int value="2" label="CANT_WRITE_CRX_DATA"/>
  <int value="3" label="CANT_READ_CRX_FILE"/>
</enum>

<enum name="ExtensionFromWebstoreInconcistencyEnum" type="int">
  <int value="0" label="Non-webstore update URL"/>
  <int value="1" label="External install location"/>
</enum>

<enum name="ExtensionFunctions" type="int">
<!-- Generated from extensions/browser/extension_function_histogram_value.h -->

  <int value="0" label="UNKNOWN"/>
  <int value="1" label="WEBNAVIGATION_GETALLFRAMES"/>
  <int value="2" label="BROWSINGDATA_REMOVEWEBSQL"/>
  <int value="3" label="ALARMS_CREATE"/>
  <int value="4" label="FILEMANAGERPRIVATEINTERNAL_REMOVEFILEWATCH"/>
  <int value="5" label="COOKIES_GET"/>
  <int value="6" label="FONTSETTINGS_GETMINIMUMFONTSIZE"/>
  <int value="7" label="CHROMEOSINFOPRIVATE_GET"/>
  <int value="8" label="BOOKMARKMANAGERPRIVATE_CUT"/>
  <int value="9" label="TABS_CAPTUREVISIBLETAB"/>
  <int value="10" label="MANAGEMENT_SETENABLED"/>
  <int value="11" label="HISTORY_DELETEALL"/>
  <int value="12" label="STORAGE_GET"/>
  <int value="13" label="SOCKET_SETKEEPALIVE"/>
  <int value="14" label="DOWNLOADS_CANCEL"/>
  <int value="15" label="BOOKMARKS_CREATE"/>
  <int value="16" label="BOOKMARKS_UPDATE"/>
  <int value="17" label="FILEMANAGERPRIVATE_GETDRIVEFILES"/>
  <int value="18" label="TERMINALPRIVATE_ONTERMINALRESIZE"/>
  <int value="19" label="DELETED_FILEMANAGERPRIVATE_REQUESTDIRECTORYREFRESH"/>
  <int value="20" label="BLUETOOTH_GETADAPTERSTATE"/>
  <int value="21" label="FILEMANAGERPRIVATEINTERNAL_CANCELFILETRANSFERS"/>
  <int value="22" label="FILEMANAGERPRIVATEINTERNAL_PINDRIVEFILE"/>
  <int value="23" label="SOCKET_WRITE"/>
  <int value="24" label="OMNIBOX_SETDEFAULTSUGGESTION"/>
  <int value="25" label="TTS_SPEAK"/>
  <int value="26" label="WALLPAPERPRIVATE_RESTOREMINIMIZEDWINDOWS"/>
  <int value="27" label="BROWSINGDATA_REMOVEHISTORY"/>
  <int value="28" label="DELETED_FILEMANAGERPRIVATE_ISFULLSCREEN"/>
  <int value="29" label="AUTOTESTPRIVATE_LOGOUT"/>
  <int value="30" label="EXPERIMENTAL_HISTORY_GETMOSTVISITED"/>
  <int value="31" label="DELETED_BLUETOOTH_DISCONNECT"/>
  <int value="32" label="DELETED_BLUETOOTH_SETOUTOFBANDPAIRINGDATA"/>
  <int value="33" label="BOOKMARKMANAGERPRIVATE_CANPASTE"/>
  <int value="34" label="AUTOTESTPRIVATE_RESTART"/>
  <int value="35" label="USB_CLAIMINTERFACE"/>
  <int value="36" label="MEDIAPLAYERPRIVATE_SETWINDOWHEIGHT"/>
  <int value="37" label="DELETED_EXPERIMENTAL_PROCESSES_GETPROCESSINFO"/>
  <int value="38" label="HISTORY_GETVISITS"/>
  <int value="39" label="SOCKET_BIND"/>
  <int value="40" label="TABS_MOVE"/>
  <int value="41" label="SOCKET_DISCONNECT"/>
  <int value="42" label="FILESYSTEM_GETWRITABLEENTRY"/>
  <int value="43" label="SYNCFILESYSTEM_REQUESTFILESYSTEM"/>
  <int value="44" label="COMMANDS_GETALL"/>
  <int value="45" label="EXPERIMENTAL_DISCOVERY_REMOVESUGGESTION"/>
  <int value="46" label="VIRTUALKEYBOARDPRIVATE_SENDKEYEVENT"/>
  <int value="47" label="BOOKMARKMANAGERPRIVATE_GETSUBTREE"/>
  <int value="48" label="DELETED_EXPERIMENTAL_RLZ_RECORDPRODUCTEVENT"/>
  <int value="49" label="BOOKMARKS_GETRECENT"/>
  <int value="50" label="APP_CURRENTWINDOWINTERNAL_SETBOUNDS"/>
  <int value="51" label="CLOUDPRINTPRIVATE_SETUPCONNECTOR"/>
  <int value="52" label="SERIAL_SETCONTROLSIGNALS"/>
  <int value="53" label="DELETED_FILEMANAGERPRIVATE_SETLASTMODIFIED"/>
  <int value="54" label="IDLE_SETDETECTIONINTERVAL"/>
  <int value="55" label="FILEMANAGERPRIVATEINTERNAL_GETFILETASKS"/>
  <int value="56" label="WEBSTOREPRIVATE_GETSTORELOGIN"/>
  <int value="57" label="SYSTEMPRIVATE_GETINCOGNITOMODEAVAILABILITY"/>
  <int value="58" label="IDLTEST_SENDARRAYBUFFERVIEW"/>
  <int value="59" label="SOCKET_SETNODELAY"/>
  <int value="60" label="APP_CURRENTWINDOWINTERNAL_SHOW"/>
  <int value="61" label="WEBSTOREPRIVATE_GETBROWSERLOGIN"/>
  <int value="62" label="EXPERIMENTAL_IDENTITY_GETAUTHTOKEN"/>
  <int value="63" label="DELETED_SYSTEMINFO_DISPLAY_GETDISPLAYINFO"/>
  <int value="64" label="BROWSINGDATA_REMOVEPLUGINDATA"/>
  <int value="65" label="SOCKET_LISTEN"/>
  <int value="66" label="MEDIAGALLERIES_GETMEDIAFILESYSTEMS"/>
  <int value="67" label="DOWNLOADS_OPEN"/>
  <int value="68" label="TABS_EXECUTESCRIPT"/>
  <int value="69" label="SYNCFILESYSTEM_GETUSAGEANDQUOTA"/>
  <int value="70" label="INPUTMETHODPRIVATE_GET"/>
  <int value="71" label="USB_CLOSEDEVICE"/>
  <int value="72" label="TTS_STOP"/>
  <int value="73" label="DELETED_SERIAL_GETPORTS"/>
  <int value="74" label="DELETED_FILEMANAGERPRIVATE_CLEARDRIVECACHE"/>
  <int value="75" label="SERIAL_GETCONTROLSIGNALS"/>
  <int value="76" label="DELETED_DEVELOPERPRIVATE_ENABLE"/>
  <int value="77" label="FILEMANAGERPRIVATEINTERNAL_GETENTRYPROPERTIES"/>
  <int value="78" label="USB_FINDDEVICES"/>
  <int value="79" label="BOOKMARKMANAGERPRIVATE_DROP"/>
  <int value="80" label="DELETED_FILEMANAGERPRIVATE_GETFILETRANSFERS"/>
  <int value="81" label="INPUT_IME_SETMENUITEMS"/>
  <int value="82" label="BOOKMARKS_EXPORT"/>
  <int value="83" label="HISTORY_SEARCH"/>
  <int value="84" label="TTSENGINE_SENDTTSEVENT"/>
  <int value="85" label="ACCESSIBILITY_PRIVATE_GETALERTSFORTAB"/>
  <int value="86" label="BOOKMARKS_IMPORT"/>
  <int value="87" label="SYNCFILESYSTEM_DELETEFILESYSTEM"/>
  <int value="88" label="DEBUGGER_SENDCOMMAND"/>
  <int value="89" label="DEBUGGER_DETACH"/>
  <int value="90" label="METRICSPRIVATE_RECORDSMALLCOUNT"/>
  <int value="91" label="APP_CURRENTWINDOWINTERNAL_MINIMIZE"/>
  <int value="92" label="DEVELOPERPRIVATE_AUTOUPDATE"/>
  <int value="93" label="DNS_RESOLVE"/>
  <int value="94" label="DELETED_EXPERIMENTAL_SYSTEMINFO_MEMORY_GET"/>
  <int value="95" label="HISTORY_ADDURL"/>
  <int value="96" label="TABS_GET"/>
  <int value="97" label="BROWSERACTION_SETBADGETEXT"/>
  <int value="98" label="TABS_RELOAD"/>
  <int value="99" label="WINDOWS_CREATE"/>
  <int value="100" label="DEVELOPERPRIVATE_LOADUNPACKED"/>
  <int value="101" label="DELETED_DOWNLOADS_SETDESTINATION"/>
  <int value="102" label="DELETED_EXPERIMENTAL_PROCESSES_GETPROCESSIDFORTAB"/>
  <int value="103" label="BOOKMARKS_GETCHILDREN"/>
  <int value="104" label="BROWSERACTION_GETTITLE"/>
  <int value="105" label="TERMINALPRIVATE_OPENTERMINALPROCESS"/>
  <int value="106" label="DELETED_SERIAL_CLOSE"/>
  <int value="107" label="CONTEXTMENUS_REMOVE"/>
  <int value="108" label="FILESYSTEM_REQUESTFILESYSTEM"/>
  <int value="109" label="ECHOPRIVATE_GETREGISTRATIONCODE"/>
  <int value="110" label="TABS_GETCURRENT"/>
  <int value="111" label="FONTSETTINGS_CLEARDEFAULTFIXEDFONTSIZE"/>
  <int value="112" label="MEDIAPLAYERPRIVATE_CLOSEWINDOW"/>
  <int value="113" label="WEBREQUESTINTERNAL_ADDEVENTLISTENER"/>
  <int value="114" label="CLOUDPRINTPRIVATE_GETPRINTERS"/>
  <int value="115" label="STORAGE_SET"/>
  <int value="116" label="FONTSETTINGS_GETDEFAULTFONTSIZE"/>
  <int value="117" label="EXTENSION_SETUPDATEURLDATA"/>
  <int value="118" label="DELETED_SERIAL_WRITE"/>
  <int value="119" label="IDLE_QUERYSTATE"/>
  <int value="120" label="DELETED_EXPERIMENTAL_RLZ_GETACCESSPOINTRLZ"/>
  <int value="121" label="WEBSTOREPRIVATE_SETSTORELOGIN"/>
  <int value="122" label="DELETED_PAGEACTIONS_ENABLEFORTAB"/>
  <int value="123" label="COOKIES_SET"/>
  <int value="124" label="CONTENTSETTINGS_SET"/>
  <int value="125" label="CONTEXTMENUS_REMOVEALL"/>
  <int value="126" label="TABS_INSERTCSS"/>
  <int value="127" label="WEBREQUEST_HANDLERBEHAVIORCHANGED"/>
  <int value="128" label="INPUT_IME_SETCURSORPOSITION"/>
  <int value="129" label="OMNIBOX_SENDSUGGESTIONS"/>
  <int value="130" label="SYSTEMINDICATOR_ENABLE"/>
  <int value="131" label="EVENTS_GETRULES"/>
  <int value="132" label="BOOKMARKMANAGERPRIVATE_COPY"/>
  <int value="133" label="SOCKET_RECVFROM"/>
  <int value="134" label="TABS_GETALLINWINDOW"/>
  <int value="135" label="CONTEXTMENUS_UPDATE"/>
  <int value="136" label="BOOKMARKS_SEARCH"/>
  <int value="137" label="EXPERIMENTAL_APP_CLEARALLNOTIFICATIONS"/>
  <int value="138" label="DELETED_BLUETOOTH_GETLOCALOUTOFBANDPAIRINGDATA"/>
  <int value="139" label="SYSTEMPRIVATE_GETUPDATESTATUS"/>
  <int value="140" label="FONTSETTINGS_CLEARMINIMUMFONTSIZE"/>
  <int value="141" label="DELETED_FILEMANAGERPRIVATE_GETFILELOCATIONS"/>
  <int value="142" label="EXPERIMENTAL_DISCOVERY_SUGGEST"/>
  <int value="143" label="FILEMANAGERPRIVATEINTERNAL_SETDEFAULTTASK"/>
  <int value="144" label="BROWSERACTION_GETBADGETEXT"/>
  <int value="145" label="APP_CURRENTWINDOWINTERNAL_HIDE"/>
  <int value="146" label="SOCKET_CONNECT"/>
  <int value="147" label="BOOKMARKS_GETSUBTREE"/>
  <int value="148" label="HISTORY_DELETEURL"/>
  <int value="149"
      label="DELETED_EXPERIMENTAL_MEDIAGALLERIES_ASSEMBLEMEDIAFILE"/>
  <int value="150" label="BOOKMARKMANAGERPRIVATE_STARTDRAG"/>
  <int value="151" label="BROWSINGDATA_REMOVEPASSWORDS"/>
  <int value="152" label="DOWNLOADS_DRAG"/>
  <int value="153" label="INPUT_IME_SETCOMPOSITION"/>
  <int value="154" label="METRICSPRIVATE_RECORDUSERACTION"/>
  <int value="155" label="USB_RELEASEINTERFACE"/>
  <int value="156" label="PAGEACTION_GETPOPUP"/>
  <int value="157" label="DELETED_SCRIPTBADGE_GETATTENTION"/>
  <int value="158" label="FONTSETTINGS_GETFONTLIST"/>
  <int value="159" label="PERMISSIONS_CONTAINS"/>
  <int value="160" label="DELETED_SCRIPTBADGE_GETPOPUP"/>
  <int value="161" label="ACCESSIBILITY_PRIVATE_GETFOCUSEDCONTROL"/>
  <int value="162" label="DEVELOPERPRIVATE_GETSTRINGS"/>
  <int value="163" label="METRICSPRIVATE_RECORDMEDIUMCOUNT"/>
  <int value="164" label="MANAGEMENT_GET"/>
  <int value="165" label="PERMISSIONS_GETALL"/>
  <int value="166" label="DOWNLOADS_SHOW"/>
  <int value="167" label="DELETED_EXPERIMENTAL_RLZ_CLEARPRODUCTSTATE"/>
  <int value="168" label="TABS_REMOVE"/>
  <int value="169" label="MANAGEMENT_GETPERMISSIONWARNINGSBYID"/>
  <int value="170" label="WINDOWS_GET"/>
  <int value="171" label="FILEMANAGERPRIVATEINTERNAL_EXECUTETASK"/>
  <int value="172" label="TTS_GETVOICES"/>
  <int value="173" label="MANAGEMENT_GETALL"/>
  <int value="174" label="MANAGEMENT_GETPERMISSIONWARNINGSBYMANIFEST"/>
  <int value="175" label="APP_CURRENTWINDOWINTERNAL_CLEARATTENTION"/>
  <int value="176" label="AUTOTESTPRIVATE_SHUTDOWN"/>
  <int value="177" label="FONTSETTINGS_CLEARDEFAULTFONTSIZE"/>
  <int value="178" label="BOOKMARKS_GETTREE"/>
  <int value="179" label="FILEMANAGERPRIVATE_SELECTFILES"/>
  <int value="180" label="RUNTIME_GETBACKGROUNDPAGE"/>
  <int value="181" label="DELETED_EXPERIMENTAL_RECORD_REPLAYURLS"/>
  <int value="182" label="WEBSTOREPRIVATE_COMPLETEINSTALL"/>
  <int value="183" label="DELETED_EXPERIMENTAL_SPEECHINPUT_START"/>
  <int value="184" label="COOKIES_GETALL"/>
  <int value="185" label="DOWNLOADS_GETFILEICON"/>
  <int value="186" label="PAGEACTION_GETTITLE"/>
  <int value="187" label="BROWSINGDATA_REMOVE"/>
  <int value="188" label="DELETED_SERIAL_OPEN"/>
  <int value="189" label="FILESYSTEM_GETDISPLAYPATH"/>
  <int value="190" label="FILEMANAGERPRIVATE_FORMATVOLUME"/>
  <int value="191" label="BOOKMARKS_GET"/>
  <int value="192" label="DELETED_MANAGEDMODEPRIVATE_GET"/>
  <int value="193" label="ALARMS_CLEAR"/>
  <int value="194" label="SYNCFILESYSTEM_GETFILESYNCSTATUS"/>
  <int value="195" label="SOCKET_GETINFO"/>
  <int value="196" label="WEBSTOREPRIVATE_INSTALLBUNDLE"/>
  <int value="197" label="BROWSERACTION_ENABLE"/>
  <int value="198" label="METRICSPRIVATE_RECORDMEDIUMTIME"/>
  <int value="199" label="PAGEACTION_SETTITLE"/>
  <int value="200" label="CLOUDPRINTPRIVATE_GETHOSTNAME"/>
  <int value="201" label="CONTENTSETTINGS_GETRESOURCEIDENTIFIERS"/>
  <int value="202" label="SOCKET_CREATE"/>
  <int value="203" label="DEVELOPERPRIVATE_RELOAD"/>
  <int value="204" label="FILEMANAGERPRIVATE_GETVOLUMEMETADATALIST"/>
  <int value="205" label="APP_RUNTIME_POSTINTENTRESPONSE"/>
  <int value="206" label="DELETED_MANAGEDMODEPRIVATE_SETPOLICY"/>
  <int value="207" label="WEBSTOREPRIVATE_BEGININSTALLWITHMANIFEST3"/>
  <int value="208" label="WALLPAPERPRIVATE_SETWALLPAPER"/>
  <int value="209" label="USB_CONTROLTRANSFER"/>
  <int value="210" label="DELETED_EXPERIMENTAL_SPEECHINPUT_STOP"/>
  <int value="211" label="USB_BULKTRANSFER"/>
  <int value="212" label="DELETED_FILEMANAGERPRIVATE_GETVOLUMEMETADATA"/>
  <int value="213" label="PAGECAPTURE_SAVEASMHTML"/>
  <int value="214" label="EXTENSION_ISALLOWEDINCOGNITOACCESS"/>
  <int value="215" label="BROWSINGDATA_REMOVEAPPCACHE"/>
  <int value="216" label="APP_CURRENTWINDOWINTERNAL_DRAWATTENTION"/>
  <int value="217" label="METRICSPRIVATE_RECORDCOUNT"/>
  <int value="218" label="USB_INTERRUPTTRANSFER"/>
  <int value="219" label="TYPES_CHROMESETTING_CLEAR"/>
  <int value="220" label="INPUT_IME_COMMITTEXT"/>
  <int value="221" label="IDLTEST_SENDARRAYBUFFER"/>
  <int value="222" label="WALLPAPERPRIVATE_SETWALLPAPERIFEXISTS"/>
  <int value="223" label="SOCKET_ACCEPT"/>
  <int value="224" label="WEBNAVIGATION_GETFRAME"/>
  <int value="225" label="EXPERIMENTAL_POWER_RELEASEKEEPAWAKE"/>
  <int value="226" label="APP_CURRENTWINDOWINTERNAL_SETICON"/>
  <int value="227" label="PUSHMESSAGING_GETCHANNELID"/>
  <int value="228" label="EXPERIMENTAL_INFOBARS_SHOW"/>
  <int value="229" label="INPUT_IME_SETCANDIDATEWINDOWPROPERTIES"/>
  <int value="230" label="METRICSPRIVATE_RECORDPERCENTAGE"/>
  <int value="231" label="TYPES_CHROMESETTING_GET"/>
  <int value="232" label="WINDOWS_GETLASTFOCUSED"/>
  <int value="233" label="DELETED_MANAGEDMODEPRIVATE_GETPOLICY"/>
  <int value="234" label="STORAGE_CLEAR"/>
  <int value="235" label="STORAGE_GETBYTESINUSE"/>
  <int value="236" label="TABS_QUERY"/>
  <int value="237" label="PAGEACTION_SETPOPUP"/>
  <int value="238" label="DEVELOPERPRIVATE_INSPECT"/>
  <int value="239" label="DOWNLOADS_SEARCH"/>
  <int value="240" label="FONTSETTINGS_CLEARFONT"/>
  <int value="241" label="WINDOWS_UPDATE"/>
  <int value="242" label="BOOKMARKMANAGERPRIVATE_CANOPENNEWWINDOWS"/>
  <int value="243" label="SERIAL_FLUSH"/>
  <int value="244" label="BROWSERACTION_SETTITLE"/>
  <int value="245" label="BOOKMARKMANAGERPRIVATE_CANEDIT"/>
  <int value="246" label="WALLPAPERPRIVATE_SETCUSTOMWALLPAPER"/>
  <int value="247" label="BOOKMARKS_REMOVE"/>
  <int value="248" label="INPUT_IME_SETCANDIDATES"/>
  <int value="249" label="TERMINALPRIVATE_CLOSETERMINALPROCESS"/>
  <int value="250" label="HISTORY_DELETERANGE"/>
  <int value="251" label="IDLTEST_GETARRAYBUFFER"/>
  <int value="252" label="TERMINALPRIVATE_SENDINPUT"/>
  <int value="253" label="TABS_HIGHLIGHT"/>
  <int value="254" label="BLUETOOTH_STARTDISCOVERY"/>
  <int value="255" label="FILEMANAGERPRIVATE_SELECTFILE"/>
  <int value="256" label="WINDOWS_GETCURRENT"/>
  <int value="257" label="DEBUGGER_ATTACH"/>
  <int value="258" label="WALLPAPERPRIVATE_SAVETHUMBNAIL"/>
  <int value="259" label="INPUT_IME_KEYEVENTHANDLED"/>
  <int value="260" label="FONTSETTINGS_SETDEFAULTFONTSIZE"/>
  <int value="261" label="RUNTIME_REQUESTUPDATECHECK"/>
  <int value="262" label="PAGEACTION_SETICON"/>
  <int value="263" label="BROWSERACTION_SETBADGEBACKGROUNDCOLOR"/>
  <int value="264" label="DEVELOPERPRIVATE_GETITEMSINFO"/>
  <int value="265" label="BLUETOOTH_STOPDISCOVERY"/>
  <int value="266" label="COOKIES_REMOVE"/>
  <int value="267" label="DELETED_EXPERIMENTAL_RLZ_SENDFINANCIALPING"/>
  <int value="268" label="TABCAPTURE_GETCAPTUREDTABS"/>
  <int value="269" label="WINDOWS_REMOVE"/>
  <int value="270" label="WALLPAPERPRIVATE_GETOFFLINEWALLPAPERLIST"/>
  <int value="271" label="BROWSERACTION_GETBADGEBACKGROUNDCOLOR"/>
  <int value="272" label="DELETED_PAGEACTIONS_DISABLEFORTAB"/>
  <int value="273" label="DELETED_DEVELOPERPRIVATE_ALLOWFILEACCESS"/>
  <int value="274" label="FILEMANAGERPRIVATE_REMOVEMOUNT"/>
  <int value="275" label="DELETED_BLUETOOTH_CONNECT"/>
  <int value="276" label="TABCAPTURE_CAPTURE"/>
  <int value="277" label="NOTIFICATIONS_CREATE"/>
  <int value="278" label="TABS_DUPLICATE"/>
  <int value="279" label="DELETED_BLUETOOTH_WRITE"/>
  <int value="280" label="PAGEACTION_SHOW"/>
  <int value="281" label="WALLPAPERPRIVATE_GETTHUMBNAIL"/>
  <int value="282" label="DOWNLOADS_PAUSE"/>
  <int value="283" label="PERMISSIONS_REQUEST"/>
  <int value="284" label="TOPSITES_GET"/>
  <int value="285" label="BROWSINGDATA_REMOVEDOWNLOADS"/>
  <int value="286" label="BROWSINGDATA_REMOVELOCALSTORAGE"/>
  <int value="287" label="FILEBROWSERHANDLERINTERNAL_SELECTFILE"/>
  <int value="288" label="INPUT_IME_UPDATEMENUITEMS"/>
  <int value="289" label="FILEMANAGERPRIVATE_GETSTRINGS"/>
  <int value="290" label="CONTENTSETTINGS_GET"/>
  <int value="291" label="FONTSETTINGS_SETDEFAULTFIXEDFONTSIZE"/>
  <int value="292" label="EXPERIMENTAL_APP_NOTIFY"/>
  <int value="293" label="METRICSPRIVATE_RECORDLONGTIME"/>
  <int value="294" label="SOCKET_READ"/>
  <int value="295" label="DELETED_EXPERIMENTAL_PROCESSES_TERMINATE"/>
  <int value="296" label="METRICSPRIVATE_RECORDTIME"/>
  <int value="297" label="BOOKMARKMANAGERPRIVATE_GETSTRINGS"/>
  <int value="298" label="USB_ISOCHRONOUSTRANSFER"/>
  <int value="299" label="PERMISSIONS_REMOVE"/>
  <int value="300" label="MANAGEMENT_UNINSTALL"/>
  <int value="301" label="I18N_GETACCEPTLANGUAGES"/>
  <int value="302" label="MANAGEMENT_LAUNCHAPP"/>
  <int value="303" label="INPUT_IME_CLEARCOMPOSITION"/>
  <int value="304" label="ALARMS_GETALL"/>
  <int value="305" label="DIAL_DISCOVERNOW"/>
  <int value="306" label="TYPES_CHROMESETTING_SET"/>
  <int value="307" label="BROWSERACTION_SETICON"/>
  <int value="308" label="ACCESSIBILITY_PRIVATE_SETACCESSIBILITYENABLED"/>
  <int value="309" label="DELETED_FILEMANAGERPRIVATE_VIEWFILES"/>
  <int value="310" label="DELETED_BLUETOOTH_GETSERVICES"/>
  <int value="311" label="TABS_UPDATE"/>
  <int value="312" label="BROWSINGDATA_REMOVEFORMDATA"/>
  <int value="313" label="DELETED_FILEMANAGERPRIVATE_RELOADDRIVE"/>
  <int value="314" label="ALARMS_GET"/>
  <int value="315" label="BROWSINGDATA_REMOVEINDEXEDDB"/>
  <int value="316" label="FILEMANAGERPRIVATEINTERNAL_ADDFILEWATCH"/>
  <int value="317" label="CONTENTSETTINGS_CLEAR"/>
  <int value="318" label="FILEMANAGERPRIVATE_GETPREFERENCES"/>
  <int value="319" label="BOOKMARKMANAGERPRIVATE_PASTE"/>
  <int value="320" label="FILESYSTEM_ISWRITABLEENTRY"/>
  <int value="321" label="USB_SETINTERFACEALTERNATESETTING"/>
  <int value="322" label="FONTSETTINGS_SETMINIMUMFONTSIZE"/>
  <int value="323" label="BROWSERACTION_GETPOPUP"/>
  <int value="324" label="SOCKET_DESTROY"/>
  <int value="325" label="BLUETOOTH_GETDEVICES"/>
  <int value="326" label="ALARMS_CLEARALL"/>
  <int value="327" label="FONTSETTINGS_GETDEFAULTFIXEDFONTSIZE"/>
  <int value="328" label="FILEMANAGERPRIVATEINTERNAL_ZIPSELECTION"/>
  <int value="329" label="SYSTEMINDICATOR_DISABLE"/>
  <int value="330" label="DELETED_SCRIPTBADGE_SETPOPUP"/>
  <int value="331" label="EXTENSION_ISALLOWEDFILESCHEMEACCESS"/>
  <int value="332" label="EXPERIMENTAL_IDENTITY_LAUNCHWEBAUTHFLOW"/>
  <int value="333" label="FILEMANAGERPRIVATE_GETDRIVECONNECTIONSTATE"/>
  <int value="334" label="TABS_DETECTLANGUAGE"/>
  <int value="335" label="METRICSPRIVATE_RECORDVALUE"/>
  <int value="336" label="BOOKMARKMANAGERPRIVATE_SORTCHILDREN"/>
  <int value="337" label="DELETED_SERIAL_READ"/>
  <int value="338" label="APP_CURRENTWINDOWINTERNAL_MAXIMIZE"/>
  <int value="339" label="EXPERIMENTAL_DISCOVERY_CLEARALLSUGGESTIONS"/>
  <int value="340" label="DELETED_MANAGEDMODEPRIVATE_ENTER"/>
  <int value="341" label="DELETED_FILEMANAGERPRIVATE_TRANSFERFILE"/>
  <int value="342" label="BROWSERACTION_SETPOPUP"/>
  <int value="343" label="TABS_GETSELECTED"/>
  <int value="344" label="FONTSETTINGS_GETFONT"/>
  <int value="345" label="DELETED_BLUETOOTH_READ"/>
  <int value="346" label="WEBREQUESTINTERNAL_EVENTHANDLED"/>
  <int value="347" label="EVENTS_ADDRULES"/>
  <int value="348" label="CONTEXTMENUS_CREATE"/>
  <int value="349" label="MEDIAPLAYERPRIVATE_GETPLAYLIST"/>
  <int value="350" label="DOWNLOADS_ERASE"/>
  <int value="351" label="DELETED_EXPERIMENTAL_RECORD_CAPTUREURLS"/>
  <int value="352" label="TTS_ISSPEAKING"/>
  <int value="353" label="BOOKMARKS_REMOVETREE"/>
  <int value="354" label="FILEMANAGERPRIVATE_SEARCHDRIVE"/>
  <int value="355" label="DELETED_EXPERIMENTAL_SYSTEMINFO_CPU_GET"/>
  <int value="356" label="FILEMANAGERPRIVATE_SETPREFERENCES"/>
  <int value="357" label="FONTSETTINGS_SETFONT"/>
  <int value="358" label="SOCKET_GETNETWORKLIST"/>
  <int value="359" label="BOOKMARKS_MOVE"/>
  <int value="360" label="WALLPAPERPRIVATE_MINIMIZEINACTIVEWINDOWS"/>
  <int value="361" label="STORAGE_REMOVE"/>
  <int value="362" label="AUTOTESTPRIVATE_LOGINSTATUS"/>
  <int value="363" label="TABS_CREATE"/>
  <int value="364" label="FILEMANAGERPRIVATE_CANCELDIALOG"/>
  <int value="365" label="BROWSINGDATA_REMOVECOOKIES"/>
  <int value="366" label="FILESYSTEM_CHOOSEENTRY"/>
  <int value="367" label="MEDIAPLAYERPRIVATE_PLAY"/>
  <int value="368" label="WEBSTOREPRIVATE_GETWEBGLSTATUS"/>
  <int value="369" label="SOCKET_SENDTO"/>
  <int value="370" label="BROWSINGDATA_REMOVEFILESYSTEMS"/>
  <int value="371" label="WALLPAPERPRIVATE_GETSTRINGS"/>
  <int value="372" label="BROWSINGDATA_REMOVECACHE"/>
  <int value="373" label="BOOKMARKMANAGERPRIVATE_RECORDLAUNCH"/>
  <int value="374" label="BROWSERACTION_DISABLE"/>
  <int value="375" label="DELETED_EXPERIMENTAL_SPEECHINPUT_ISRECORDING"/>
  <int value="376" label="APP_WINDOW_CREATE"/>
  <int value="377" label="RUNTIME_RELOAD"/>
  <int value="378" label="EXPERIMENTAL_POWER_REQUESTKEEPAWAKE"/>
  <int value="379" label="SYSTEMINDICATOR_SETICON"/>
  <int value="380" label="FILEMANAGERPRIVATE_ADDMOUNT"/>
  <int value="381" label="APP_CURRENTWINDOWINTERNAL_FOCUS"/>
  <int value="382" label="EVENTS_REMOVERULES"/>
  <int value="383" label="DOWNLOADS_DOWNLOAD"/>
  <int value="384" label="WINDOWS_GETALL"/>
  <int value="385" label="DELETED_FILEMANAGERPRIVATE_TOGGLEFULLSCREEN"/>
  <int value="386" label="APP_CURRENTWINDOWINTERNAL_RESTORE"/>
  <int value="387" label="DELETED_WEBSOCKETPROXYPRIVATE_GETPASSPORTFORTCP"/>
  <int value="388" label="PAGEACTION_HIDE"/>
  <int value="389" label="DELETED_EXPERIMENTAL_SYSTEMINFO_STORAGE_GET"/>
  <int value="390" label="DOWNLOADS_ACCEPTDANGER"/>
  <int value="391" label="DELETED_WEBSOCKETPROXYPRIVATE_GETURLFORTCP"/>
  <int value="392" label="FILEMANAGERPRIVATE_GETSIZESTATS"/>
  <int value="393" label="DOWNLOADS_RESUME"/>
  <int value="394" label="COOKIES_GETALLCOOKIESTORES"/>
  <int value="395" label="DELETED_MEDIAGALLERIESPRIVATE_ADDGALLERYWATCH"/>
  <int value="396" label="DELETED_MEDIAGALLERIESPRIVATE_REMOVEGALLERYWATCH"/>
  <int value="397" label="DELETED_WEBVIEW_EXECUTESCRIPT"/>
  <int value="398" label="NOTIFICATIONS_UPDATE"/>
  <int value="399" label="NOTIFICATIONS_CLEAR"/>
  <int value="400" label="DELETED_SESSIONRESTORE_GETRECENTLYCLOSED"/>
  <int value="401" label="DELETED_SESSIONRESTORE_RESTORE"/>
  <int value="402" label="MANAGEMENT_UNINSTALLSELF"/>
  <int value="403" label="ECHOPRIVATE_GETOOBETIMESTAMP"/>
  <int value="404" label="FILEMANAGERPRIVATEINTERNAL_VALIDATEPATHNAMELENGTH"/>
  <int value="405" label="BROWSINGDATA_SETTINGS"/>
  <int value="406" label="WEBSTOREPRIVATE_GETISLAUNCHERENABLED"/>
  <int value="407" label="NETWORKINGPRIVATE_GETPROPERTIES"/>
  <int value="408" label="NETWORKINGPRIVATE_GETVISIBLENETWORKS"/>
  <int value="409" label="NETWORKINGPRIVATE_STARTCONNECT"/>
  <int value="410" label="NETWORKINGPRIVATE_STARTDISCONNECT"/>
  <int value="411" label="DELETED_MEDIAGALLERIESPRIVATE_GETALLGALLERYWATCH"/>
  <int value="412" label="DELETED_MEDIAGALLERIESPRIVATE_REMOVEALLGALLERYWATCH"/>
  <int value="413" label="FILEMANAGERPRIVATE_SEARCHDRIVEMETADATA"/>
  <int value="414" label="DELETED_ECHOPRIVATE_CHECKALLOWREDEEMOFFERS"/>
  <int value="415" label="DELETED_MEDIAGALLERIESPRIVATE_EJECTDEVICE"/>
  <int value="416" label="FILEMANAGERPRIVATE_LOGOUTUSERFORREAUTHENTICATION"/>
  <int value="417" label="DEVELOPERPRIVATE_CHOOSEPATH"/>
  <int value="418" label="DEVELOPERPRIVATE_PACKDIRECTORY"/>
  <int value="419" label="NETWORKINGPRIVATE_VERIFYDESTINATION"/>
  <int value="420" label="NETWORKINGPRIVATE_VERIFYANDENCRYPTCREDENTIALS"/>
  <int value="421" label="NETWORKINGPRIVATE_VERIFYANDENCRYPTDATA"/>
  <int value="422" label="DEVELOPERPRIVATE_RESTART"/>
  <int value="423" label="DELETED_DEVELOPERPRIVATE_ALLOWINCOGNITO"/>
  <int value="424" label="INPUT_IME_DELETESURROUNDINGTEXT"/>
  <int value="425" label="DELETED_FILEMANAGERPRIVATE_OPENNEWWINDOW"/>
  <int value="426" label="CLOUDPRINTPRIVATE_GETCLIENTID"/>
  <int value="427" label="ECHOPRIVATE_GETUSERCONSENT"/>
  <int value="428" label="SYNCFILESYSTEM_SETCONFLICTRESOLUTIONPOLICY"/>
  <int value="429" label="SYNCFILESYSTEM_GETCONFLICTRESOLUTIONPOLICY"/>
  <int value="430" label="NETWORKINGPRIVATE_SETPROPERTIES"/>
  <int value="431" label="NETWORKINGPRIVATE_GETSTATE"/>
  <int value="432" label="POWER_REQUESTKEEPAWAKE"/>
  <int value="433" label="POWER_RELEASEKEEPAWAKE"/>
  <int value="434" label="WALLPAPERPRIVATE_SETCUSTOMWALLPAPERLAYOUT"/>
  <int value="435" label="DOWNLOADSINTERNAL_DETERMINEFILENAME"/>
  <int value="436" label="SYNCFILESYSTEM_GETFILESYNCSTATUSES"/>
  <int value="437" label="DELETED_MEDIAGALLERIESPRIVATE_GETHANDLERS"/>
  <int value="438" label="WALLPAPERPRIVATE_RESETWALLPAPER"/>
  <int value="439" label="DEVELOPERPRIVATE_PERMISSIONS"/>
  <int value="440" label="WEBSTOREPRIVATE_ENABLEAPPLAUNCHER"/>
  <int value="441" label="APP_CURRENTWINDOWINTERNAL_FULLSCREEN"/>
  <int value="442" label="DEVELOPERPRIVATE_LOADUNPACKEDCROS"/>
  <int value="443" label="NETWORKINGPRIVATE_REQUESTNETWORKSCAN"/>
  <int value="444" label="ENTERPRISE_PLATFORMKEYSPRIVATE_CHALLENGEMACHINEKEY"/>
  <int value="445" label="ENTERPRISE_PLATFORMKEYSPRIVATE_CHALLENGEUSERKEY"/>
  <int value="446" label="DEVELOPERPRIVATE_LOADPROJECTTOSYNCFS"/>
  <int value="447" label="DEVELOPERPRIVATE_GETPROJECTSINFO"/>
  <int value="448" label="DEVELOPERPRIVATE_LOADPROJECT"/>
  <int value="449" label="COMMANDLINEPRIVATE_HASSWITCH"/>
  <int value="450" label="NETWORKINGPRIVATE_GETMANAGEDPROPERTIES"/>
  <int value="451" label="DELETED_LOCATION_WATCHLOCATION"/>
  <int value="452" label="DELETED_LOCATION_CLEARWATCH"/>
  <int value="453" label="DELETED_BLUETOOTH_ADDPROFILE"/>
  <int value="454" label="DELETED_BLUETOOTH_REMOVEPROFILE"/>
  <int value="455" label="DELETED_BLUETOOTH_GETPROFILES"/>
  <int value="456" label="EXPERIMENTAL_IDENTITY_REMOVECACHEDAUTHTOKEN"/>
  <int value="457" label="AUDIO_GETINFO"/>
  <int value="458" label="AUDIO_SETACTIVEDEVICES"/>
  <int value="459" label="AUDIO_SETPROPERTIES"/>
  <int value="460" label="USB_RESETDEVICE"/>
  <int value="461" label="SOCKET_MULTICAST_JOIN_GROUP"/>
  <int value="462" label="SOCKET_MULTICAST_LEAVE_GROUP"/>
  <int value="463" label="SOCKET_MULTICAST_SET_TIME_TO_LIVE"/>
  <int value="464" label="SOCKET_MULTICAST_SET_LOOPBACK_MODE"/>
  <int value="465" label="SOCKET_MULTICAST_GET_JOINED_GROUPS"/>
  <int value="466" label="ACCESSIBILITY_PRIVATE_SETNATIVEACCESSIBILITYENABLED"/>
  <int value="467" label="RUNTIME_GETPLATFORMINFO"/>
  <int value="468" label="DELETED_WEBVIEW_INSERTCSS"/>
  <int value="469" label="METRICSPRIVATE_GETISCRASHRECORDINGENABLED"/>
  <int value="470" label="DELETED_IDENTITYPRIVATE_GETSTRINGS"/>
  <int value="471" label="NOTIFICATIONS_GET_ALL"/>
  <int value="472" label="USB_LISTINTERFACES"/>
  <int value="473" label="FILESYSTEM_RETAINENTRY"/>
  <int value="474" label="FILESYSTEM_ISRESTORABLE"/>
  <int value="475" label="FILESYSTEM_RESTOREENTRY"/>
  <int value="476" label="RUNTIME_SETUNINSTALLURL"/>
  <int value="477" label="INPUTMETHODPRIVATE_STARTIME"/>
  <int value="478" label="MUSICMANAGERPRIVATE_GETDEVICEID"/>
  <int value="479" label="TTS_PAUSE"/>
  <int value="480" label="TTS_RESUME"/>
  <int value="481" label="DELETED_SYSTEMINFO_CPU_GET"/>
  <int value="482" label="DELETED_EXPERIMENTAL_SYSTEMINFO_STORAGE_ADDWATCH"/>
  <int value="483" label="DELETED_EXPERIMENTAL_SYSTEMINFO_STORAGE_REMOVEWATCH"/>
  <int value="484" label="DELETED_EXPERIMENTAL_SYSTEMINFO_STORAGE_GETALLWATCH"/>
  <int value="485"
      label="DELETED_EXPERIMENTAL_SYSTEMINFO_STORAGE_REMOVEALLWATCH"/>
  <int value="486" label="DELETED_SYSTEMINFO_MEMORY_GET"/>
  <int value="487" label="ACTIVITYLOGPRIVATE_GETEXTENSIONACTIVITIES"/>
  <int value="488" label="RUNTIME_GETPACKAGEDIRECTORYENTRY"/>
  <int value="489" label="DELETED_SYSTEMINFO_DISPLAY_SETDISPLAYPROPERTIES"/>
  <int value="490" label="FEEDBACKPRIVATE_GETUSEREMAIL"/>
  <int value="491" label="FEEDBACKPRIVATE_GETSYSTEMINFORMATION"/>
  <int value="492" label="FEEDBACKPRIVATE_SENDFEEDBACK"/>
  <int value="493" label="VIRTUALKEYBOARDPRIVATE_INSERTTEXT"/>
  <int value="494" label="DIAGNOSTICS_SENDPACKET"/>
  <int value="495" label="METRICSPRIVATE_GETFIELDTRIAL"/>
  <int value="496" label="FILEMANAGERPRIVATE_ZOOM"/>
  <int value="497" label="DELETED_WEBVIEW_GO"/>
  <int value="498" label="WEBSTOREPRIVATE_ISININCOGNITOMODEFUNCTION"/>
  <int value="499" label="FILEMANAGERPRIVATE_REQUESTACCESSTOKEN"/>
  <int value="500" label="DELETED_WEBVIEW_STOP"/>
  <int value="501" label="DELETED_WEBVIEW_RELOAD"/>
  <int value="502" label="DELETED_WEBVIEW_TERMINATE"/>
  <int value="503" label="TYPES_PRIVATE_CHROMEDIRECTSETTING_GET"/>
  <int value="504" label="TYPES_PRIVATE_CHROMEDIRECTSETTING_SET"/>
  <int value="505" label="TYPES_PRIVATE_CHROMEDIRECTSETTING_CLEAR"/>
  <int value="506" label="DELETED_EXPERIMENTAL_SYSTEMINFO_STORAGE_EJECTDEVICE"/>
  <int value="507" label="SYSTEM_CPU_GETINFO"/>
  <int value="508" label="BOOKMARKMANAGERPRIVATE_REMOVETREES"/>
  <int value="509" label="SYSTEM_DISPLAY_GETINFO"/>
  <int value="510" label="SYSTEM_DISPLAY_SETDISPLAYPROPERTIES"/>
  <int value="511" label="SYSTEM_MEMORY_GETINFO"/>
  <int value="512" label="FILEMANAGERPRIVATEINTERNAL_GETSHAREURL"/>
  <int value="513" label="SYSTEM_STORAGE_GETINFO"/>
  <int value="514" label="SYSTEM_STORAGE_EJECTDEVICE"/>
  <int value="515" label="DELETED_SYSTEM_STORAGE_ADDAVAILABLECAPACITYWATCH"/>
  <int value="516" label="DELETED_SYSTEM_STORAGE_REMOVEAVAILABLECAPACITYWATCH"/>
  <int value="517"
      label="DELETED_SYSTEM_STORAGE_GETALLAVAILABLECAPACITYWATCHES"/>
  <int value="518"
      label="DELETED_SYSTEM_STORAGE_REMOVEALLAVAILABLECAPACITYWATCHES"/>
  <int value="519" label="DOWNLOADS_REMOVEFILE"/>
  <int value="520" label="DOWNLOADS_SHOWDEFAULTFOLDER"/>
  <int value="521" label="INFOBARS_SHOW"/>
  <int value="522" label="DOWNLOADS_SETSHELFENABLED"/>
  <int value="523" label="IMAGEWRITER_WRITEFROMURL"/>
  <int value="524" label="IMAGEWRITER_WRITEFROMFILE"/>
  <int value="525" label="IMAGEWRITER_CANCELWRITE"/>
  <int value="526" label="IMAGEWRITER_DESTROYPARTITIONS"/>
  <int value="527" label="FEEDBACKPRIVATE_GETSTRINGS"/>
  <int value="528" label="LOGPRIVATE_GETHISTORICAL"/>
  <int value="529" label="VIRTUALKEYBOARDPRIVATE_MOVECURSOR"/>
  <int value="530" label="METRICSPRIVATE_GETVARIATIONPARAMS"/>
  <int value="531" label="DELETED_WEBVIEW_SETPERMISSION"/>
  <int value="532" label="DESKTOPCAPTURE_CHOOSEDESKTOPMEDIA"/>
  <int value="533" label="APP_CURRENTWINDOWINTERNAL_SETSHAPE"/>
  <int value="534" label="PROCESSES_GETPROCESSINFO"/>
  <int value="535" label="PROCESSES_GETPROCESSIDFORTAB"/>
  <int value="536" label="PROCESSES_TERMINATE"/>
  <int value="537" label="SOCKETS_UDP_CREATE"/>
  <int value="538" label="SOCKETS_UDP_UPDATE"/>
  <int value="539" label="SOCKETS_UDP_BIND"/>
  <int value="540" label="SOCKETS_UDP_SEND"/>
  <int value="541" label="SOCKETS_UDP_CLOSE"/>
  <int value="542" label="SOCKETS_UDP_GETINFO"/>
  <int value="543" label="SOCKETS_UDP_GETSOCKETS"/>
  <int value="544" label="SOCKETS_UDP_JOINGROUP"/>
  <int value="545" label="SOCKETS_UDP_LEAVEGROUP"/>
  <int value="546" label="SOCKETS_UDP_SETMULTICASTTIMETOLIVE"/>
  <int value="547" label="SOCKETS_UDP_SETMULTICASTLOOPBACKMODE"/>
  <int value="548" label="SOCKETS_UDP_GETJOINEDGROUPS"/>
  <int value="549" label="SIGNED_IN_DEVICES_GET"/>
  <int value="550" label="AUTOTESTPRIVATE_SIMULATEASANMEMORYBUG"/>
  <int value="551" label="DELETED_WEBVIEW_CLEARDATA"/>
  <int value="552" label="SESSIONS_GETRECENTLYCLOSED"/>
  <int value="553" label="SESSIONS_GETDEVICES"/>
  <int value="554" label="SESSIONS_RESTORE"/>
  <int value="555" label="SYNCFILESYSTEM_GETSERVICESTATUS"/>
  <int value="556" label="ECHOPRIVATE_SETOFFERINFO"/>
  <int value="557" label="ECHOPRIVATE_GETOFFERINFO"/>
  <int value="558" label="DEVELOPERPRIVATE_ISPROFILEMANAGED"/>
  <int value="559" label="DELETED_FILEMANAGERPRIVATE_INSTALLWEBSTOREITEM"/>
  <int value="560" label="FILEMANAGERPRIVATEINTERNAL_STARTCOPY"/>
  <int value="561" label="FILEMANAGERPRIVATE_CANCELCOPY"/>
  <int value="562" label="NETWORKINGPRIVATE_CREATENETWORK"/>
  <int value="563" label="BRAILLEDISPLAYPRIVATE_GETDISPLAYSTATE"/>
  <int value="564" label="BRAILLEDISPLAYPRIVATE_WRITEDOTS"/>
  <int value="565" label="USB_GETDEVICES"/>
  <int value="566" label="USB_REQUESTACCESS"/>
  <int value="567" label="USB_OPENDEVICE"/>
  <int value="568" label="ACTIVITYLOGPRIVATE_DELETEDATABASE"/>
  <int value="569" label="ACTIVITYLOGPRIVATE_DELETEURLS"/>
  <int value="570" label="FILEMANAGERPRIVATE_REQUESTWEBSTOREACCESSTOKEN"/>
  <int value="571" label="IMAGEWRITER_LISTREMOVABLESTORAGEDEVICES"/>
  <int value="572" label="WALLPAPER_SETWALLPAPER"/>
  <int value="573" label="VIRTUALKEYBOARDPRIVATE_HIDEKEYBOARD"/>
  <int value="574" label="AUTOTESTPRIVATE_LOCKSCREEN"/>
  <int value="575" label="WEBRTCLOGGINGPRIVATE_SETMETADATA"/>
  <int value="576" label="WEBRTCLOGGINGPRIVATE_START"/>
  <int value="577" label="WEBRTCLOGGINGPRIVATE_SETUPLOADONRENDERCLOSE"/>
  <int value="578" label="WEBRTCLOGGINGPRIVATE_STOP"/>
  <int value="579" label="WEBRTCLOGGINGPRIVATE_UPLOAD"/>
  <int value="580" label="WEBRTCLOGGINGPRIVATE_DISCARD"/>
  <int value="581" label="DELETED_WEBVIEW_OVERRIDEUSERAGENT"/>
  <int value="582" label="DELETED_PRINCIPALSPRIVATE_SHOWAVATARBUBBLE"/>
  <int value="583" label="DELETED_PRINCIPALSPRIVATE_SIGNOUT"/>
  <int value="584" label="CAST_CHANNEL_OPEN"/>
  <int value="585" label="CAST_CHANNEL_SEND"/>
  <int value="586" label="CAST_CHANNEL_CLOSE"/>
  <int value="587" label="RUNTIME_RESTART"/>
  <int value="588" label="DESKTOPCAPTURE_CANCELCHOOSEDESKTOPMEDIA"/>
  <int value="589" label="APP_CURRENTWINDOWINTERNAL_SETALWAYSONTOP"/>
  <int value="590" label="SOCKETS_TCP_CREATE"/>
  <int value="591" label="SOCKETS_TCP_UPDATE"/>
  <int value="592" label="SOCKETS_TCP_SETPAUSED"/>
  <int value="593" label="SOCKETS_TCP_SETKEEPALIVE"/>
  <int value="594" label="SOCKETS_TCP_SETNODELAY"/>
  <int value="595" label="SOCKETS_TCP_CONNECT"/>
  <int value="596" label="SOCKETS_TCP_DISCONNECT"/>
  <int value="597" label="SOCKETS_TCP_SEND"/>
  <int value="598" label="SOCKETS_TCP_CLOSE"/>
  <int value="599" label="SOCKETS_TCP_GETINFO"/>
  <int value="600" label="SOCKETS_TCP_GETSOCKETS"/>
  <int value="601" label="NETWORKINGPRIVATE_GETENABLEDNETWORKTYPES"/>
  <int value="602" label="NETWORKINGPRIVATE_ENABLENETWORKTYPE"/>
  <int value="603" label="NETWORKINGPRIVATE_DISABLENETWORKTYPE"/>
  <int value="604" label="SOCKETS_TCP_SERVER_CREATE"/>
  <int value="605" label="SOCKETS_TCP_SERVER_UPDATE"/>
  <int value="606" label="SOCKETS_TCP_SERVER_SETPAUSED"/>
  <int value="607" label="SOCKETS_TCP_SERVER_LISTEN"/>
  <int value="608" label="SOCKETS_TCP_SERVER_DISCONNECT"/>
  <int value="609" label="SOCKETS_TCP_SERVER_CLOSE"/>
  <int value="610" label="SOCKETS_TCP_SERVER_GETINFO"/>
  <int value="611" label="SOCKETS_TCP_SERVER_GETSOCKETS"/>
  <int value="612" label="SYSTEM_STORAGE_GETAVAILABLECAPACITY"/>
  <int value="613" label="BROWSERACTION_OPEN_POPUP"/>
  <int value="614" label="WEBRTC_AUDIO_PRIVATE_GET_SINKS"/>
  <int value="615" label="WEBRTC_AUDIO_PRIVATE_GET_ACTIVE_SINK"/>
  <int value="616" label="WEBRTC_AUDIO_PRIVATE_SET_ACTIVE_SINK"/>
  <int value="617" label="WEBRTC_AUDIO_PRIVATE_GET_ASSOCIATED_SINK"/>
  <int value="618" label="VIRTUALKEYBOARDPRIVATE_KEYBOARDLOADED"/>
  <int value="619" label="DELETED_APP_CURRENTWINDOWINTERNAL_SETMINWIDTH"/>
  <int value="620" label="DELETED_APP_CURRENTWINDOWINTERNAL_SETMINHEIGHT"/>
  <int value="621" label="DELETED_APP_CURRENTWINDOWINTERNAL_SETMAXWIDTH"/>
  <int value="622" label="DELETED_APP_CURRENTWINDOWINTERNAL_SETMAXHEIGHT"/>
  <int value="623" label="SYSTEMPRIVATE_GETAPIKEY"/>
  <int value="624" label="CHROMEOSINFOPRIVATE_SET"/>
  <int value="625" label="BOOKMARKMANAGERPRIVATE_GETMETAINFO"/>
  <int value="626" label="BOOKMARKMANAGERPRIVATE_SETMETAINFO"/>
  <int value="627" label="FILESYSTEMPROVIDER_MOUNT"/>
  <int value="628" label="AUTOTESTPRIVATE_GETEXTENSIONSINFO"/>
  <int value="629" label="SCREENLOCKPRIVATE_GETLOCKED"/>
  <int value="630" label="SCREENLOCKPRIVATE_SETLOCKED"/>
  <int value="631" label="SCREENLOCKPRIVATE_SHOWMESSAGE"/>
  <int value="632" label="FEEDBACKPRIVATE_GETHISTOGRAMS"/>
  <int value="633" label="SYSTEM_NETWORK_GETNETWORKINTERFACES"/>
  <int value="634" label="SERIAL_GETDEVICES"/>
  <int value="635" label="SERIAL_UPDATE"/>
  <int value="636" label="SERIAL_SETPAUSED"/>
  <int value="637" label="SERIAL_GETINFO"/>
  <int value="638" label="SERIAL_GETCONNECTIONS"/>
  <int value="639" label="SERIAL_SEND"/>
  <int value="640" label="GCM_REGISTER"/>
  <int value="641" label="GCM_SEND"/>
  <int value="642" label="SERIAL_CONNECT"/>
  <int value="643" label="SERIAL_DISCONNECT"/>
  <int value="644"
      label="DELETED_MEDIAGALLERIES_GETALLMEDIAFILESYSTEMMETADATA"/>
  <int value="645" label="FIRSTRUNPRIVATE_GETLOCALIZEDSTRINGS"/>
  <int value="646" label="FIRSTRUNPRIVATE_LAUNCHTUTORIAL"/>
  <int value="647" label="SOCKETS_UDP_SETPAUSED"/>
  <int value="648" label="DELETED_WEBVIEW_CAPTUREVISIBLEREGION"/>
  <int value="649" label="MEDIAGALLERIES_GETMETADATA"/>
  <int value="650" label="INPUT_IME_SENDKEYEVENTS"/>
  <int value="651" label="VIRTUALKEYBOARDPRIVATE_LOCKKEYBOARD"/>
  <int value="652" label="SCREENLOCKPRIVATE_SHOWCUSTOMICON"/>
  <int value="653" label="INPUT_IME_HIDEINPUTVIEW"/>
  <int value="654" label="BOOKMARKMANAGERPRIVATE_UNDO"/>
  <int value="655" label="BOOKMARKMANAGERPRIVATE_REDO"/>
  <int value="656" label="BOOKMARKMANAGERPRIVATE_UNDOINFO"/>
  <int value="657" label="BOOKMARKMANAGERPRIVATE_REDOINFO"/>
  <int value="658" label="MEDIAGALLERIES_ADDUSERSELECTEDFOLDER"/>
  <int value="659"
      label="DELETED_PREFERENCESPRIVATE_GETSYNCCATEGORIESWITHOUTPASSPHRASE"/>
  <int value="660" label="DELETED_READINGLISTPRIVATE_ADDENTRY"/>
  <int value="661" label="DELETED_READINGLISTPRIVATE_REMOVEENTRY"/>
  <int value="662" label="DELETED_READINGLISTPRIVATE_GETENTRIES"/>
  <int value="663" label="DELETED_MEDIAGALLERIES_STARTMEDIASCAN"/>
  <int value="664" label="DELETED_MEDIAGALLERIES_CANCELMEDIASCAN"/>
  <int value="665" label="DELETED_MEDIAGALLERIES_ADDSCANRESULTS"/>
  <int value="666" label="LOGPRIVATE_STARTNETINTERNALSWATCH"/>
  <int value="667" label="LOGPRIVATE_STOPNETINTERNALSWATCH"/>
  <int value="668" label="FILEMANAGERPRIVATE_GETPROFILES"/>
  <int value="669" label="DELETED_FILEMANAGERPRIVATE_VISITDESKTOP"/>
  <int value="670" label="VIRTUALKEYBOARDPRIVATE_GETKEYBOARDCONFIG"/>
  <int value="671" label="HID_GETDEVICES"/>
  <int value="672" label="HID_CONNECT"/>
  <int value="673" label="HID_DISCONNECT"/>
  <int value="674" label="HID_RECEIVE"/>
  <int value="675" label="HID_SEND"/>
  <int value="676" label="HID_RECEIVEFEATUREREPORT"/>
  <int value="677" label="HID_SENDFEATUREREPORT"/>
  <int value="678" label="HOTWORDPRIVATE_SETENABLED"/>
  <int value="679" label="HOTWORDPRIVATE_GETSTATUS"/>
  <int value="680" label="DELETED_APP_CURRENTWINDOWINTERNAL_SETBADGEICON"/>
  <int value="681" label="DELETED_APP_CURRENTWINDOWINTERNAL_CLEARBADGE"/>
  <int value="682" label="DELETED_WEBVIEW_SETZOOM"/>
  <int value="683" label="DELETED_WEBVIEW_GETZOOM"/>
  <int value="684" label="DEVELOPERPRIVATE_REQUESTFILESOURCE"/>
  <int value="685" label="DEVELOPERPRIVATE_OPENDEVTOOLS"/>
  <int value="686" label="ACTIVITYLOGPRIVATE_DELETEACTIVITIES"/>
  <int value="687" label="NETWORKINGPRIVATE_SETWIFITDLSENABLEDSTATE"/>
  <int value="688" label="NETWORKINGPRIVATE_GETWIFITDLSSTATUS"/>
  <int value="689" label="SCREENLOCKPRIVATE_HIDECUSTOMICON"/>
  <int value="690" label="SCREENLOCKPRIVATE_SETAUTHTYPE"/>
  <int value="691" label="SCREENLOCKPRIVATE_GETAUTHTYPE"/>
  <int value="692" label="SCREENLOCKPRIVATE_ACCEPTAUTHATTEMPT"/>
  <int value="693" label="DELETED_WEBVIEW_FIND"/>
  <int value="694" label="DELETED_WEBVIEW_STOPFINDING"/>
  <int value="695" label="DELETED_WEBVIEW_CONTEXTMENUSCREATE"/>
  <int value="696" label="DELETED_WEBVIEW_CONTEXTMENUSUPDATE"/>
  <int value="697" label="DELETED_WEBVIEW_CONTEXTMENUSREMOVE"/>
  <int value="698" label="DELETED_WEBVIEW_CONTEXTMENUSREMOVEALL"/>
  <int value="699" label="AUTOMATIONINTERNAL_ENABLETAB"/>
  <int value="700" label="APP_CURRENTWINDOWINTERNAL_SETSIZECONSTRAINTS"/>
  <int value="701" label="BLUETOOTH_GETDEVICE"/>
  <int value="702" label="GCM_UNREGISTER"/>
  <int value="703" label="FILEMANAGERPRIVATEINTERNAL_REQUESTDRIVESHARE"/>
  <int value="704" label="METRICSPRIVATE_RECORDSPARSEVALUE"/>
  <int value="705" label="HOTWORDPRIVATE_SETAUDIOLOGGINGENABLED"/>
  <int value="706" label="BLUETOOTHPRIVATE_SETADAPTERSTATE"/>
  <int value="707" label="DELETED_BLUETOOTHPRIVATE_ENABLEPAIRING"/>
  <int value="708" label="DELETED_BLUETOOTHPRIVATE_DISABLEPAIRING"/>
  <int value="709" label="BLUETOOTHPRIVATE_SETPAIRINGRESPONSE"/>
  <int value="710" label="NETWORKINGPRIVATE_GETCAPTIVEPORTALSTATUS"/>
  <int value="711" label="AUTOMATIONINTERNAL_PERFORMACTION"/>
  <int value="712" label="DELETED_BLUETOOTH_UPDATE_SOCKET"/>
  <int value="713" label="DELETED_BLUETOOTH_SET_SOCKET_PAUSED"/>
  <int value="714" label="DELETED_BLUETOOTH_GET_SOCKET"/>
  <int value="715" label="DELETED_BLUETOOTH_GET_SOCKETS"/>
  <int value="716" label="FILESYSTEMPROVIDER_UNMOUNT"/>
  <int value="717" label="FILESYSTEMPROVIDERINTERNAL_UNMOUNTREQUESTEDSUCCESS"/>
  <int value="718"
      label="DELETED_FILESYSTEMPROVIDERINTERNAL_UNMOUNTREQUESTEDERROR"/>
  <int value="719"
      label="DELETED_MEDIAGALLERIES_DROPPERMISSIONFORMEDIAFILESYSTEM"/>
  <int value="720" label="WEBCAMPRIVATE_SET"/>
  <int value="721" label="WEBCAMPRIVATE_RESET"/>
  <int value="722" label="WEBCAMPRIVATE_GET"/>
  <int value="723" label="BLUETOOTHLOWENERGY_GETSERVICE"/>
  <int value="724" label="BLUETOOTHLOWENERGY_GETSERVICES"/>
  <int value="725" label="BLUETOOTHLOWENERGY_GETCHARACTERISTIC"/>
  <int value="726" label="BLUETOOTHLOWENERGY_GETCHARACTERISTICS"/>
  <int value="727" label="BLUETOOTHLOWENERGY_GETINCLUDEDSERVICES"/>
  <int value="728" label="BLUETOOTHLOWENERGY_GETDESCRIPTOR"/>
  <int value="729" label="BLUETOOTHLOWENERGY_GETDESCRIPTORS"/>
  <int value="730" label="BLUETOOTHLOWENERGY_READCHARACTERISTICVALUE"/>
  <int value="731" label="BLUETOOTHLOWENERGY_WRITECHARACTERISTICVALUE"/>
  <int value="732" label="BLUETOOTHLOWENERGY_READDESCRIPTORVALUE"/>
  <int value="733" label="BLUETOOTHLOWENERGY_WRITEDESCRIPTORVALUE"/>
  <int value="734" label="BOOKMARKMANAGERPRIVATE_CREATEWITHMETAINFO"/>
  <int value="735" label="BOOKMARKMANAGERPRIVATE_UPDATEMETAINFO"/>
  <int value="736" label="BLUETOOTHSOCKET_CREATE"/>
  <int value="737" label="BLUETOOTHSOCKET_UPDATE"/>
  <int value="738" label="BLUETOOTHSOCKET_SETPAUSED"/>
  <int value="739" label="BLUETOOTHSOCKET_LISTENUSINGRFCOMM"/>
  <int value="740" label="BLUETOOTHSOCKET_LISTENUSINGINSECURERFCOMM"/>
  <int value="741" label="BLUETOOTHSOCKET_LISTENUSINGL2CAP"/>
  <int value="742" label="BLUETOOTHSOCKET_CONNECT"/>
  <int value="743" label="BLUETOOTHSOCKET_DISCONNECT"/>
  <int value="744" label="BLUETOOTHSOCKET_CLOSE"/>
  <int value="745" label="BLUETOOTHSOCKET_SEND"/>
  <int value="746" label="BLUETOOTHSOCKET_GETINFO"/>
  <int value="747" label="BLUETOOTHSOCKET_GETSOCKETS"/>
  <int value="748" label="DELETED_WEBSTOREPRIVATE_SIGNINFUNCTION"/>
  <int value="749" label="DELETED_SHELL_CREATEWINDOW"/>
  <int value="750"
      label="FILESYSTEMPROVIDERINTERNAL_GETMETADATAREQUESTEDSUCCESS"/>
  <int value="751"
      label="DELETED_FILESYSTEMPROVIDERINTERNAL_GETMETADATAREQUESTEDERROR"/>
  <int value="752" label="BROWSER_OPENTAB"/>
  <int value="753" label="MANAGEMENT_CREATEAPPSHORTCUT"/>
  <int value="754" label="DELETED_WEBVIEW_SHOWCONTEXTMENU"/>
  <int value="755" label="WEBRTCLOGGINGPRIVATE_STARTRTPDUMP"/>
  <int value="756" label="WEBRTCLOGGINGPRIVATE_STOPRTPDUMP"/>
  <int value="757" label="AUTOMATIONINTERNAL_ENABLEDESKTOP"/>
  <int value="758" label="HOTWORDPRIVATE_SETHOTWORDSESSIONSTATE"/>
  <int value="759" label="HOTWORDPRIVATE_NOTIFYHOTWORDRECOGNITION"/>
  <int value="760"
      label="FILESYSTEMPROVIDERINTERNAL_READDIRECTORYREQUESTEDSUCCESS"/>
  <int value="761"
      label="DELETED_FILESYSTEMPROVIDERINTERNAL_READDIRECTORYREQUESTEDERROR"/>
  <int value="762" label="DELETED_LEDGER_BATCHEXECUTE"/>
  <int value="763"
      label="DELETED_FILESYSTEMPROVIDERINTERNAL_OPENFILEREQUESTEDSUCCESS"/>
  <int value="764"
      label="DELETED_FILESYSTEMPROVIDERINTERNAL_OPENFILEREQUESTEDERROR"/>
  <int value="765"
      label="DELETED_FILESYSTEMPROVIDERINTERNAL_CLOSEFILEREQUESTEDSUCCESS"/>
  <int value="766"
      label="DELETED_FILESYSTEMPROVIDERINTERNAL_CLOSEFILEREQUESTEDERROR"/>
  <int value="767" label="DELETED_SYNCEDNOTIFICATIONSPRIVATE_GETINITIALDATA"/>
  <int value="768"
      label="DELETED_SYNCEDNOTIFICATIONSPRIVATE_UPDATENOTIFICATION"/>
  <int value="769" label="DELETED_SYNCEDNOTIFICATIONSPRIVATE_SETRENDERCONTEXT"/>
  <int value="770" label="IDENTITY_GETACCOUNTS"/>
  <int value="771" label="FILEMANAGERPRIVATE_RESOLVEISOLATEDENTRIES"/>
  <int value="772" label="FILESYSTEMPROVIDERINTERNAL_READFILEREQUESTEDSUCCESS"/>
  <int value="773"
      label="DELETED_FILESYSTEMPROVIDERINTERNAL_READFILEREQUESTEDERROR"/>
  <int value="774" label="NETWORKINGPRIVATE_GETNETWORKS"/>
  <int value="775" label="DELETED_WEBVIEW_SETNAME"/>
  <int value="776" label="ENTERPRISE_PLATFORMKEYSINTERNAL_GENERATEKEY"/>
  <int value="777" label="PLATFORMKEYSINTERNAL_SIGN"/>
  <int value="778" label="ENTERPRISE_PLATFORMKEYSINTERNAL_GETTOKENS"/>
  <int value="779" label="ENTERPRISE_PLATFORMKEYS_GETCERTIFICATES"/>
  <int value="780" label="ENTERPRISE_PLATFORMKEYS_IMPORTCERTIFICATE"/>
  <int value="781" label="ENTERPRISE_PLATFORMKEYS_REMOVECERTIFICATE"/>
  <int value="782" label="FILEMANAGERPRIVATE_OPENINSPECTOR"/>
  <int value="783" label="STREAMSPRIVATE_ABORT"/>
  <int value="784" label="MANAGEMENT_SETLAUNCHTYPE"/>
  <int value="785" label="MANAGEMENT_GENERATEAPPFORLINK"/>
  <int value="786" label="DELETED_GUESTVIEWINTERNAL_ALLOCATEINSTANCEID"/>
  <int value="787" label="DELETED_WEBVIEW_NAVIGATE"/>
  <int value="788" label="INPUTMETHODPRIVATE_GETCURRENTINPUTMETHOD"/>
  <int value="789" label="INPUTMETHODPRIVATE_SETCURRENTINPUTMETHOD"/>
  <int value="790" label="INPUTMETHODPRIVATE_GETINPUTMETHODS"/>
  <int value="791" label="IDENTITY_GETPROFILEUSERINFO"/>
  <int value="792" label="VIRTUALKEYBOARDPRIVATE_OPENSETTINGS"/>
  <int value="793" label="BLUETOOTHLOWENERGY_CONNECT"/>
  <int value="794" label="BLUETOOTHLOWENERGY_DISCONNECT"/>
  <int value="795" label="WEBSTOREPRIVATE_GETEPHEMERALAPPSENABLED"/>
  <int value="796" label="WEBSTOREPRIVATE_LAUNCHEPHEMERALAPP"/>
  <int value="797" label="FILESYSTEMPROVIDERINTERNAL_OPERATIONREQUESTEDERROR"/>
  <int value="798"
      label="FILESYSTEMPROVIDERINTERNAL_OPERATIONREQUESTEDSUCCESS"/>
  <int value="799" label="GUESTVIEWINTERNAL_CREATEGUEST"/>
  <int value="800" label="WEBVIEWINTERNAL_CAPTUREVISIBLEREGION"/>
  <int value="801" label="WEBVIEWINTERNAL_CONTEXTMENUSCREATE"/>
  <int value="802" label="WEBVIEWINTERNAL_CONTEXTMENUSREMOVE"/>
  <int value="803" label="WEBVIEWINTERNAL_CONTEXTMENUSREMOVEALL"/>
  <int value="804" label="WEBVIEWINTERNAL_CONTEXTMENUSUPDATE"/>
  <int value="805" label="WEBVIEWINTERNAL_CLEARDATA"/>
  <int value="806" label="WEBVIEWINTERNAL_EXECUTESCRIPT"/>
  <int value="807" label="WEBVIEWINTERNAL_FIND"/>
  <int value="808" label="WEBVIEWINTERNAL_GETZOOM"/>
  <int value="809" label="WEBVIEWINTERNAL_GO"/>
  <int value="810" label="WEBVIEWINTERNAL_INSERTCSS"/>
  <int value="811" label="WEBVIEWINTERNAL_NAVIGATE"/>
  <int value="812" label="WEBVIEWINTERNAL_OVERRIDEUSERAGENT"/>
  <int value="813" label="WEBVIEWINTERNAL_RELOAD"/>
  <int value="814" label="WEBVIEWINTERNAL_SETNAME"/>
  <int value="815" label="WEBVIEWINTERNAL_SETPERMISSION"/>
  <int value="816" label="WEBVIEWINTERNAL_SETZOOM"/>
  <int value="817" label="WEBVIEWINTERNAL_SHOWCONTEXTMENU"/>
  <int value="818" label="WEBVIEWINTERNAL_STOP"/>
  <int value="819" label="WEBVIEWINTERNAL_STOPFINDING"/>
  <int value="820" label="WEBVIEWINTERNAL_TERMINATE"/>
  <int value="821" label="BLUETOOTHLOWENERGY_STARTCHARACTERISTICNOTIFICATIONS"/>
  <int value="822" label="BLUETOOTHLOWENERGY_STOPCHARACTERISTICNOTIFICATIONS"/>
  <int value="823" label="GCDPRIVATE_GETCLOUDDEVICELIST"/>
  <int value="824" label="GCDPRIVATE_QUERYFORNEWLOCALDEVICES"/>
  <int value="825" label="GCDPRIVATE_PREFETCHWIFIPASSWORD"/>
  <int value="826" label="GCDPRIVATE_ESTABLISHSESSION"/>
  <int value="827" label="GCDPRIVATE_SENDMESSAGE"/>
  <int value="828" label="GCDPRIVATE_CONFIRMCODE"/>
  <int value="829" label="GCDPRIVATE_TERMINATESESSION"/>
  <int value="830" label="TABS_SETZOOM"/>
  <int value="831" label="TABS_GETZOOM"/>
  <int value="832" label="TABS_SETZOOMSETTINGS"/>
  <int value="833" label="TABS_GETZOOMSETTINGS"/>
  <int value="834" label="GCDPRIVATE_GETCOMMANDDEFINITIONS"/>
  <int value="835" label="GCDPRIVATE_INSERTCOMMAND"/>
  <int value="836" label="GCDPRIVATE_GETCOMMAND"/>
  <int value="837" label="GCDPRIVATE_CANCELCOMMAND"/>
  <int value="838" label="GCDPRIVATE_GETCOMMANDSLIST"/>
  <int value="839" label="APPVIEWINTERNAL_ATTACHFRAME"/>
  <int value="840" label="APPVIEWINTERNAL_DENYREQUEST"/>
  <int value="841" label="FILEMANAGERPRIVATEINTERNAL_GETDOWNLOADURL"/>
  <int value="842" label="EASYUNLOCKPRIVATE_PERFORMECDHKEYAGREEMENT"/>
  <int value="843" label="EASYUNLOCKPRIVATE_GENERATEECP256KEYPAIR"/>
  <int value="844" label="EASYUNLOCKPRIVATE_CREATESECUREMESSAGE"/>
  <int value="845" label="EASYUNLOCKPRIVATE_UNWRAPSECUREMESSAGE"/>
  <int value="846" label="LOGPRIVATE_STARTEVENTRECODER"/>
  <int value="847" label="LOGPRIVATE_STOPEVENTRECODER"/>
  <int value="848" label="LOGPRIVATE_DUMPLOGS"/>
  <int value="849" label="SOCKET_SECURE"/>
  <int value="850" label="SOCKETS_TCP_SECURE"/>
  <int value="851" label="EXPERIENCESAMPLINGPRIVATE_GETBROWSERINFO"/>
  <int value="852" label="EASYUNLOCKPRIVATE_SEEKBLUETOOTHDEVICEBYADDRESS"/>
  <int value="853" label="EASYUNLOCKPRIVATE_GETSTRINGS"/>
  <int value="854" label="NOTIFICATIONPROVIDER_SENDONCLEAR"/>
  <int value="855" label="NOTIFICATIONPROVIDER_NOTIFYONCLEARED"/>
  <int value="856" label="NOTIFICATIONPROVIDER_NOTIFYONCLICKED"/>
  <int value="857" label="NOTIFICATIONPROVIDER_NOTIFYONBUTTONCLICKED"/>
  <int value="858" label="NOTIFICATIONPROVIDER_NOTIFYONPERMISSIONLEVELCHANGED"/>
  <int value="859" label="NOTIFICATIONPROVIDER_NOTIFYONSHOWSETTINGS"/>
  <int value="860" label="NOTIFICATIONPROVIDER_GETNOTIFIER"/>
  <int value="861" label="NOTIFICATIONPROVIDER_GETALLNOTIFIERS"/>
  <int value="862" label="GCDPRIVATE_GETPREFETCHEDWIFINAMELIST"/>
  <int value="863" label="GUESTVIEWINTERNAL_SETAUTOSIZE"/>
  <int value="864" label="COPRESENCEPRIVATE_SENDFOUND"/>
  <int value="865" label="COPRESENCEPRIVATE_SENDSAMPLES"/>
  <int value="866" label="COPRESENCEPRIVATE_SENDDETECT"/>
  <int value="867" label="COPRESENCEPRIVATE_SENDINITIALIZED"/>
  <int value="868" label="COPRESENCE_EXECUTE"/>
  <int value="869" label="COPRESENCE_SETAPIKEY"/>
  <int value="870" label="FILESYSTEM_OBSERVEDIRECTORY"/>
  <int value="871" label="FILESYSTEM_UNOBSERVEENTRY"/>
  <int value="872" label="FILESYSTEM_GETOBSERVEDENTRIES"/>
  <int value="873" label="BROWSINGDATA_REMOVESERVICEWORKERS"/>
  <int value="874" label="USBPRIVATE_GETDEVICES"/>
  <int value="875" label="USBPRIVATE_GETDEVICEINFO"/>
  <int value="876" label="EASYUNLOCKPRIVATE_UPDATESCREENLOCKSTATE"/>
  <int value="877" label="CAST_CHANNEL_GETLOGS"/>
  <int value="878" label="EASYUNLOCKPRIVATE_SETPERMITACCESS"/>
  <int value="879" label="EASYUNLOCKPRIVATE_GETPERMITACCESS"/>
  <int value="880" label="EASYUNLOCKPRIVATE_CLEARPERMITACCESS"/>
  <int value="881" label="EASYUNLOCKPRIVATE_SETREMOTEDEVICES"/>
  <int value="882" label="EASYUNLOCKPRIVATE_GETREMOTEDEVICES"/>
  <int value="883" label="FILESYSTEMPROVIDER_GETALL"/>
  <int value="884"
      label="EASYUNLOCKPRIVATE_CONNECTTOBLUETOOTHSERVICEINSECURELY"/>
  <int value="885" label="MEDIAGALLERIES_ADDGALLERYWATCH"/>
  <int value="886" label="MEDIAGALLERIES_REMOVEGALLERYWATCH"/>
  <int value="887" label="DELETED_MEDIAGALLERIES_GETALLGALLERYWATCH"/>
  <int value="888" label="DELETED_MEDIAGALLERIES_REMOVEALLGALLERYWATCH"/>
  <int value="889" label="MANAGEMENT_GETSELF"/>
  <int value="890" label="APP_CURRENTWINDOWINTERNAL_SETVISIBLEONALLWORKSPACES"/>
  <int value="891" label="EASYUNLOCKPRIVATE_GETSIGNINCHALLENGE"/>
  <int value="892" label="EASYUNLOCKPRIVATE_TRYSIGNINSECRET"/>
  <int value="893" label="ACCESSIBILITY_PRIVATE_SETFOCUSRING"/>
  <int value="894" label="USB_GETCONFIGURATION"/>
  <int value="895" label="WEBVIEWINTERNAL_SETALLOWTRANSPARENCY"/>
  <int value="896" label="EASYUNLOCKPRIVATE_GETUSERINFO"/>
  <int value="897" label="HOTWORDPRIVATE_GETLAUNCHSTATE"/>
  <int value="898" label="HOTWORDPRIVATE_SETHOTWORDALWAYSONSEARCHENABLED"/>
  <int value="899" label="WEBVIEWINTERNAL_LOADDATAWITHBASEURL"/>
  <int value="900" label="GUESTVIEWINTERNAL_DESTROYGUEST"/>
  <int value="901" label="DELETED_COPRESENCESOCKET_CREATEPEER"/>
  <int value="902" label="DELETED_COPRESENCESOCKET_DESTROYPEER"/>
  <int value="903" label="DELETED_COPRESENCESOCKET_SEND"/>
  <int value="904" label="DELETED_COPRESENCESOCKET_DISCONNECT"/>
  <int value="905" label="DELETED_BOOKMARKMANAGERPRIVATE_SETVERSION"/>
  <int value="906" label="FILESYSTEMPROVIDER_NOTIFY"/>
  <int value="907" label="USB_GETUSERSELECTEDDEVICES"/>
  <int value="908" label="INPUTMETHODPRIVATE_GETINPUTMETHODCONFIG"/>
  <int value="909" label="WALLPAPERPRIVATE_GETSYNCSETTING"/>
  <int value="910" label="COPRESENCE_SETAUTHTOKEN"/>
  <int value="911" label="CAST_CHANNEL_SETAUTHORITYKEYS"/>
  <int value="912" label="HOTWORDPRIVATE_STARTTRAINING"/>
  <int value="913" label="HOTWORDPRIVATE_FINALIZESPEAKERMODEL"/>
  <int value="914" label="HOTWORDPRIVATE_STOPTRAINING"/>
  <int value="915" label="GCDPRIVATE_STARTPAIRING"/>
  <int value="916" label="VPNPROVIDER_CREATECONFIG"/>
  <int value="917" label="VPNPROVIDER_DESTROYCONFIG"/>
  <int value="918" label="VPNPROVIDER_SETPARAMETERS"/>
  <int value="919" label="VPNPROVIDER_SENDPACKET"/>
  <int value="920" label="VPNPROVIDER_NOTIFYCONNECTIONSTATECHANGED"/>
  <int value="921" label="DOCUMENT_SCAN_SCAN"/>
  <int value="922" label="DELETED_EASYUNLOCKPRIVATE_GETUSERIMAGE"/>
  <int value="923" label="HOTWORDPRIVATE_NOTIFYSPEAKERMODELSAVED"/>
  <int value="924" label="HOTWORDPRIVATE_GETLOCALIZEDSTRINGS"/>
  <int value="925" label="HOTWORDPRIVATE_SETAUDIOHISTORYENABLED"/>
  <int value="926" label="HOTWORDPRIVATE_GETAUDIOHISTORYENABLED"/>
  <int value="927"
      label="DELETED_APP_CURRENTWINDOWINTERNAL_SETINTERCEPTALLKEYS"/>
  <int value="928" label="LAUNCHERPAGE_PUSHSUBPAGE"/>
  <int value="929" label="LAUNCHERPAGE_SHOW"/>
  <int value="930" label="AUTOTESTPRIVATE_SETTOUCHPADSENSITIVITY"/>
  <int value="931" label="AUTOTESTPRIVATE_SETTAPTOCLICK"/>
  <int value="932" label="AUTOTESTPRIVATE_SETTHREEFINGERCLICK"/>
  <int value="933" label="AUTOTESTPRIVATE_SETTAPDRAGGING"/>
  <int value="934" label="AUTOTESTPRIVATE_SETNATURALSCROLL"/>
  <int value="935" label="AUTOTESTPRIVATE_SETMOUSESENSITIVITY"/>
  <int value="936" label="AUTOTESTPRIVATE_SETPRIMARYBUTTONRIGHT"/>
  <int value="937" label="DELETED_COPRESENCEENDPOINTS_CREATELOCALENDPOINT"/>
  <int value="938" label="DELETED_COPRESENCEENDPOINTS_DESTROYLOCALENDPOINT"/>
  <int value="939" label="DELETED_COPRESENCEENDPOINTS_SEND"/>
  <int value="940" label="INLINE_INSTALL_PRIVATE_INSTALL"/>
  <int value="941" label="LAUNCHERPAGE_SETENABLED"/>
  <int value="942" label="DELETED_CRYPTOTOKENPRIVATE_REQUESTPERMISSION"/>
  <int value="943" label="BLUETOOTHPRIVATE_DISCONNECTALL"/>
  <int value="944" label="FILEMANAGERPRIVATEINTERNAL_GETMIMETYPE"/>
  <int value="945" label="USB_SETCONFIGURATION"/>
  <int value="946" label="EASYUNLOCKPRIVATE_GETCONNECTIONINFO"/>
  <int value="947" label="FILEMANAGERPRIVATEINTERNAL_COMPUTECHECKSUM"/>
  <int value="948" label="PRINTERPROVIDERINTERNAL_REPORTPRINTRESULT"/>
  <int value="949" label="PRINTERPROVIDERINTERNAL_REPORTPRINTERCAPABILITY"/>
  <int value="950" label="PRINTERPROVIDERINTERNAL_REPORTPRINTERS"/>
  <int value="951" label="FILESYSTEMPROVIDER_GET"/>
  <int value="952" label="FILEMANAGERPRIVATE_SEARCHFILESBYHASHES"/>
  <int value="953" label="EASYUNLOCKPRIVATE_SHOWERRORBUBBLE"/>
  <int value="954" label="EXTENSIONVIEWINTERNAL_NAVIGATE"/>
  <int value="955" label="NETWORKING_CONFIG_SETNETWORKFILTER"/>
  <int value="956" label="NETWORKING_CONFIG_FINISHAUTHENTICATION"/>
  <int value="957" label="PLATFORMKEYSINTERNAL_SELECTCLIENTCERTIFICATES"/>
  <int value="958" label="CRYPTOTOKENPRIVATE_CANORIGINASSERTAPPID"/>
  <int value="959" label="EASYUNLOCKPRIVATE_SETAUTOPAIRINGRESULT"/>
  <int value="960" label="FILEMANAGERPRIVATE_ISUMAENABLED"/>
  <int value="961" label="WEBVIEWINTERNAL_SETALLOWSCALING"/>
  <int value="962" label="PLATFORMKEYSINTERNAL_GETPUBLICKEY"/>
  <int value="963" label="RUNTIME_OPENOPTIONSPAGE"/>
  <int value="964" label="AUDIOMODEM_TRANSMIT"/>
  <int value="965" label="AUDIOMODEM_STOPTRANSMIT"/>
  <int value="966" label="AUDIOMODEM_RECEIVE"/>
  <int value="967" label="AUDIOMODEM_STOPRECEIVE"/>
  <int value="968" label="WEBRTCLOGGINGPRIVATE_STORE"/>
  <int value="969" label="WEBRTCLOGGINGPRIVATE_UPLOADSTORED"/>
  <int value="970" label="FILEMANAGERPRIVATEINTERNAL_SETENTRYTAG"/>
  <int value="971" label="INPUTMETHODPRIVATE_FETCHALLDICTIONARYWORDS"/>
  <int value="972" label="INPUTMETHODPRIVATE_ADDWORDTODICTIONARY"/>
  <int value="973"
      label="DASHBOARDPRIVATE_SHOWPERMISSIONPROMPTFORDELEGATEDINSTALL"/>
  <int value="974" label="PRINTERPROVIDERINTERNAL_GETPRINTDATA"/>
  <int value="975" label="VIRTUALKEYBOARDPRIVATE_SETMODE"/>
  <int value="976" label="NETWORKINGPRIVATE_STARTACTIVATE"/>
  <int value="977" label="FILEMANAGERPRIVATE_GRANTACCESS"/>
  <int value="978" label="DEVELOPERPRIVATE_GETEXTENSIONSINFO"/>
  <int value="979" label="DEVELOPERPRIVATE_GETEXTENSIONINFO"/>
  <int value="980" label="FILEMANAGERPRIVATE_ENABLEEXTERNALFILESCHEME"/>
  <int value="981" label="DEVELOPERPRIVATE_UPDATEEXTENSIONCONFIGURATION"/>
  <int value="982" label="DEVELOPERPRIVATE_DELETEEXTENSIONERRORS"/>
  <int value="983" label="FILEMANAGERPRIVATE_ISPIEXLOADERENABLED"/>
  <int value="984" label="HOTWORDPRIVATE_SPEAKERMODELEXISTSRESULT"/>
  <int value="985" label="SETTINGSPRIVATE_SETPREF"/>
  <int value="986" label="DELETED_SETTINGSPRIVATE_SETDOUBLEPREF"/>
  <int value="987" label="DELETED_SETTINGSPRIVATE_SETSTRINGPREF"/>
  <int value="988" label="DELETED_SETTINGSPRIVATE_SETURLPREF"/>
  <int value="989" label="SETTINGSPRIVATE_GETALLPREFS"/>
  <int value="990" label="SETTINGSPRIVATE_GETPREF"/>
  <int value="991" label="NETWORKINGPRIVATE_FORGETNETWORK"/>
  <int value="992" label="EASYUNLOCKPRIVATE_HIDEERRORBUBBLE"/>
  <int value="993" label="WEBVIEWINTERNAL_SETZOOMMODE"/>
  <int value="994" label="WEBVIEWINTERNAL_GETZOOMMODE"/>
  <int value="995" label="LAUNCHERSEARCHPROVIDER_SETSEARCHRESULTS"/>
  <int value="996" label="DATAREDUCTIONPROXY_CLEARDATASAVINGS"/>
  <int value="997" label="BLUETOOTHPRIVATE_SETDISCOVERYFILTER"/>
  <int value="998" label="FILESYSTEM_GETVOLUMELIST"/>
  <int value="999" label="NETWORKINGPRIVATE_GETDEVICESTATES"/>
  <int value="1000" label="DEVELOPERPRIVATE_GETPROFILECONFIGURATION"/>
  <int value="1001" label="DEVELOPERPRIVATE_UPDATEPROFILECONFIGURATION"/>
  <int value="1002" label="SOCKETS_UDP_SETBROADCAST"/>
  <int value="1003" label="FILEMANAGERPRIVATE_GETPROVIDINGEXTENSIONS"/>
  <int value="1004" label="WEBVIEWINTERNAL_ADDCONTENTSCRIPTS"/>
  <int value="1005" label="WEBVIEWINTERNAL_REMOVECONTENTSCRIPTS"/>
  <int value="1006" label="DEVELOPERPRIVATE_REPAIREXTENSION"/>
  <int value="1007" label="DEVELOPERPRIVATE_SHOWOPTIONS"/>
  <int value="1008" label="DEVELOPERPRIVATE_SHOWPATH"/>
  <int value="1009" label="FILEMANAGERPRIVATE_ADDPROVIDEDFILESYSTEM"/>
  <int value="1010" label="FILEMANAGERPRIVATE_CONFIGUREVOLUME"/>
  <int value="1011" label="DELETED_SEARCHENGINESPRIVATE_GETSEARCHENGINES"/>
  <int value="1012"
      label="DELETED_SEARCHENGINESPRIVATE_SETSELECTEDSEARCHENGINE"/>
  <int value="1013" label="AUTOFILLPRIVATE_SAVEADDRESS"/>
  <int value="1014" label="AUTOFILLPRIVATE_GETADDRESSCOMPONENTS"/>
  <int value="1015" label="AUTOFILLPRIVATE_SAVECREDITCARD"/>
  <int value="1016" label="AUTOFILLPRIVATE_REMOVEENTRY"/>
  <int value="1017" label="AUTOFILLPRIVATE_VALIDATEPHONENUMBERS"/>
  <int value="1018" label="AUTOFILLPRIVATE_MASKCREDITCARD"/>
  <int value="1019" label="INSTANCEID_GETID"/>
  <int value="1020" label="INSTANCEID_GETCREATIONTIME"/>
  <int value="1021" label="INSTANCEID_GETTOKEN"/>
  <int value="1022" label="INSTANCEID_DELETETOKEN"/>
  <int value="1023" label="INSTANCEID_DELETEID"/>
  <int value="1024" label="GCDPRIVATE_GETDEVICEINFO"/>
  <int value="1025" label="DELETED_SEARCHENGINESPRIVATE_GETHOTWORDSTATE"/>
  <int value="1026" label="DELETED_SEARCHENGINESPRIVATE_ADDOTHERSEARCHENGINE"/>
  <int value="1027" label="DELETED_SEARCHENGINESPRIVATE_REMOVESEARCHENGINE"/>
  <int value="1028" label="DELETED_SEARCHENGINESPRIVATE_UPDATESEARCHENGINE"/>
  <int value="1029" label="DELETED_SEARCHENGINESPRIVATE_OPTINTOHOTWORDING"/>
  <int value="1030" label="WEBSTOREWIDGETPRIVATE_INSTALLWEBSTOREITEM"/>
  <int value="1031" label="WEBSTOREWIDGETPRIVATE_GETSTRINGS"/>
  <int value="1032" label="WEBRTCDESKTOPCAPTUREPRIVATE_CHOOSEDESKTOPMEDIA"/>
  <int value="1033"
      label="WEBRTCDESKTOPCAPTUREPRIVATE_CANCELCHOOSEDESKTOPMEDIA"/>
  <int value="1034" label="BLUETOOTHLOWENERGY_REGISTERADVERTISEMENT"/>
  <int value="1035" label="BLUETOOTHLOWENERGY_UNREGISTERADVERTISEMENT"/>
  <int value="1036"
      label="DELETED_PASSWORDSPRIVATE_CANPASSWORDACCOUNTBEMANAGED"/>
  <int value="1037" label="PASSWORDSPRIVATE_REMOVESAVEDPASSWORD"/>
  <int value="1038" label="PASSWORDSPRIVATE_REMOVEPASSWORDEXCEPTION"/>
  <int value="1039" label="PASSWORDSPRIVATE_REQUESTPLAINTEXTPASSWORD"/>
  <int value="1040" label="LAUNCHERPAGE_HIDE"/>
  <int value="1041" label="PLATFORMKEYS_VERIFYTLSSERVERCERTIFICATE"/>
  <int value="1042" label="DEVELOPERPRIVATE_SETSHORTCUTHANDLINGSUSPENDED"/>
  <int value="1043" label="DEVELOPERPRIVATE_UPDATEEXTENSIONCOMMAND"/>
  <int value="1044" label="INPUTMETHODPRIVATE_GETENCRYPTSYNCENABLED"/>
  <int value="1045" label="USERSPRIVATE_GETWHITELISTEDUSERS"/>
  <int value="1046" label="USERSPRIVATE_ADDWHITELISTEDUSER"/>
  <int value="1047" label="USERSPRIVATE_REMOVEWHITELISTEDUSER"/>
  <int value="1048" label="USERSPRIVATE_ISCURRENTUSEROWNER"/>
  <int value="1049" label="USERSPRIVATE_ISWHITELISTMANAGED"/>
  <int value="1050" label="PRINTERPROVIDERINTERNAL_REPORTUSBPRINTERINFO"/>
  <int value="1051" label="WEBCAMPRIVATE_OPENSERIALWEBCAM"/>
  <int value="1052" label="WEBCAMPRIVATE_CLOSEWEBCAM"/>
  <int value="1053" label="SERIAL_SETBREAK"/>
  <int value="1054" label="SERIAL_CLEARBREAK"/>
  <int value="1055" label="EXTENSIONVIEWINTERNAL_LOADSRC"/>
  <int value="1056" label="EXTENSIONVIEWINTERNAL_PARSESRC"/>
  <int value="1057" label="HID_GETUSERSELECTEDDEVICES"/>
  <int value="1058"
      label="FILESYSTEMPROVIDERINTERNAL_GETACTIONSREQUESTEDSUCCESS"/>
  <int value="1059"
      label="DASHBOARDPRIVATE_SHOWPERMISSIONPROMPTFORDELEGATEDBUNDLEINSTALL"/>
  <int value="1060" label="FILEMANAGERPRIVATEINTERNAL_GETCUSTOMACTIONS"/>
  <int value="1061" label="FILEMANAGERPRIVATEINTERNAL_EXECUTECUSTOMACTION"/>
  <int value="1062" label="MDNS_FORCEDISCOVERY"/>
  <int value="1063" label="LANGUAGESETTINGSPRIVATE_GETLANGUAGELIST"/>
  <int value="1064" label="LANGUAGESETTINGSPRIVATE_SETLANGUAGELIST"/>
  <int value="1065"
      label="LANGUAGESETTINGSPRIVATE_GETSPELLCHECKDICTIONARYSTATUS"/>
  <int value="1066" label="LANGUAGESETTINGSPRIVATE_GETSPELLCHECKWORDS"/>
  <int value="1067" label="LANGUAGESETTINGSPRIVATE_GETTRANSLATETARGETLANGUAGE"/>
  <int value="1068" label="LANGUAGESETTINGSPRIVATE_GETINPUTMETHODLISTS"/>
  <int value="1069" label="LANGUAGESETTINGSPRIVATE_ADDINPUTMETHOD"/>
  <int value="1070" label="LANGUAGESETTINGSPRIVATE_REMOVEINPUTMETHOD"/>
  <int value="1071" label="FILEMANAGERPRIVATE_CANCELALLFILETRANSFERS"/>
  <int value="1072" label="NETWORKINGPRIVATE_UNLOCKCELLULARSIM"/>
  <int value="1073" label="NETWORKINGPRIVATE_SETCELLULARSIMSTATE"/>
  <int value="1074" label="ENTERPRISE_DEVICEATTRIBUTES_GETDIRECTORYDEVICEID"/>
  <int value="1075" label="CASTDEVICESPRIVATE_UPDATEDEVICES"/>
  <int value="1076" label="SYSTEM_DISPLAY_ENABLEUNIFIEDDESKTOP"/>
  <int value="1077" label="BROWSINGDATA_REMOVECACHESTORAGE"/>
  <int value="1078" label="VIRTUALKEYBOARDPRIVATE_SETKEYBOARDSTATE"/>
  <int value="1079" label="VIRTUALKEYBOARDPRIVATE_SETHOTRODKEYBOARD"/>
  <int value="1080" label="CERTIFICATEPROVIDERINTERNAL_REPORTSIGNATURE"/>
  <int value="1081" label="CERTIFICATEPROVIDERINTERNAL_REPORTCERTIFICATES"/>
  <int value="1082" label="BLUETOOTHPRIVATE_PAIR"/>
  <int value="1083" label="EASYUNLOCKPRIVATE_FINDSETUPCONNECTION"/>
  <int value="1084" label="RESOURCESPRIVATE_GETSTRINGS"/>
  <int value="1085" label="USB_GETCONFIGURATIONS"/>
  <int value="1086" label="EASYUNLOCKPRIVATE_SETUPCONNECTIONSTATUS"/>
  <int value="1087" label="EASYUNLOCKPRIVATE_SETUPCONNECTIONDISCONNECT"/>
  <int value="1088" label="EASYUNLOCKPRIVATE_SETUPCONNECTIONSEND"/>
  <int value="1089" label="DATAREDUCTIONPROXY_GETDATAUSAGE"/>
  <int value="1090" label="EASYUNLOCKPRIVATE_SETUPCONNECTIONGETDEVICEADDRESS"/>
  <int value="1091" label="TABCAPTURE_CAPTUREOFFSCREENTAB"/>
  <int value="1092" label="LANGUAGESETTINGSPRIVATE_ADDSPELLCHECKWORD"/>
  <int value="1093" label="LANGUAGESETTINGSPRIVATE_REMOVESPELLCHECKWORD"/>
  <int value="1094" label="SETTINGSPRIVATE_GETDEFAULTZOOMPERCENTFUNCTION"/>
  <int value="1095" label="SETTINGSPRIVATE_SETDEFAULTZOOMPERCENTFUNCTION"/>
  <int value="1096" label="BLUETOOTHPRIVATE_CONNECT"/>
  <int value="1097" label="BLUETOOTHPRIVATE_FORGETDEVICE"/>
  <int value="1098" label="DISPLAYSOURCE_GETAVAILABLESINKS"/>
  <int value="1099" label="DISPLAYSOURCE_REQUESTAUTHENTICATION"/>
  <int value="1100" label="WEBRTCLOGGINGPRIVATE_STARTAUDIODEBUGRECORDINGS"/>
  <int value="1101" label="WEBRTCLOGGINGPRIVATE_STOPAUDIODEBUGRECORDINGS"/>
  <int value="1102" label="TERMINALPRIVATE_ACKOUTPUT"/>
  <int value="1103" label="INPUT_IME_CREATEWINDOW"/>
  <int value="1104" label="INPUTMETHODPRIVATE_SETXKBLAYOUT"/>
  <int value="1105" label="ACCESSIBILITY_PRIVATE_SETKEYBOARDLISTENER"/>
  <int value="1106" label="INPUT_IME_ACTIVATE"/>
  <int value="1107" label="INPUT_IME_DEACTIVATE"/>
  <int value="1108" label="ENTERPRISE_PLATFORMKEYS_CHALLENGEMACHINEKEY"/>
  <int value="1109" label="ENTERPRISE_PLATFORMKEYS_CHALLENGEUSERKEY"/>
  <int value="1110" label="INPUTMETHODPRIVATE_NOTIFYIMEMENUITEMACTIVATED"/>
  <int value="1111" label="INPUT_IME_SHOWWINDOW"/>
  <int value="1112" label="INPUT_IME_HIDEWINDOW"/>
  <int value="1113" label="INPUTMETHODPRIVATE_SHOWINPUTVIEW"/>
  <int value="1114" label="WALLPAPERPRIVATE_RECORDWALLPAPERUMA"/>
  <int value="1115" label="AUTOTESTPRIVATE_GETVISIBLENOTIFICATIONS"/>
  <int value="1116" label="WEBRTCLOGGINGPRIVATE_STARTRTCEVENTLOGGING"/>
  <int value="1117" label="WEBRTCLOGGINGPRIVATE_STOPRTCEVENTLOGGING"/>
  <int value="1118" label="PASSWORDSPRIVATE_GETSAVEDPASSWORDLIST"/>
  <int value="1119" label="PASSWORDSPRIVATE_GETPASSWORDEXCEPTIONLIST"/>
  <int value="1120" label="INPUTMETHODPRIVATE_OPENOPTIONSPAGE"/>
  <int value="1121" label="FEEDBACKPRIVATE_LOGSRTPROMPTRESULT"/>
  <int value="1122" label="BLUETOOTHLOWENERGY_CREATESERVICE"/>
  <int value="1123" label="BLUETOOTHLOWENERGY_CREATECHARACTERISTIC"/>
  <int value="1124" label="BLUETOOTHLOWENERGY_CREATEDESCRIPTOR"/>
  <int value="1125" label="BLUETOOTHLOWENERGY_REGISTERSERVICE"/>
  <int value="1126" label="BLUETOOTHLOWENERGY_UNREGISTERSERVICE"/>
  <int value="1127" label="BLUETOOTHLOWENERGY_SENDREQUESTRESPONSE"/>
  <int value="1128"
      label="BLUETOOTHLOWENERGY_NOTIFYCHARACTERISTICVALUECHANGED"/>
  <int value="1129" label="BLUETOOTHLOWENERGY_REMOVESERVICE"/>
</enum>

<enum name="ExtensionInstallCause" type="int">
  <int value="0" label="INSTALL_CAUSE_UNSET"/>
  <int value="1" label="INSTALL_CAUSE_USER_DOWNLOAD"/>
  <int value="2" label="INSTALL_CAUSE_UPDATE"/>
  <int value="3" label="INSTALL_CAUSE_EXTERNAL_FILE"/>
  <int value="4" label="INSTALL_CAUSE_AUTOMATION"/>
</enum>

<enum name="ExtensionInstallPromptExperimentLinkAction" type="int">
  <int value="0" label="Link is shown"/>
  <int value="1" label="Link is not shown"/>
  <int value="2" label="Link is clicked"/>
</enum>

<enum name="ExtensionInstallPromptType" type="int">
  <int value="0" label="Install prompt"/>
  <int value="1" label="Inline install prompt"/>
  <int value="2" label="Bundle install prompt"/>
  <int value="3" label="Re-enable prompt"/>
  <int value="4" label="Permissions prompt"/>
  <int value="5" label="External install prompt"/>
  <int value="6" label="Post install permissions prompt"/>
  <int value="7" label="Launch prompt"/>
  <int value="8" label="Remote install prompt"/>
</enum>

<enum name="ExtensionInstallVerifierGetSignatureResult" type="int">
  <int value="0" label="No signature (network error, etc)"/>
  <int value="1" label="Invalid signature"/>
  <int value="2" label="Valid signature"/>
</enum>

<enum name="ExtensionInstallVerifierInitResult" type="int">
  <int value="0" label="No value in prefs"/>
  <int value="1" label="Pref present but parsing failed"/>
  <int value="2" label="Invalid signature"/>
  <int value="3" label="Valid signature"/>
</enum>

<enum name="ExtensionInstallVerifierMustRemainDisabled" type="int">
  <int value="0" label="VERIFIED"/>
  <int value="1" label="NOT_EXTENSION"/>
  <int value="2" label="UNPACKED"/>
  <int value="3" label="ENTERPRISE_POLICY_ALLOWED"/>
  <int value="4" label="FORCED_NOT_VERIFIED"/>
  <int value="5" label="NOT_FROM_STORE"/>
  <int value="6" label="NO_SIGNATURE"/>
  <int value="7" label="NOT_VERIFIED_BUT_NOT_ENFORCING"/>
  <int value="8" label="NOT_VERIFIED"/>
  <int value="9" label="NOT_VERIFIED_BUT_INSTALL_TIME_NEWER_THAN_SIGNATURE"/>
  <int value="10" label="NOT_VERIFIED_BUT_UNKNOWN_ID"/>
  <int value="11" label="COMPONENT"/>
</enum>

<enum name="ExtensionInstallVerifierStatus" type="int">
  <int value="0" label="NONE"/>
  <int value="1" label="BOOTSTRAP"/>
  <int value="2" label="ENFORCE"/>
  <int value="3" label="ENFORCE_STRICT"/>
</enum>

<enum name="ExtensionLaunchType" type="int">
  <int value="0" label="PINNED"/>
  <int value="1" label="REGULAR"/>
  <int value="2" label="FULLSCREEN"/>
</enum>

<enum name="ExtensionLocation" type="int">
  <int value="0" label="INVALID"/>
  <int value="1" label="INTERNAL"/>
  <int value="2" label="EXTERNAL_PREF"/>
  <int value="3" label="EXTERNAL_REGISTRY"/>
  <int value="4" label="LOAD"/>
  <int value="5" label="COMPONENT"/>
  <int value="6" label="EXTERNAL_PREF_DOWNLOAD"/>
  <int value="7" label="EXTERNAL_POLICY_DOWNLOAD"/>
  <int value="8" label="COMMAND_LINE"/>
  <int value="9" label="EXTERNAL_POLICY"/>
  <int value="10" label="EXTERNAL_COMPONENT"/>
</enum>

<enum name="ExtensionNotificationType" type="int">
  <int value="0" label="NOTIFICATION_TYPE_SIMPLE"/>
  <int value="1" label="NOTIFICATION_TYPE_BASE_FORMAT"/>
  <int value="2" label="NOTIFICATION_TYPE_IMAGE"/>
  <int value="3" label="NOTIFICATION_TYPE_MULTIPLE"/>
  <int value="4" label="NOTIFICATION_TYPE_PROGRESS"/>
</enum>

<enum name="ExtensionPermission" type="int">
  <int value="0" label="UNKNOWN"/>
  <int value="1" label="NONE"/>
  <int value="2" label="BOOKMARKS"/>
  <int value="3" label="GEOLOCATION"/>
  <int value="4" label="BROWSING_HISTORY"/>
  <int value="5" label="TABS"/>
  <int value="6" label="MANAGEMENT"/>
  <int value="7" label="DEBUGGER"/>
  <int value="8" label="1_HOST"/>
  <int value="9" label="2_HOSTS"/>
  <int value="10" label="3_HOSTS"/>
  <int value="11" label="4_OR_MORE_HOSTS"/>
  <int value="12" label="ALL_HOSTS"/>
  <int value="13" label="FULL_ACCESS"/>
  <int value="14" label="CLIPBOARD"/>
  <int value="15" label="TTS_ENGINE"/>
  <int value="16" label="CONTENT_SETTINGS"/>
  <int value="17" label="PRIVACY"/>
  <int value="18" label="MANAGED_MODE"/>
  <int value="19" label="INPUT"/>
  <int value="20" label="AUDIO_CAPTURE"/>
  <int value="21" label="VIDEO_CAPTURE"/>
  <int value="22" label="DOWNLOADS"/>
  <int value="23" label="FILE_SYSTEM_WRITE"/>
  <int value="24" label="ALL_MEDIA_GALLERIES"/>
  <int value="25" label="SERIAL"/>
  <int value="26" label="SOCKET_ANY_HOST"/>
  <int value="27" label="SOCKET_DOMAIN_HOSTS"/>
  <int value="28" label="SOCKET_SPECIFIC_HOSTS"/>
</enum>

<enum name="ExtensionPermission2" type="int">
<!-- Generated from extensions/common/permissions/permission_message.h -->

  <int value="0" label="kUnknown"/>
  <int value="1" label="kNone"/>
  <int value="2" label="kBookmarks"/>
  <int value="3" label="kGeolocation"/>
  <int value="4" label="kBrowsingHistory"/>
  <int value="5" label="kTabs"/>
  <int value="6" label="kManagement"/>
  <int value="7" label="kDebugger"/>
  <int value="8" label="kDesktopCapture"/>
  <int value="9" label="kHid"/>
  <int value="10" label="kHosts1"/>
  <int value="11" label="kHosts2"/>
  <int value="12" label="kHosts3"/>
  <int value="13" label="kHosts4OrMore"/>
  <int value="14" label="kHostsAll"/>
  <int value="15" label="kFullAccess"/>
  <int value="16" label="kClipboard"/>
  <int value="17" label="kTtsEngine"/>
  <int value="18" label="kContentSettings"/>
  <int value="19" label="kPrivacy"/>
  <int value="20" label="kSupervisedUser"/>
  <int value="21" label="kInput"/>
  <int value="22" label="kAudioCapture"/>
  <int value="23" label="kVideoCapture"/>
  <int value="24" label="kDownloads"/>
  <int value="25" label="kDeleted_FileSystemWrite"/>
  <int value="26" label="kMediaGalleriesAllGalleriesRead"/>
  <int value="27" label="kSerial"/>
  <int value="28" label="kSocketAnyHost"/>
  <int value="29" label="kSocketDomainHosts"/>
  <int value="30" label="kSocketSpecificHosts"/>
  <int value="31" label="kBluetooth"/>
  <int value="32" label="kUsb"/>
  <int value="33" label="kSystemIndicator"/>
  <int value="34" label="kUsbDevice"/>
  <int value="35" label="kMediaGalleriesAllGalleriesCopyTo"/>
  <int value="36" label="kSystemInfoDisplay"/>
  <int value="37" label="kNativeMessaging"/>
  <int value="38" label="kSyncFileSystem"/>
  <int value="39" label="kAudio"/>
  <int value="40" label="kFavicon"/>
  <int value="41" label="kMusicManagerPrivate"/>
  <int value="42" label="kWebConnectable"/>
  <int value="43" label="kActivityLogPrivate"/>
  <int value="44" label="kBluetoothDevices"/>
  <int value="45" label="kDownloadsOpen"/>
  <int value="46" label="kNetworkingPrivate"/>
  <int value="47" label="kDeclarativeWebRequest"/>
  <int value="48" label="kFileSystemDirectory"/>
  <int value="49" label="kFileSystemWriteDirectory"/>
  <int value="50" label="kSignedInDevices"/>
  <int value="51" label="kWallpaper"/>
  <int value="52" label="kNetworkState"/>
  <int value="53" label="kHomepage"/>
  <int value="54" label="kSearchProvider"/>
  <int value="55" label="kStartupPages"/>
  <int value="56" label="kMediaGalleriesAllGalleriesDelete"/>
  <int value="57" label="kScreenlockPrivate"/>
  <int value="58" label="kOverrideBookmarksUI"/>
  <int value="59" label="kAutomation"/>
  <int value="60" label="kAccessibilityFeaturesModify"/>
  <int value="61" label="kAccessibilityFeaturesRead"/>
  <int value="62" label="kBluetoothPrivate"/>
  <int value="63" label="kIdentityEmail"/>
  <int value="64" label="kExperienceSamplingPrivate"/>
  <int value="65" label="kCopresence"/>
  <int value="66" label="kTopSites"/>
  <int value="67" label="kU2fDevices"/>
  <int value="68" label="kDocumentScan"/>
  <int value="69" label="kNetworkingConfig"/>
  <int value="70" label="kPlatformKeys"/>
  <int value="71" label="kMDns"/>
  <int value="72" label="kVpnProvider"/>
  <int value="73" label="kHosts1ReadOnly"/>
  <int value="74" label="kHosts2ReadOnly"/>
  <int value="75" label="kHosts3ReadOnly"/>
  <int value="76" label="kHosts4OrMoreReadOnly"/>
  <int value="77" label="kHostsAllReadOnly"/>
  <int value="78" label="kDeleted_InterceptAllKeys"/>
  <int value="79" label="kSettingsPrivate"/>
  <int value="80" label="kPrinterProvider"/>
  <int value="81" label="kSearchEnginesPrivate"/>
  <int value="82" label="kAutofillPrivate"/>
  <int value="83" label="kPasswordsPrivate"/>
  <int value="84" label="kUsersPrivate"/>
</enum>

<enum name="ExtensionPermission3" type="int">
<!-- Generated from extensions/common/permissions/api_permission.h -->

  <int value="0" label="kInvalid"/>
  <int value="1" label="kUnknown"/>
  <int value="2" label="kAccessibilityFeaturesModify"/>
  <int value="3" label="kAccessibilityFeaturesRead"/>
  <int value="4" label="kAccessibilityPrivate"/>
  <int value="5" label="kActiveTab"/>
  <int value="6" label="kActivityLogPrivate"/>
  <int value="7" label="kAlarms"/>
  <int value="8" label="kAlphaEnabled"/>
  <int value="9" label="kAlwaysOnTopWindows"/>
  <int value="10" label="kAppView"/>
  <int value="11" label="kAudio"/>
  <int value="12" label="kAudioCapture"/>
  <int value="13" label="kAudioModem"/>
  <int value="14" label="kAutofillPrivate"/>
  <int value="15" label="kAutomation"/>
  <int value="16" label="kAutoTestPrivate"/>
  <int value="17" label="kBackground"/>
  <int value="18" label="kBluetoothPrivate"/>
  <int value="19" label="kBookmark"/>
  <int value="20" label="kBookmarkManagerPrivate"/>
  <int value="21" label="kBrailleDisplayPrivate"/>
  <int value="22" label="kBrowser"/>
  <int value="23" label="kBrowsingData"/>
  <int value="24" label="kCast"/>
  <int value="25" label="kCastStreaming"/>
  <int value="26" label="kChromeosInfoPrivate"/>
  <int value="27" label="kClipboardRead"/>
  <int value="28" label="kClipboardWrite"/>
  <int value="29" label="kCloudPrintPrivate"/>
  <int value="30" label="kCommandLinePrivate"/>
  <int value="31" label="kCommandsAccessibility"/>
  <int value="32" label="kContentSettings"/>
  <int value="33" label="kContextMenus"/>
  <int value="34" label="kCookie"/>
  <int value="35" label="kCopresence"/>
  <int value="36" label="kCopresencePrivate"/>
  <int value="37" label="kCryptotokenPrivate"/>
  <int value="38" label="kDataReductionProxy"/>
  <int value="39" label="kDiagnostics"/>
  <int value="40" label="kDial"/>
  <int value="41" label="kDebugger"/>
  <int value="42" label="kDeclarative"/>
  <int value="43" label="kDeclarativeContent"/>
  <int value="44" label="kDeclarativeWebRequest"/>
  <int value="45" label="kDesktopCapture"/>
  <int value="46" label="kDesktopCapturePrivate"/>
  <int value="47" label="kDeveloperPrivate"/>
  <int value="48" label="kDevtools"/>
  <int value="49" label="kDns"/>
  <int value="50" label="kDocumentScan"/>
  <int value="51" label="kDownloads"/>
  <int value="52" label="kDownloadsInternal"/>
  <int value="53" label="kDownloadsOpen"/>
  <int value="54" label="kDownloadsShelf"/>
  <int value="55" label="kEasyUnlockPrivate"/>
  <int value="56" label="kEchoPrivate"/>
  <int value="57" label="kEmbeddedExtensionOptions"/>
  <int value="58" label="kEnterprisePlatformKeys"/>
  <int value="59" label="kEnterprisePlatformKeysPrivate"/>
  <int value="60" label="kExperienceSamplingPrivate"/>
  <int value="61" label="kExperimental"/>
  <int value="62" label="kExtensionView"/>
  <int value="63" label="kExternallyConnectableAllUrls"/>
  <int value="64" label="kFeedbackPrivate"/>
  <int value="65" label="kFileBrowserHandler"/>
  <int value="66" label="kFileBrowserHandlerInternal"/>
  <int value="67" label="kFileManagerPrivate"/>
  <int value="68" label="kFileSystem"/>
  <int value="69" label="kFileSystemDirectory"/>
  <int value="70" label="kFileSystemProvider"/>
  <int value="71" label="kFileSystemRequestFileSystem"/>
  <int value="72" label="kFileSystemRetainEntries"/>
  <int value="73" label="kFileSystemWrite"/>
  <int value="74" label="kDeleted_FileSystemWriteDirectory"/>
  <int value="75" label="kFirstRunPrivate"/>
  <int value="76" label="kFontSettings"/>
  <int value="77" label="kFullscreen"/>
  <int value="78" label="kGcdPrivate"/>
  <int value="79" label="kGcm"/>
  <int value="80" label="kGeolocation"/>
  <int value="81" label="kHid"/>
  <int value="82" label="kHistory"/>
  <int value="83" label="kHomepage"/>
  <int value="84" label="kHotwordPrivate"/>
  <int value="85" label="kIdentity"/>
  <int value="86" label="kIdentityEmail"/>
  <int value="87" label="kIdentityPrivate"/>
  <int value="88" label="kIdltest"/>
  <int value="89" label="kIdle"/>
  <int value="90" label="kImeWindowEnabled"/>
  <int value="91" label="kInlineInstallPrivate"/>
  <int value="92" label="kInput"/>
  <int value="93" label="kInputMethodPrivate"/>
  <int value="94" label="kDeleted_InterceptAllKeys"/>
  <int value="95" label="kLauncherSearchProvider"/>
  <int value="96" label="kLocation"/>
  <int value="97" label="kLogPrivate"/>
  <int value="98" label="kManagement"/>
  <int value="99" label="kMediaGalleries"/>
  <int value="100" label="kMediaPlayerPrivate"/>
  <int value="101" label="kMediaRouterPrivate"/>
  <int value="102" label="kMetricsPrivate"/>
  <int value="103" label="kMDns"/>
  <int value="104" label="kMusicManagerPrivate"/>
  <int value="105" label="kNativeMessaging"/>
  <int value="106" label="kNetworkingConfig"/>
  <int value="107" label="kNetworkingPrivate"/>
  <int value="108" label="kNotificationProvider"/>
  <int value="109" label="kNotifications"/>
  <int value="110" label="kOverrideEscFullscreen"/>
  <int value="111" label="kPageCapture"/>
  <int value="112" label="kPointerLock"/>
  <int value="113" label="kPlatformKeys"/>
  <int value="114" label="kPlugin"/>
  <int value="115" label="kPower"/>
  <int value="116" label="kPreferencesPrivate"/>
  <int value="117" label="kPrincipalsPrivate"/>
  <int value="118" label="kPrinterProvider"/>
  <int value="119" label="kPrivacy"/>
  <int value="120" label="kProcesses"/>
  <int value="121" label="kProxy"/>
  <int value="122" label="kImageWriterPrivate"/>
  <int value="123" label="kReadingListPrivate"/>
  <int value="124" label="kRtcPrivate"/>
  <int value="125" label="kSearchProvider"/>
  <int value="126" label="kSearchEnginesPrivate"/>
  <int value="127" label="kSerial"/>
  <int value="128" label="kSessions"/>
  <int value="129" label="kSettingsPrivate"/>
  <int value="130" label="kSignedInDevices"/>
  <int value="131" label="kSocket"/>
  <int value="132" label="kStartupPages"/>
  <int value="133" label="kStorage"/>
  <int value="134" label="kStreamsPrivate"/>
  <int value="135" label="kSyncFileSystem"/>
  <int value="136" label="kSystemPrivate"/>
  <int value="137" label="kSystemDisplay"/>
  <int value="138" label="kSystemStorage"/>
  <int value="139" label="kTab"/>
  <int value="140" label="kTabCapture"/>
  <int value="141" label="kTabCaptureForTab"/>
  <int value="142" label="kTerminalPrivate"/>
  <int value="143" label="kTopSites"/>
  <int value="144" label="kTts"/>
  <int value="145" label="kTtsEngine"/>
  <int value="146" label="kUnlimitedStorage"/>
  <int value="147" label="kU2fDevices"/>
  <int value="148" label="kUsb"/>
  <int value="149" label="kUsbDevice"/>
  <int value="150" label="kVideoCapture"/>
  <int value="151" label="kVirtualKeyboardPrivate"/>
  <int value="152" label="kVpnProvider"/>
  <int value="153" label="kWallpaper"/>
  <int value="154" label="kWallpaperPrivate"/>
  <int value="155" label="kWebcamPrivate"/>
  <int value="156" label="kWebConnectable"/>
  <int value="157" label="kWebNavigation"/>
  <int value="158" label="kWebRequest"/>
  <int value="159" label="kWebRequestBlocking"/>
  <int value="160" label="kWebrtcAudioPrivate"/>
  <int value="161" label="kWebrtcDesktopCapturePrivate"/>
  <int value="162" label="kWebrtcLoggingPrivate"/>
  <int value="163" label="kWebstorePrivate"/>
  <int value="164" label="kWebstoreWidgetPrivate"/>
  <int value="165" label="kWebView"/>
  <int value="166" label="kWindowShape"/>
  <int value="167" label="kScreenlockPrivate"/>
  <int value="168" label="kSystemCpu"/>
  <int value="169" label="kSystemMemory"/>
  <int value="170" label="kSystemNetwork"/>
  <int value="171" label="kSystemInfoCpu"/>
  <int value="172" label="kSystemInfoMemory"/>
  <int value="173" label="kBluetooth"/>
  <int value="174" label="kBluetoothDevices"/>
  <int value="175" label="kFavicon"/>
  <int value="176" label="kFullAccess"/>
  <int value="177" label="kHostReadOnly"/>
  <int value="178" label="kHostReadWrite"/>
  <int value="179" label="kHostsAll"/>
  <int value="180" label="kHostsAllReadOnly"/>
  <int value="181" label="kMediaGalleriesAllGalleriesCopyTo"/>
  <int value="182" label="kMediaGalleriesAllGalleriesDelete"/>
  <int value="183" label="kMediaGalleriesAllGalleriesRead"/>
  <int value="184" label="kNetworkState"/>
  <int value="185" label="kOverrideBookmarksUI"/>
  <int value="186" label="kShouldWarnAllHosts"/>
  <int value="187" label="kSocketAnyHost"/>
  <int value="188" label="kSocketDomainHosts"/>
  <int value="189" label="kSocketSpecificHosts"/>
  <int value="190" label="kDeleted_UsbDeviceList"/>
  <int value="191" label="kUsbDeviceUnknownProduct"/>
  <int value="192" label="kUsbDeviceUnknownVendor"/>
  <int value="193" label="kUsersPrivate"/>
  <int value="194" label="kPasswordsPrivate"/>
  <int value="195" label="kLanguageSettingsPrivate"/>
  <int value="196" label="kEnterpriseDeviceAttributes"/>
  <int value="197" label="kCertificateProvider"/>
  <int value="198" label="kResourcesPrivate"/>
</enum>

<enum name="ExtensionServiceVerifyAllSuccess" type="int">
  <int value="0" label="VERIFY_ALL_BOOTSTRAP_SUCCESS"/>
  <int value="1" label="VERIFY_ALL_BOOTSTRAP_FAILURE"/>
  <int value="2" label="VERIFY_ALL_NON_BOOTSTRAP_SUCCESS"/>
  <int value="3" label="VERIFY_ALL_NON_BOOTSTRAP_FAILURE"/>
</enum>

<enum name="ExtensionType" type="int">
  <int value="0" label="UNKNOWN"/>
  <int value="1" label="EXTENSION"/>
  <int value="2" label="THEME"/>
  <int value="3" label="USER_SCRIPT"/>
  <int value="4" label="HOSTED_APP"/>
  <int value="5" label="LEGACY_PACKAGED_APP"/>
  <int value="6" label="PLATFORM_APP"/>
</enum>

<enum name="ExtensionUninstallDialogAction" type="int">
  <int value="0" label="Uninstall only"/>
  <int value="1" label="Uninstall and report abuse"/>
  <int value="2" label="Dialog canceled"/>
</enum>

<enum name="ExtensionUninstallSource" type="int">
  <int value="0" label="Testing"/>
  <int value="1" label="Context menu"/>
  <int value="2" label="Permissions increase"/>
  <int value="3" label="Storage threshold exceeded"/>
  <int value="4" label="App list"/>
  <int value="5" label="App info dialog"/>
  <int value="6" label="Chrome apps page"/>
  <int value="7" label="Chrome extensions page"/>
  <int value="8" label="Extension"/>
</enum>

<enum name="ExtensionUnpackFailureReason" type="int">
  <summary>
    Reasons the sandboxed extension unpacker can fail.  See enum FailureReason
    in src/chrome/browser/extensions/sandboxed_extension_unpacker.h .
  </summary>
  <int value="0" label="COULD_NOT_GET_TEMP_DIRECTORY"/>
  <int value="1" label="COULD_NOT_CREATE_TEMP_DIRECTORY"/>
  <int value="2" label="FAILED_TO_COPY_EXTENSION_FILE_TO_TEMP_DIRECTORY"/>
  <int value="3" label="COULD_NOT_GET_SANDBOX_FRIENDLY_PATH"/>
  <int value="4" label="COULD_NOT_LOCALIZE_EXTENSION"/>
  <int value="5" label="INVALID_MANIFEST"/>
  <int value="6" label="UNPACKER_CLIENT_FAILED"/>
  <int value="7" label="UTILITY_PROCESS_CRASHED_WHILE_TRYING_TO_INSTALL"/>
  <int value="8" label="CRX_FILE_NOT_READABLE"/>
  <int value="9" label="CRX_HEADER_INVALID"/>
  <int value="10" label="CRX_MAGIC_NUMBER_INVALID"/>
  <int value="11" label="CRX_VERSION_NUMBER_INVALID"/>
  <int value="12" label="CRX_EXCESSIVELY_LARGE_KEY_OR_SIGNATURE"/>
  <int value="13" label="CRX_ZERO_KEY_LENGTH"/>
  <int value="14" label="CRX_ZERO_SIGNATURE_LENGTH"/>
  <int value="15" label="CRX_PUBLIC_KEY_INVALID"/>
  <int value="16" label="CRX_SIGNATURE_INVALID"/>
  <int value="17" label="CRX_SIGNATURE_VERIFICATION_INITIALIZATION_FAILED"/>
  <int value="18" label="CRX_SIGNATURE_VERIFICATION_FAILED"/>
  <int value="19" label="ERROR_SERIALIZING_MANIFEST_JSON"/>
  <int value="20" label="ERROR_SAVING_MANIFEST_JSON"/>
  <int value="21" label="COULD_NOT_READ_IMAGE_DATA_FROM_DISK"/>
  <int value="22" label="DECODED_IMAGES_DO_NOT_MATCH_THE_MANIFEST"/>
  <int value="23" label="INVALID_PATH_FOR_BROWSER_IMAGE"/>
  <int value="24" label="ERROR_REMOVING_OLD_IMAGE_FILE"/>
  <int value="25" label="INVALID_PATH_FOR_BITMAP_IMAGE"/>
  <int value="26" label="ERROR_RE_ENCODING_THEME_IMAGE"/>
  <int value="27" label="ERROR_SAVING_THEME_IMAGE"/>
  <int value="28" label="COULD_NOT_READ_CATALOG_DATA_FROM_DISK"/>
  <int value="29" label="INVALID_CATALOG_DATA"/>
  <int value="30" label="INVALID_PATH_FOR_CATALOG"/>
  <int value="31" label="ERROR_SERIALIZING_CATALOG"/>
  <int value="32" label="ERROR_SAVING_CATALOG"/>
  <int value="33" label="CRX_HASH_VERIFICATION_FAILED"/>
</enum>

<enum name="ExternalDeviceAction" type="int">
  <int value="0" label="Import to Drive"/>
  <int value="1" label="View files"/>
  <int value="2" label="View files (automatically)"/>
  <int value="3" label="Watch video"/>
  <int value="4" label="Error"/>
  <int value="5" label="Close (no action)"/>
</enum>

<enum name="ExternalDisplayOpenResult" type="int">
  <int value="0" label="Success"/>
  <int value="1" label="Failed with EACCES (incorrect permission on device)"/>
  <int value="2" label="Failed with ENOENT (device missing)"/>
  <int value="3" label="Failed for some other reason"/>
</enum>

<enum name="ExternalDisplayReceiveResult" type="int">
  <int value="0" label="Success"/>
  <int value="1" label="ioctl() to I2C device failed"/>
  <int value="2" label="Bad message checksum"/>
  <int value="3" label="Bad message address"/>
  <int value="4" label="Bad message length"/>
  <int value="5" label="Bad command code in message"/>
  <int value="6" label="Bad result code in message"/>
  <int value="7" label="Bad feature index in message"/>
  <int value="8" label="Maximum value of 0 in message"/>
</enum>

<enum name="ExternalDisplaySendResult" type="int">
  <int value="0" label="Success"/>
  <int value="1" label="ioctl() to I2C device failed"/>
</enum>

<enum name="ExternalItemState" type="int">
  <int value="0" label="DEPRECATED_DISABLED"/>
  <int value="1" label="DEPRECATED_ENABLED"/>
  <int value="2" label="DISABLED (in webstore)"/>
  <int value="3" label="ENABLED (in webstore)"/>
  <int value="4" label="DISABLED (not in webstore)"/>
  <int value="5" label="ENABLED (not in webstore)"/>
  <int value="6" label="UNINSTALLED (in webstore)"/>
  <int value="7" label="UNINSTALLED (not in webstore)"/>
</enum>

<enum name="ExternallyConditionalizedType" type="int">
  <int value="0" label="Cache entry requires validation"/>
  <int value="1" label="Cache entry usable"/>
  <int value="2" label="Cache entry validators don't match request"/>
</enum>

<enum name="Exynos5250LotIdEnum" type="int">
  <int value="0" label="Fused device"/>
  <int value="1" label="Generic unfused device"/>
  <int value="2" label="Unfused; lot ID NZVPU"/>
  <int value="3" label="Unfused; lot ID NZVR7"/>
</enum>

<enum name="FallbackDNSTestResult" type="int">
  <int value="0" label="Success"/>
  <int value="1" label="Failure"/>
</enum>

<enum name="FallbackSSLVersion" type="int">
  <int value="0" label="FALLBACK_NONE">SSL version fallback did not occur.</int>
  <int value="1" label="FALLBACK_SSL3">Fell back on SSL 3.0.</int>
  <int value="2" label="FALLBACK_TLS1">Fell back on TLS 1.0.</int>
  <int value="3" label="FALLBACK_TLS1_1">Fell back on TLS 1.1.</int>
</enum>

<enum name="FaultTolerantHeap" type="int">
  <int value="0" label="FTH_OFF">FTH is completely off.</int>
  <int value="1" label="FTH_HKLM">FTH is enabled in HKLM.</int>
  <int value="2" label="FTH_HKCU">FTH is enabled in HKCU.</int>
  <int value="3" label="FTH_HKCU_HKLM">FTH is enabled in HKCU and HKLM.</int>
  <int value="4" label="FTH_ACLAYERS">AcLayers.dll is loaded.</int>
  <int value="5" label="FTH_ACLAYERS_HKLM">
    AcLayers.dll is loaded and FTH is enabled in HKLM.
  </int>
  <int value="6" label="FTH_ACLAYERS_HKCU">
    AcLayers.dll is loaded and FTH is enabled in HKCU.
  </int>
  <int value="7" label="FTH_ACLAYERS_HKCU_HKLM">
    AcLayers.dll is loaded and FTH is enabled in HKCU and HKLM.
  </int>
  <int value="8" label="FTH_ACXTRNAL">AcXtrnal is loaded.</int>
  <int value="9" label="FTH_ACXTRNAL_HKLM">
    AcXtrnal is loaded and FTH is enabled in HKLM.
  </int>
  <int value="10" label="FTH_ACXTRNAL_HKCU">
    AcXtrnal is loaded and FTH is enabled in HKCU.
  </int>
  <int value="11" label="FTH_ACXTRNAL_HKCU_HKLM">
    AcXtrnal is loaded and FTH is enabled in HKCU and HKLM.
  </int>
  <int value="12" label="FTH_ACXTRNAL_ACLAYERS">
    AcXtrmal and AcLayers.dll are loaded.
  </int>
  <int value="13" label="FTH_ACXTRNAL_ACLAYERS_HKLM">
    AcXtrmal and AcLayers.dll are loaded and FTH is enabled in HKLM.
  </int>
  <int value="14" label="FTH_ACXTRNAL_ACLAYERS_HKCU">
    AcXtrmal and AcLayers.dll are loaded and FTH is enabled in HKCU.
  </int>
  <int value="15" label="FTH_ACXTRNAL_ACLAYERS_HKCU_HKLM">
    AcXtrmal and AcLayers.dll are loaded and FTH is enabled in HKCU and HKLM.
  </int>
</enum>

<enum name="FeatureObserver" type="int">
<!-- Generated from third_party/WebKit/Source/core/frame/UseCounter.h -->

  <int value="0" label="PageDestruction"/>
  <int value="1" label="LegacyNotifications"/>
  <int value="2" label="MultipartMainResource"/>
  <int value="3" label="PrefixedIndexedDB"/>
  <int value="4" label="WorkerStart"/>
  <int value="5" label="SharedWorkerStart"/>
  <int value="6" label="LegacyWebAudio"/>
  <int value="7" label="WebAudioStart"/>
  <int value="8" label="PrefixedContentSecurityPolicy"/>
  <int value="9" label="UnprefixedIndexedDB"/>
  <int value="10" label="OpenWebDatabase"/>
  <int value="11" label="LegacyHTMLNotifications"/>
  <int value="12" label="LegacyTextNotifications"/>
  <int value="13" label="UnprefixedRequestAnimationFrame"/>
  <int value="14" label="PrefixedRequestAnimationFrame"/>
  <int value="15" label="ContentSecurityPolicy"/>
  <int value="16" label="ContentSecurityPolicyReportOnly"/>
  <int value="17" label="PrefixedContentSecurityPolicyReportOnly"/>
  <int value="18" label="PrefixedTransitionEndEvent"/>
  <int value="19" label="UnprefixedTransitionEndEvent"/>
  <int value="20" label="PrefixedAndUnprefixedTransitionEndEvent"/>
  <int value="21" label="AutoFocusAttribute"/>
  <int value="22" label="DeprecatedAutoSaveAttribute"/>
  <int value="23" label="DataListElement"/>
  <int value="24" label="FormAttribute"/>
  <int value="25" label="IncrementalAttribute"/>
  <int value="26" label="InputTypeColor"/>
  <int value="27" label="InputTypeDate"/>
  <int value="28" label="InputTypeDateTime"/>
  <int value="29" label="InputTypeDateTimeFallback"/>
  <int value="30" label="InputTypeDateTimeLocal"/>
  <int value="31" label="InputTypeEmail"/>
  <int value="32" label="InputTypeMonth"/>
  <int value="33" label="InputTypeNumber"/>
  <int value="34" label="InputTypeRange"/>
  <int value="35" label="InputTypeSearch"/>
  <int value="36" label="InputTypeTel"/>
  <int value="37" label="InputTypeTime"/>
  <int value="38" label="InputTypeURL"/>
  <int value="39" label="InputTypeWeek"/>
  <int value="40" label="InputTypeWeekFallback"/>
  <int value="41" label="ListAttribute"/>
  <int value="42" label="MaxAttribute"/>
  <int value="43" label="MinAttribute"/>
  <int value="44" label="PatternAttribute"/>
  <int value="45" label="PlaceholderAttribute"/>
  <int value="46" label="PrecisionAttribute"/>
  <int value="47" label="PrefixedDirectoryAttribute"/>
  <int value="48" label="PrefixedSpeechAttribute"/>
  <int value="49" label="RequiredAttribute"/>
  <int value="50" label="ResultsAttribute"/>
  <int value="51" label="StepAttribute"/>
  <int value="52" label="PageVisits"/>
  <int value="53" label="HTMLMarqueeElement"/>
  <int value="54" label="Unused: CSSOverflowMarquee"/>
  <int value="55" label="Reflection"/>
  <int value="56" label="CursorVisibility"/>
  <int value="57" label="PrefixedStorageInfo"/>
  <int value="58" label="XFrameOptions"/>
  <int value="59" label="XFrameOptionsSameOrigin"/>
  <int value="60" label="XFrameOptionsSameOriginWithBadAncestorChain"/>
  <int value="61" label="DeprecatedFlexboxWebContent"/>
  <int value="62" label="DeprecatedFlexboxChrome"/>
  <int value="63" label="DeprecatedFlexboxChromeExtension"/>
  <int value="64" label="SVGTRefElement"/>
  <int value="65" label="UnprefixedPerformanceTimeline"/>
  <int value="66" label="PrefixedPerformanceTimeline"/>
  <int value="67" label="UnprefixedUserTiming"/>
  <int value="68" label="PrefixedUserTiming"/>
  <int value="69" label="WindowEvent"/>
  <int value="70" label="ContentSecurityPolicyWithBaseElement"/>
  <int value="71" label="PrefixedMediaAddKey"/>
  <int value="72" label="PrefixedMediaGenerateKeyRequest"/>
  <int value="73" label="WebAudioLooping"/>
  <int value="74" label="DocumentClear"/>
  <int value="75" label="PrefixedTransitionMediaFeature"/>
  <int value="76" label="SVGFontElement"/>
  <int value="77" label="XMLDocument"/>
  <int value="78" label="XSLProcessingInstruction"/>
  <int value="79" label="XSLTProcessor"/>
  <int value="80" label="SVGSwitchElement"/>
  <int value="81" label="PrefixedDocumentRegister"/>
  <int value="82" label="HTMLShadowElementOlderShadowRoot"/>
  <int value="83" label="DocumentAll"/>
  <int value="84" label="FormElement"/>
  <int value="85" label="DemotedFormElement"/>
  <int value="86" label="CaptureAttributeAsEnum"/>
  <int value="87" label="ShadowDOMPrefixedPseudo"/>
  <int value="88" label="ShadowDOMPrefixedCreateShadowRoot"/>
  <int value="89" label="ShadowDOMPrefixedShadowRoot"/>
  <int value="90" label="SVGAnimationElement"/>
  <int value="91" label="KeyboardEventKeyLocation"/>
  <int value="92" label="CaptureEvents"/>
  <int value="93" label="ReleaseEvents"/>
  <int value="94" label="CSSDisplayRunIn"/>
  <int value="95" label="CSSDisplayCompact"/>
  <int value="96" label="LineClamp"/>
  <int value="97" label="SubFrameBeforeUnloadRegistered"/>
  <int value="98" label="SubFrameBeforeUnloadFired"/>
  <int value="99" label="CSSPseudoElementPrefixedDistributed"/>
  <int value="100" label="TextReplaceWholeText"/>
  <int value="101" label="PrefixedShadowRootConstructor"/>
  <int value="102" label="ConsoleMarkTimeline"/>
  <int value="103" label="CSSPseudoElementUserAgentCustomPseudo"/>
  <int value="104" label="DocumentTypeEntities"/>
  <int value="105" label="DocumentTypeInternalSubset"/>
  <int value="106" label="DocumentTypeNotations"/>
  <int value="107" label="ElementGetAttributeNode"/>
  <int value="108" label="ElementSetAttributeNode"/>
  <int value="109" label="ElementRemoveAttributeNode"/>
  <int value="110" label="ElementGetAttributeNodeNS"/>
  <int value="111" label="DocumentCreateAttribute"/>
  <int value="112" label="DocumentCreateAttributeNS"/>
  <int value="113" label="DocumentCreateCDATASection"/>
  <int value="114" label="DocumentInputEncoding"/>
  <int value="115" label="DocumentXMLEncoding"/>
  <int value="116" label="DocumentXMLStandalone"/>
  <int value="117" label="DocumentXMLVersion"/>
  <int value="118" label="NodeIsSameNode"/>
  <int value="119" label="NodeIsSupported"/>
  <int value="120" label="NodeNamespaceURI"/>
  <int value="121" label="NodePrefix"/>
  <int value="122" label="NodeLocalName"/>
  <int value="123" label="NavigatorProductSub"/>
  <int value="124" label="NavigatorVendor"/>
  <int value="125" label="NavigatorVendorSub"/>
  <int value="126" label="FileError"/>
  <int value="127" label="DocumentCharset"/>
  <int value="128" label="PrefixedAnimationEndEvent"/>
  <int value="129" label="UnprefixedAnimationEndEvent"/>
  <int value="130" label="PrefixedAndUnprefixedAnimationEndEvent"/>
  <int value="131" label="PrefixedAnimationStartEvent"/>
  <int value="132" label="UnprefixedAnimationStartEvent"/>
  <int value="133" label="PrefixedAndUnprefixedAnimationStartEvent"/>
  <int value="134" label="PrefixedAnimationIterationEvent"/>
  <int value="135" label="UnprefixedAnimationIterationEvent"/>
  <int value="136" label="PrefixedAndUnprefixedAnimationIterationEvent"/>
  <int value="137" label="EventReturnValue"/>
  <int value="138" label="SVGSVGElement"/>
  <int value="139" label="SVGAnimateColorElement"/>
  <int value="140" label="InsertAdjacentText"/>
  <int value="141" label="InsertAdjacentElement"/>
  <int value="142" label="HasAttributes"/>
  <int value="143" label="DOMSubtreeModifiedEvent"/>
  <int value="144" label="DOMNodeInsertedEvent"/>
  <int value="145" label="DOMNodeRemovedEvent"/>
  <int value="146" label="DOMNodeRemovedFromDocumentEvent"/>
  <int value="147" label="DOMNodeInsertedIntoDocumentEvent"/>
  <int value="148" label="DOMCharacterDataModifiedEvent"/>
  <int value="149" label="DocumentAllTags"/>
  <int value="150" label="DocumentAllLegacyCall"/>
  <int value="151" label="HTMLAppletElementLegacyCall"/>
  <int value="152" label="HTMLEmbedElementLegacyCall"/>
  <int value="153" label="HTMLObjectElementLegacyCall"/>
  <int value="154" label="BeforeLoadEvent"/>
  <int value="155" label="GetMatchedCSSRules"/>
  <int value="156" label="SVGFontInCSS"/>
  <int value="157" label="ScrollTopBodyNotQuirksMode"/>
  <int value="158" label="ScrollLeftBodyNotQuirksMode"/>
  <int value="159" label="AttributeIsId"/>
  <int value="160" label="AttributeOwnerElement"/>
  <int value="161" label="AttributeSetPrefix"/>
  <int value="162" label="AttributeSpecified"/>
  <int value="163" label="BeforeLoadEventInIsolatedWorld"/>
  <int value="164" label="PrefixedAudioDecodedByteCount"/>
  <int value="165" label="PrefixedVideoDecodedByteCount"/>
  <int value="166" label="PrefixedVideoSupportsFullscreen"/>
  <int value="167" label="PrefixedVideoDisplayingFullscreen"/>
  <int value="168" label="PrefixedVideoEnterFullscreen"/>
  <int value="169" label="PrefixedVideoExitFullscreen"/>
  <int value="170" label="PrefixedVideoEnterFullScreen"/>
  <int value="171" label="PrefixedVideoExitFullScreen"/>
  <int value="172" label="PrefixedVideoDecodedFrameCount"/>
  <int value="173" label="PrefixedVideoDroppedFrameCount"/>
  <int value="174" label="SourceElementCandidate"/>
  <int value="175" label="SourceElementNonMatchingMedia"/>
  <int value="176" label="PrefixedElementRequestFullscreen"/>
  <int value="177" label="PrefixedElementRequestFullScreen"/>
  <int value="178" label="BarPropLocationbar"/>
  <int value="179" label="BarPropMenubar"/>
  <int value="180" label="BarPropPersonalbar"/>
  <int value="181" label="BarPropScrollbars"/>
  <int value="182" label="BarPropStatusbar"/>
  <int value="183" label="BarPropToolbar"/>
  <int value="184" label="InputTypeEmailMultiple"/>
  <int value="185" label="InputTypeEmailMaxLength"/>
  <int value="186" label="InputTypeEmailMultipleMaxLength"/>
  <int value="187" label="TextTrackCueConstructor"/>
  <int value="188" label="CSSStyleDeclarationPropertyName"/>
  <int value="189" label="CSSStyleDeclarationFloatPropertyName"/>
  <int value="190" label="InputTypeText"/>
  <int value="191" label="InputTypeTextMaxLength"/>
  <int value="192" label="InputTypePassword"/>
  <int value="193" label="InputTypePasswordMaxLength"/>
  <int value="194" label="SVGInstanceRoot"/>
  <int value="195" label="ShowModalDialog"/>
  <int value="196" label="PrefixedPageVisibility"/>
  <int value="197" label="HTMLFrameElementLocation"/>
  <int value="198" label="CSSStyleSheetInsertRuleOptionalArg"/>
  <int value="199" label="CSSWebkitRegionAtRule"/>
  <int value="200" label="DocumentBeforeUnloadRegistered"/>
  <int value="201" label="DocumentBeforeUnloadFired"/>
  <int value="202" label="DocumentUnloadRegistered"/>
  <int value="203" label="DocumentUnloadFired"/>
  <int value="204" label="SVGLocatableNearestViewportElement"/>
  <int value="205" label="SVGLocatableFarthestViewportElement"/>
  <int value="206" label="IsIndexElement"/>
  <int value="207" label="HTMLHeadElementProfile"/>
  <int value="208" label="OverflowChangedEvent"/>
  <int value="209" label="SVGPointMatrixTransform"/>
  <int value="210" label="HTMLHtmlElementManifest"/>
  <int value="211" label="DOMFocusInOutEvent"/>
  <int value="212" label="FileGetLastModifiedDate"/>
  <int value="213" label="HTMLElementInnerText"/>
  <int value="214" label="HTMLElementOuterText"/>
  <int value="215" label="ReplaceDocumentViaJavaScriptURL"/>
  <int value="216" label="ElementSetAttributeNodeNS"/>
  <int value="217" label="ElementPrefixedMatchesSelector"/>
  <int value="218" label="DOMImplementationCreateCSSStyleSheet"/>
  <int value="219" label="CSSStyleSheetRules"/>
  <int value="220" label="CSSStyleSheetAddRule"/>
  <int value="221" label="CSSStyleSheetRemoveRule"/>
  <int value="222" label="InitMessageEvent"/>
  <int value="223" label="PrefixedInitMessageEvent"/>
  <int value="224" label="ElementSetPrefix"/>
  <int value="225" label="CSSStyleDeclarationGetPropertyCSSValue"/>
  <int value="226" label="SVGElementGetPresentationAttribute"/>
  <int value="227" label="REMOVEDAttrUsedAsNodeParameter"/>
  <int value="228" label="REMOVEDAttrUsedAsNodeReceiver"/>
  <int value="229" label="PrefixedMediaCancelKeyRequest"/>
  <int value="230" label="DOMImplementationHasFeature"/>
  <int value="231" label="DOMImplementationHasFeatureReturnFalse"/>
  <int value="232" label="CanPlayTypeKeySystem"/>
  <int value="233" label="PrefixedDevicePixelRatioMediaFeature"/>
  <int value="234" label="PrefixedMaxDevicePixelRatioMediaFeature"/>
  <int value="235" label="PrefixedMinDevicePixelRatioMediaFeature"/>
  <int value="236" label="PrefixedTransform2dMediaFeature"/>
  <int value="237" label="PrefixedTransform3dMediaFeature"/>
  <int value="238" label="PrefixedAnimationMediaFeature"/>
  <int value="239" label="PrefixedViewModeMediaFeature"/>
  <int value="240" label="PrefixedStorageQuota"/>
  <int value="241" label="ContentSecurityPolicyReportOnlyInMeta"/>
  <int value="242" label="PrefixedMediaSourceOpen"/>
  <int value="243" label="ResetReferrerPolicy"/>
  <int value="244" label="CaseInsensitiveAttrSelectorMatch"/>
  <int value="245" label="CaptureAttributeAsBoolean"/>
  <int value="246" label="FormNameAccessForImageElement"/>
  <int value="247" label="FormNameAccessForPastNamesMap"/>
  <int value="248" label="FormAssociationByParser"/>
  <int value="249" label="HTMLSourceElementMedia"/>
  <int value="250" label="SVGSVGElementInDocument"/>
  <int value="251" label="SVGDocumentRootElement"/>
  <int value="252" label="DocumentCreateEventOptionalArgument"/>
  <int value="253" label="MediaErrorEncrypted"/>
  <int value="254" label="EventSourceURL"/>
  <int value="255" label="WebSocketURL"/>
  <int value="256" label="UnsafeEvalBlocksCSSOM"/>
  <int value="257" label="WorkerSubjectToCSP"/>
  <int value="258" label="WorkerAllowedByChildBlockedByScript"/>
  <int value="259" label="HTMLMediaElementControllerNotNull"/>
  <int value="260" label="DeprecatedWebKitGradient"/>
  <int value="261" label="DeprecatedWebKitLinearGradient"/>
  <int value="262" label="DeprecatedWebKitRepeatingLinearGradient"/>
  <int value="263" label="DeprecatedWebKitRadialGradient"/>
  <int value="264" label="DeprecatedWebKitRepeatingRadialGradient"/>
  <int value="265" label="PrefixedGetImageDataHD"/>
  <int value="266" label="PrefixedPutImageDataHD"/>
  <int value="267" label="PrefixedImageSmoothingEnabled"/>
  <int value="268" label="UnprefixedImageSmoothingEnabled"/>
  <int value="269" label="ShadowRootApplyAuthorStyles"/>
  <int value="270" label="PromiseConstructor"/>
  <int value="271" label="PromiseCast"/>
  <int value="272" label="PromiseReject"/>
  <int value="273" label="PromiseResolve"/>
  <int value="274" label="TextAutosizing"/>
  <int value="275" label="TextAutosizingLayout"/>
  <int value="276" label="HTMLAnchorElementPingAttribute"/>
  <int value="277" label="JavascriptExhaustedMemory"/>
  <int value="278" label="InsertAdjacentHTML"/>
  <int value="279" label="SVGClassName"/>
  <int value="280" label="HTMLAppletElement"/>
  <int value="281" label="HTMLMediaElementSeekToFragmentStart"/>
  <int value="282" label="HTMLMediaElementPauseAtFragmentEnd"/>
  <int value="283" label="PrefixedWindowURL"/>
  <int value="284" label="PrefixedWorkerURL"/>
  <int value="285" label="WindowOrientation"/>
  <int value="286" label="DOMStringListContains"/>
  <int value="287" label="DocumentCaptureEvents"/>
  <int value="288" label="DocumentReleaseEvents"/>
  <int value="289" label="WindowCaptureEvents"/>
  <int value="290" label="WindowReleaseEvents"/>
  <int value="291" label="PrefixedGamepad"/>
  <int value="292" label="ElementAnimateKeyframeListEffectObjectTiming"/>
  <int value="293" label="ElementAnimateKeyframeListEffectDoubleTiming"/>
  <int value="294" label="ElementAnimateKeyframeListEffectNoTiming"/>
  <int value="295" label="DocumentXPathCreateExpression"/>
  <int value="296" label="DocumentXPathCreateNSResolver"/>
  <int value="297" label="DocumentXPathEvaluate"/>
  <int value="298" label="AttrGetValue"/>
  <int value="299" label="AttrSetValue"/>
  <int value="300" label="AnimationConstructorKeyframeListEffectObjectTiming"/>
  <int value="301" label="AnimationConstructorKeyframeListEffectDoubleTiming"/>
  <int value="302" label="AnimationConstructorKeyframeListEffectNoTiming"/>
  <int value="303" label="AttrSetValueWithElement"/>
  <int value="304" label="PrefixedCancelAnimationFrame"/>
  <int value="305" label="PrefixedCancelRequestAnimationFrame"/>
  <int value="306" label="NamedNodeMapGetNamedItem"/>
  <int value="307" label="NamedNodeMapSetNamedItem"/>
  <int value="308" label="NamedNodeMapRemoveNamedItem"/>
  <int value="309" label="NamedNodeMapItem"/>
  <int value="310" label="NamedNodeMapGetNamedItemNS"/>
  <int value="311" label="NamedNodeMapSetNamedItemNS"/>
  <int value="312" label="NamedNodeMapRemoveNamedItemNS"/>
  <int value="313" label="OpenWebDatabaseInWorker"/>
  <int value="314" label="OpenWebDatabaseSyncInWorker"/>
  <int value="315" label="PrefixedAllowFullscreenAttribute"/>
  <int value="316" label="XHRProgressEventPosition"/>
  <int value="317" label="XHRProgressEventTotalSize"/>
  <int value="318" label="PrefixedDocumentIsFullscreen"/>
  <int value="319" label="PrefixedDocumentFullScreenKeyboardInputAllowed"/>
  <int value="320" label="PrefixedDocumentCurrentFullScreenElement"/>
  <int value="321" label="PrefixedDocumentCancelFullScreen"/>
  <int value="322" label="PrefixedDocumentFullscreenEnabled"/>
  <int value="323" label="PrefixedDocumentFullscreenElement"/>
  <int value="324" label="PrefixedDocumentExitFullscreen"/>
  <int value="325" label="SVGForeignObjectElement"/>
  <int value="326" label="PrefixedElementRequestPointerLock"/>
  <int value="327" label="SelectionSetPosition"/>
  <int value="328" label="AnimationFinishEvent"/>
  <int value="329" label="SVGSVGElementInXMLDocument"/>
  <int value="330" label="CanvasRenderingContext2DSetAlpha"/>
  <int value="331" label="CanvasRenderingContext2DSetCompositeOperation"/>
  <int value="332" label="CanvasRenderingContext2DSetLineWidth"/>
  <int value="333" label="CanvasRenderingContext2DSetLineCap"/>
  <int value="334" label="CanvasRenderingContext2DSetLineJoin"/>
  <int value="335" label="CanvasRenderingContext2DSetMiterLimit"/>
  <int value="336" label="CanvasRenderingContext2DClearShadow"/>
  <int value="337" label="CanvasRenderingContext2DSetStrokeColor"/>
  <int value="338" label="CanvasRenderingContext2DSetFillColor"/>
  <int value="339" label="CanvasRenderingContext2DDrawImageFromRect"/>
  <int value="340" label="CanvasRenderingContext2DSetShadow"/>
  <int value="341" label="PrefixedPerformanceClearResourceTimings"/>
  <int value="342" label="PrefixedPerformanceSetResourceTimingBufferSize"/>
  <int value="343" label="EventSrcElement"/>
  <int value="344" label="EventCancelBubble"/>
  <int value="345" label="EventPath"/>
  <int value="346" label="EventClipboardData"/>
  <int value="347" label="NodeIteratorDetach"/>
  <int value="348" label="AttrNodeValue"/>
  <int value="349" label="AttrTextContent"/>
  <int value="350" label="EventGetReturnValueTrue"/>
  <int value="351" label="EventGetReturnValueFalse"/>
  <int value="352" label="EventSetReturnValueTrue"/>
  <int value="353" label="EventSetReturnValueFalse"/>
  <int value="354" label="NodeIteratorExpandEntityReferences"/>
  <int value="355" label="TreeWalkerExpandEntityReferences"/>
  <int value="356" label="WindowOffscreenBuffering"/>
  <int value="357" label="WindowDefaultStatus"/>
  <int value="358" label="WindowDefaultstatus"/>
  <int value="359" label="PrefixedConvertPointFromPageToNode"/>
  <int value="360" label="PrefixedConvertPointFromNodeToPage"/>
  <int value="361" label="PrefixedTransitionEventConstructor"/>
  <int value="362" label="PrefixedMutationObserverConstructor"/>
  <int value="363" label="PrefixedIDBCursorConstructor"/>
  <int value="364" label="PrefixedIDBDatabaseConstructor"/>
  <int value="365" label="PrefixedIDBFactoryConstructor"/>
  <int value="366" label="PrefixedIDBIndexConstructor"/>
  <int value="367" label="PrefixedIDBKeyRangeConstructor"/>
  <int value="368" label="PrefixedIDBObjectStoreConstructor"/>
  <int value="369" label="PrefixedIDBRequestConstructor"/>
  <int value="370" label="PrefixedIDBTransactionConstructor"/>
  <int value="371" label="NotificationPermission"/>
  <int value="372" label="RangeDetach"/>
  <int value="373" label="DocumentImportNodeOptionalArgument"/>
  <int value="374" label="HTMLTableElementVspace"/>
  <int value="375" label="HTMLTableElementHspace"/>
  <int value="376" label="PrefixedDocumentExitPointerLock"/>
  <int value="377" label="PrefixedDocumentPointerLockElement"/>
  <int value="378" label="PrefixedTouchRadiusX"/>
  <int value="379" label="PrefixedTouchRadiusY"/>
  <int value="380" label="PrefixedTouchRotationAngle"/>
  <int value="381" label="PrefixedTouchForce"/>
  <int value="382" label="PrefixedMouseEventMovementX"/>
  <int value="383" label="PrefixedMouseEventMovementY"/>
  <int value="384" label="PrefixedWheelEventDirectionInvertedFromDevice"/>
  <int value="385" label="PrefixedWheelEventInit"/>
  <int value="386" label="PrefixedFileRelativePath"/>
  <int value="387" label="DocumentCaretRangeFromPoint"/>
  <int value="388" label="DocumentGetCSSCanvasContext"/>
  <int value="389" label="ElementScrollIntoViewIfNeeded"/>
  <int value="390" label="ElementScrollByLines"/>
  <int value="391" label="ElementScrollByPages"/>
  <int value="392" label="RangeCompareNode"/>
  <int value="393" label="RangeExpand"/>
  <int value="394" label="HTMLFrameElementWidth"/>
  <int value="395" label="HTMLFrameElementHeight"/>
  <int value="396" label="HTMLImageElementX"/>
  <int value="397" label="HTMLImageElementY"/>
  <int value="398" label="HTMLOptionsCollectionRemoveElement"/>
  <int value="399" label="HTMLPreElementWrap"/>
  <int value="400" label="SelectionBaseNode"/>
  <int value="401" label="SelectionBaseOffset"/>
  <int value="402" label="SelectionExtentNode"/>
  <int value="403" label="SelectionExtentOffset"/>
  <int value="404" label="SelectionType"/>
  <int value="405" label="SelectionModify"/>
  <int value="406" label="SelectionSetBaseAndExtent"/>
  <int value="407" label="SelectionEmpty"/>
  <int value="408" label="SVGFEMorphologyElementSetRadius"/>
  <int value="409" label="VTTCue"/>
  <int value="410" label="VTTCueRender"/>
  <int value="411" label="VTTCueRenderVertical"/>
  <int value="412" label="VTTCueRenderSnapToLinesFalse"/>
  <int value="413" label="VTTCueRenderLineNotAuto"/>
  <int value="414" label="VTTCueRenderPositionNot50"/>
  <int value="415" label="VTTCueRenderSizeNot100"/>
  <int value="416" label="VTTCueRenderAlignNotMiddle"/>
  <int value="417" label="ElementRequestPointerLock"/>
  <int value="418" label="VTTCueRenderRtl"/>
  <int value="419" label="PostMessageFromSecureToInsecure"/>
  <int value="420" label="PostMessageFromInsecureToSecure"/>
  <int value="421" label="DocumentExitPointerLock"/>
  <int value="422" label="DocumentPointerLockElement"/>
  <int value="423" label="MixedContentFont"/>
  <int value="424" label="PrefixedCursorZoomIn"/>
  <int value="425" label="PrefixedCursorZoomOut"/>
  <int value="426" label="CSSCharsetRuleEncoding"/>
  <int value="427" label="DocumentSetCharset"/>
  <int value="428" label="DocumentDefaultCharset"/>
  <int value="429" label="TextEncoderConstructor"/>
  <int value="430" label="TextEncoderEncode"/>
  <int value="431" label="TextDecoderConstructor"/>
  <int value="432" label="TextDecoderDecode"/>
  <int value="433" label="FocusInOutEvent"/>
  <int value="434" label="MouseEventMovementX"/>
  <int value="435" label="MouseEventMovementY"/>
  <int value="436" label="MixedContentTextTrack"/>
  <int value="437" label="MixedContentRaw"/>
  <int value="438" label="MixedContentImage"/>
  <int value="439" label="MixedContentMedia"/>
  <int value="440" label="DocumentFonts"/>
  <int value="441" label="MixedContentFormsSubmitted"/>
  <int value="442" label="FormsSubmitted"/>
  <int value="443" label="TextInputEventOnInput"/>
  <int value="444" label="TextInputEventOnTextArea"/>
  <int value="445" label="TextInputEventOnContentEditable"/>
  <int value="446" label="TextInputEventOnNotNode"/>
  <int value="447" label="WebkitBeforeTextInsertedOnInput"/>
  <int value="448" label="WebkitBeforeTextInsertedOnTextArea"/>
  <int value="449" label="WebkitBeforeTextInsertedOnContentEditable"/>
  <int value="450" label="WebkitBeforeTextInsertedOnNotNode"/>
  <int value="451" label="WebkitEditableContentChangedOnInput"/>
  <int value="452" label="WebkitEditableContentChangedOnTextArea"/>
  <int value="453" label="WebkitEditableContentChangedOnContentEditable"/>
  <int value="454" label="WebkitEditableContentChangedOnNotNode"/>
  <int value="455" label="HTMLImports"/>
  <int value="456" label="ElementCreateShadowRoot"/>
  <int value="457" label="DocumentRegisterElement"/>
  <int value="458" label="EditingAppleInterchangeNewline"/>
  <int value="459" label="EditingAppleConvertedSpace"/>
  <int value="460" label="EditingApplePasteAsQuotation"/>
  <int value="461" label="EditingAppleStyleSpanClass"/>
  <int value="462" label="EditingAppleTabSpanClass"/>
  <int value="463" label="HTMLImportsAsyncAttribute"/>
  <int value="464" label="FontFaceSetReady"/>
  <int value="465" label="XMLHttpRequestSynchronous"/>
  <int value="466" label="CSSSelectorPseudoUnresolved"/>
  <int value="467" label="CSSSelectorPseudoShadow"/>
  <int value="468" label="CSSSelectorPseudoContent"/>
  <int value="469" label="CSSSelectorPseudoHost"/>
  <int value="470" label="CSSSelectorPseudoHostContext"/>
  <int value="471" label="CSSDeepCombinator"/>
  <int value="472" label="SyncXHRWithCredentials"/>
  <int value="473" label="UseAsm"/>
  <int value="474" label="KeyEventNotAllowedInFullScreen"/>
  <int value="475" label="DOMWindowOpen"/>
  <int value="476" label="DOMWindowOpenFeatures"/>
  <int value="477" label="LegacyFullScreenErrorExemption"/>
  <int value="478" label="MediaStreamTrackGetSources"/>
  <int value="479" label="AspectRatioFlexItem"/>
  <int value="480" label="DetailsElement"/>
  <int value="481" label="DialogElement"/>
  <int value="482" label="MapElement"/>
  <int value="483" label="MeterElement"/>
  <int value="484" label="ProgressElement"/>
  <int value="485" label="VideoFullscreenAllowedExemption"/>
  <int value="488" label="WebKitPoint"/>
  <int value="489" label="HTMLPreElementWidth"/>
  <int value="490" label="PrefixedHTMLElementDropzone"/>
  <int value="491" label="WheelEventWheelDeltaX"/>
  <int value="492" label="WheelEventWheelDeltaY"/>
  <int value="493" label="WheelEventWheelDelta"/>
  <int value="494" label="SendBeacon"/>
  <int value="495" label="SendBeaconQuotaExceeded"/>
  <int value="501" label="SVGSMILElementInDocument"/>
  <int value="502" label="MouseEventOffsetX"/>
  <int value="503" label="MouseEventOffsetY"/>
  <int value="504" label="MouseEventX"/>
  <int value="505" label="MouseEventY"/>
  <int value="506" label="MouseEventFromElement"/>
  <int value="507" label="MouseEventToElement"/>
  <int value="508" label="RequestFileSystem"/>
  <int value="509" label="RequestFileSystemWorker"/>
  <int value="510" label="RequestFileSystemSyncWorker"/>
  <int value="511" label="UIEventLayerX"/>
  <int value="512" label="UIEventLayerY"/>
  <int value="513" label="UIEventPageX"/>
  <int value="514" label="UIEventPageY"/>
  <int value="515" label="BgPropertiesFixed"/>
  <int value="516" label="HTMLImageElementComposite"/>
  <int value="517" label="DevToolsConsoleTimeline"/>
  <int value="518" label="DevToolsConsoleProfile"/>
  <int value="519" label="SVGStyleElementTitle"/>
  <int value="520" label="PictureSourceSrc"/>
  <int value="521" label="Picture"/>
  <int value="522" label="Sizes"/>
  <int value="523" label="SrcsetXDescriptor"/>
  <int value="524" label="SrcsetWDescriptor"/>
  <int value="525" label="SelectionContainsNode"/>
  <int value="526" label="MediaStreamEnded"/>
  <int value="527" label="MixedContentPrivateIPInPublicWebsitePassive"/>
  <int value="528" label="MixedContentPrivateIPInPublicWebsiteActive"/>
  <int value="529" label="XMLExternalResourceLoad"/>
  <int value="530" label="MixedContentPrivateHostnameInPublicHostname"/>
  <int value="531" label="LegacyProtocolEmbeddedAsSubresource"/>
  <int value="532" label="RequestedSubresourceWithEmbeddedCredentials"/>
  <int value="533" label="NotificationCreated"/>
  <int value="534" label="NotificationClosed"/>
  <int value="535" label="NotificationPermissionRequested"/>
  <int value="536" label="MediaStreamLabel"/>
  <int value="537" label="MediaStreamStop"/>
  <int value="538" label="ConsoleTimeline"/>
  <int value="539" label="ConsoleTimelineEnd"/>
  <int value="540" label="SRIElementWithMatchingIntegrityAttribute"/>
  <int value="541" label="SRIElementWithNonMatchingIntegrityAttribute"/>
  <int value="542" label="SRIElementWithUnparsableIntegrityAttribute"/>
  <int value="543" label="SRIElementWithIntegrityAttributeAndInsecureOrigin"/>
  <int value="544" label="SRIElementWithIntegrityAttributeAndInsecureResource"/>
  <int value="545" label="V8Animation_StartTime_AttributeGetter"/>
  <int value="546" label="V8Animation_StartTime_AttributeSetter"/>
  <int value="547" label="V8Animation_CurrentTime_AttributeGetter"/>
  <int value="548" label="V8Animation_CurrentTime_AttributeSetter"/>
  <int value="549" label="V8Animation_PlaybackRate_AttributeGetter"/>
  <int value="550" label="V8Animation_PlaybackRate_AttributeSetter"/>
  <int value="551" label="V8Animation_PlayState_AttributeGetter"/>
  <int value="552" label="V8Animation_Finish_Method"/>
  <int value="553" label="V8Animation_Play_Method"/>
  <int value="554" label="V8Animation_Pause_Method"/>
  <int value="555" label="V8Animation_Reverse_Method"/>
  <int value="556" label="BreakIterator"/>
  <int value="557" label="ScreenOrientationAngle"/>
  <int value="558" label="ScreenOrientationType"/>
  <int value="559" label="ScreenOrientationLock"/>
  <int value="560" label="ScreenOrientationUnlock"/>
  <int value="561" label="GeolocationSecureOrigin"/>
  <int value="562" label="GeolocationInsecureOrigin"/>
  <int value="563" label="NotificationSecureOrigin"/>
  <int value="564" label="NotificationInsecureOrigin"/>
  <int value="565" label="NotificationShowEvent"/>
  <int value="566" label="CSSXGetComputedStyleQueries"/>
  <int value="567" label="SVG1DOM"/>
  <int value="568" label="SVGPathSegDOM"/>
  <int value="569" label="SVGTransformListConsolidate"/>
  <int value="570" label="SVGAnimatedTransformListBaseVal"/>
  <int value="571" label="QuotedAnimationName"/>
  <int value="572" label="QuotedKeyframesRule"/>
  <int value="573" label="SrcsetDroppedCandidate"/>
  <int value="574" label="WindowPostMessage"/>
  <int value="575" label="WindowPostMessageWithLegacyTargetOriginArgument"/>
  <int value="576" label="RenderRuby"/>
  <int value="577" label="CanvasRenderingContext2DCompositeOperationDarker"/>
  <int value="578" label="ScriptElementWithInvalidTypeHasSrc"/>
  <int value="579" label="TimelineStart"/>
  <int value="580" label="ElementBaseURIFromXMLBase"/>
  <int value="581"
      label="XMLHttpRequestSynchronousInNonWorkerOutsideBeforeUnload"/>
  <int value="582" label="CSSSelectorPseudoScrollbar"/>
  <int value="583" label="CSSSelectorPseudoScrollbarButton"/>
  <int value="584" label="CSSSelectorPseudoScrollbarThumb"/>
  <int value="585" label="CSSSelectorPseudoScrollbarTrack"/>
  <int value="586" label="CSSSelectorPseudoScrollbarTrackPiece"/>
  <int value="587" label="LangAttribute"/>
  <int value="588" label="LangAttributeOnHTML"/>
  <int value="589" label="LangAttributeOnBody"/>
  <int value="590" label="LangAttributeDoesNotMatchToUILocale"/>
  <int value="591" label="InputTypeSubmit"/>
  <int value="592" label="InputTypeSubmitWithValue"/>
  <int value="593" label="SetReferrerPolicy"/>
  <int value="594" label="DOMImplementationHasFeatureReturnFalseInternal"/>
  <int value="595" label="MouseEventWhich"/>
  <int value="596" label="UIEventCharCode"/>
  <int value="597" label="UIEventKeyCode"/>
  <int value="598" label="UIEventWhich"/>
  <int value="599" label="TextWholeText"/>
  <int value="600" label="AttrChildAccess"/>
  <int value="601" label="AttrChildChange"/>
  <int value="602" label="DocumentGetOverrideStyle"/>
  <int value="603" label="NotificationCloseEvent"/>
  <int value="604" label="CSSKeyframesRuleAppendRule"/>
  <int value="605" label="CSSKeyframesRuleInsertRule"/>
  <int value="606" label="StyleMedia"/>
  <int value="607" label="StyleMediaType"/>
  <int value="608" label="StyleMediaMatchMedium"/>
  <int value="609" label="MixedContentPresent"/>
  <int value="610" label="MixedContentBlockable"/>
  <int value="611" label="MixedContentAudio"/>
  <int value="612" label="MixedContentDownload"/>
  <int value="613" label="MixedContentFavicon"/>
  <int value="614" label="MixedContentImage"/>
  <int value="615" label="MixedContentInternal"/>
  <int value="616" label="MixedContentPlugin"/>
  <int value="617" label="MixedContentPrefetch"/>
  <int value="618" label="MixedContentVideo"/>
  <int value="619" label="CORSCredentialedNullOriginAccessAllowed"/>
  <int value="620" label="AudioListenerDopplerFactor"/>
  <int value="621" label="AudioListenerSpeedOfSound"/>
  <int value="622" label="AudioListenerSetVelocity"/>
  <int value="623" label="ShadowRootGetElementsByClassName"/>
  <int value="624" label="ShadowRootGetElementsByTagName"/>
  <int value="625" label="ShadowRootGetElementsByTagNameNS"/>
  <int value="626" label="SVGSMILAnimationInImage"/>
  <int value="627" label="CSSSelectorPseudoFullScreenDocument"/>
  <int value="628" label="CSSSelectorPseudoFullScreenAncestor"/>
  <int value="629" label="CSSSelectorPseudoFullScreen"/>
  <int value="630" label="WebKitCSSMatrix"/>
  <int value="631" label="AudioContextCreateAnalyser"/>
  <int value="632" label="AudioContextCreateBiquadFilter"/>
  <int value="633" label="AudioContextCreateBufferSource"/>
  <int value="634" label="AudioContextCreateChannelMerger"/>
  <int value="635" label="AudioContextCreateChannelSplitter"/>
  <int value="636" label="AudioContextCreateConvolver"/>
  <int value="637" label="AudioContextCreateDelay"/>
  <int value="638" label="AudioContextCreateDynamicsCompressor"/>
  <int value="639" label="AudioContextCreateGain"/>
  <int value="640" label="AudioContextCreateMediaElementSource"/>
  <int value="641" label="AudioContextCreateMediaStreamDestination"/>
  <int value="642" label="AudioContextCreateMediaStreamSource"/>
  <int value="643" label="AudioContextCreateOscillator"/>
  <int value="644" label="AudioContextCreatePanner"/>
  <int value="645" label="AudioContextCreatePeriodicWave"/>
  <int value="646" label="AudioContextCreateScriptProcessor"/>
  <int value="647" label="AudioContextCreateStereoPanner"/>
  <int value="648" label="AudioContextCreateWaveShaper"/>
  <int value="649" label="AudioContextDecodeAudioData"/>
  <int value="650" label="AudioContextResume"/>
  <int value="651" label="AudioContextSuspend"/>
  <int value="652" label="AudioContext"/>
  <int value="653" label="OfflineAudioContext"/>
  <int value="654" label="PrefixedAudioContext"/>
  <int value="655" label="PrefixedOfflineAudioContext"/>
  <int value="656" label="AddEventListenerNoArguments"/>
  <int value="657" label="AddEventListenerOneArgument"/>
  <int value="658" label="RemoveEventListenerNoArguments"/>
  <int value="659" label="RemoveEventListenerOneArgument"/>
  <int value="660" label="SRIElementWithNonMatchingIntegrityType"/>
  <int value="661"
      label="MixedContentInNonHTTPSFrameThatRestrictsMixedContent"/>
  <int value="662"
      label="MixedContentInSecureFrameThatDoesNotRestrictMixedContent"/>
  <int value="663" label="MixedContentWebSocket"/>
  <int value="664" label="SyntheticKeyframesInCompositedCSSAnimation"/>
  <int value="665" label="MixedContentFormPresent"/>
  <int value="666" label="GetUserMediaInsecureOrigin"/>
  <int value="667" label="GetUserMediaSecureOrigin"/>
  <int value="668" label="DeviceMotionInsecureOrigin"/>
  <int value="669" label="DeviceMotionSecureOrigin"/>
  <int value="670" label="DeviceOrientationInsecureOrigin"/>
  <int value="671" label="DeviceOrientationSecureOrigin"/>
  <int value="672" label="SandboxViaIFrame"/>
  <int value="673" label="SandboxViaCSP"/>
  <int value="674" label="BlockedSniffingImageToScript"/>
  <int value="675" label="Fetch"/>
  <int value="676" label="FetchBodyStream"/>
  <int value="677" label="XMLHttpRequestAsynchronous"/>
  <int value="678" label="AudioBufferSourceBufferOnce"/>
  <int value="679" label="WhiteSpacePreFromXMLSpace"/>
  <int value="680" label="WhiteSpaceNowrapFromXMLSpace"/>
  <int value="681" label="SVGElementXmlbase"/>
  <int value="682" label="SVGElementXmllang"/>
  <int value="683" label="SVGElementXmlspace"/>
  <int value="684" label="WindowMoveResizeMissingArguments"/>
  <int value="685" label="SVGSVGElementForceRedraw"/>
  <int value="686" label="SVGSVGElementSuspendRedraw"/>
  <int value="687" label="SVGSVGElementUnsuspendRedraw"/>
  <int value="688" label="SVGSVGElementUnsuspendRedrawAll"/>
  <int value="689" label="AudioContextClose"/>
  <int value="690" label="ServiceWorkerClientPostMessage"/>
  <int value="691" label="CSSZoomNotEqualToOne"/>
  <int value="692" label="SVGGraphicsElementGetTransformToElement"/>
  <int value="693" label="ServiceWorkerClientsGetAll"/>
  <int value="694" label="ClientRectListItem"/>
  <int value="695" label="WindowClientInformation"/>
  <int value="696" label="WindowFind"/>
  <int value="697" label="WindowScreenLeft"/>
  <int value="698" label="WindowScreenTop"/>
  <int value="699" label="V8Animation_Cancel_Method"/>
  <int value="700" label="V8Animation_Onfinish_AttributeGetter"/>
  <int value="701" label="V8Animation_Onfinish_AttributeSetter"/>
  <int value="702" label="ElementOffsetParent"/>
  <int value="703" label="ElementOffsetTop"/>
  <int value="704" label="ElementOffsetLeft"/>
  <int value="705" label="ElementOffsetWidth"/>
  <int value="706" label="ElementOffsetHeight"/>
  <int value="707" label="V8Window_WebKitAnimationEvent_ConstructorGetter"/>
  <int value="708" label="V8Window_WebKitAnimationEvent_AttributeSetter"/>
  <int value="709" label="ResourceLoadedAfterRedirectWithCSP"/>
  <int value="710" label="CryptoGetRandomValues"/>
  <int value="711" label="SubtleCryptoEncrypt"/>
  <int value="712" label="SubtleCryptoDecrypt"/>
  <int value="713" label="SubtleCryptoSign"/>
  <int value="714" label="SubtleCryptoVerify"/>
  <int value="715" label="SubtleCryptoDigest"/>
  <int value="716" label="SubtleCryptoGenerateKey"/>
  <int value="717" label="SubtleCryptoImportKey"/>
  <int value="718" label="SubtleCryptoExportKey"/>
  <int value="719" label="SubtleCryptoDeriveBits"/>
  <int value="720" label="SubtleCryptoDeriveKey"/>
  <int value="721" label="SubtleCryptoWrapKey"/>
  <int value="722" label="SubtleCryptoUnwrapKey"/>
  <int value="723" label="CryptoAlgorithmAesCbc"/>
  <int value="724" label="CryptoAlgorithmHmac"/>
  <int value="725" label="CryptoAlgorithmRsaSsaPkcs1v1_5"/>
  <int value="726" label="CryptoAlgorithmSha1"/>
  <int value="727" label="CryptoAlgorithmSha256"/>
  <int value="728" label="CryptoAlgorithmSha384"/>
  <int value="729" label="CryptoAlgorithmSha512"/>
  <int value="730" label="CryptoAlgorithmAesGcm"/>
  <int value="731" label="CryptoAlgorithmRsaOaep"/>
  <int value="732" label="CryptoAlgorithmAesCtr"/>
  <int value="733" label="CryptoAlgorithmAesKw"/>
  <int value="734" label="CryptoAlgorithmRsaPss"/>
  <int value="735" label="CryptoAlgorithmEcdsa"/>
  <int value="736" label="CryptoAlgorithmEcdh"/>
  <int value="737" label="CryptoAlgorithmHkdf"/>
  <int value="738" label="CryptoAlgorithmPbkdf2"/>
  <int value="739" label="DocumentSetDomain"/>
  <int value="740" label="UpgradeInsecureRequestsEnabled"/>
  <int value="741" label="UpgradeInsecureRequestsUpgradedRequest"/>
  <int value="742" label="DocumentDesignMode"/>
  <int value="743" label="GlobalCacheStorage"/>
  <int value="744" label="NetInfo"/>
  <int value="745" label="BackgroundSync"/>
  <int value="746" label="TabStopProperty"/>
  <int value="747" label="TabStopAttribute"/>
  <int value="748" label="LegacyConst"/>
  <int value="749" label="SVGFilterRes"/>
  <int value="750" label="V8Permissions_Query_Method"/>
  <int value="751" label="LegacyCSSValueIntrinsic"/>
  <int value="752" label="LegacyCSSValueMinIntrinsic"/>
  <int value="753" label="WebkitCanvas"/>
  <int value="754" label="V8HTMLInputElement_Autocapitalize_AttributeGetter"/>
  <int value="755" label="V8HTMLInputElement_Autocapitalize_AttributeSetter"/>
  <int value="756"
      label="V8HTMLTextAreaElement_Autocapitalize_AttributeGetter"/>
  <int value="757"
      label="V8HTMLTextAreaElement_Autocapitalize_AttributeSetter"/>
  <int value="758" label="SVGHrefBaseVal"/>
  <int value="759" label="SVGHrefAnimVal"/>
  <int value="760" label="V8CSSRuleList_Item_Method"/>
  <int value="761" label="V8MediaList_Item_Method"/>
  <int value="762" label="V8StyleSheetList_Item_Method"/>
  <int value="763" label="StyleSheetListAnonymousNamedGetter"/>
  <int value="764" label="AutocapitalizeAttribute"/>
  <int value="765" label="FullscreenSecureOrigin"/>
  <int value="766" label="FullscreenInsecureOrigin"/>
  <int value="767" label="DialogInSandboxedContext"/>
  <int value="768" label="SVGSMILAnimationInImageRegardlessOfCache"/>
  <int value="769" label="PushSubscriptionId"/>
  <int value="770" label="EncryptedMediaSecureOrigin"/>
  <int value="771" label="EncryptedMediaInsecureOrigin"/>
  <int value="772" label="PerformanceFrameTiming"/>
  <int value="773" label="V8Element_Animate_Method"/>
  <int value="774"
      label="V8SVGSVGElement_PixelUnitToMillimeterX_AttributeGetter"/>
  <int value="775"
      label="V8SVGSVGElement_PixelUnitToMillimeterY_AttributeGetter"/>
  <int value="776"
      label="V8SVGSVGElement_ScreenPixelToMillimeterX_AttributeGetter"/>
  <int value="777"
      label="V8SVGSVGElement_ScreenPixelToMillimeterY_AttributeGetter"/>
  <int value="778" label="V8SVGSVGElement_GetElementById_Method"/>
  <int value="779" label="ElementCreateShadowRootMultiple"/>
  <int value="780" label="V8MessageChannel_Constructor"/>
  <int value="781" label="V8MessagePort_PostMessage_Method"/>
  <int value="782" label="V8MessagePort_Start_Method"/>
  <int value="783" label="V8MessagePort_Close_Method"/>
  <int value="784" label="MessagePortsTransferred"/>
  <int value="785" label="CSSKeyframesRuleAnonymousIndexedGetter"/>
  <int value="786" label="V8Screen_AvailLeft_AttributeGetter"/>
  <int value="787" label="V8Screen_AvailTop_AttributeGetter"/>
  <int value="788" label="ObjectObserve"/>
  <int value="789" label="V8SVGAnimationElement_HasExtension_Method"/>
  <int value="790" label="V8SVGCursorElement_HasExtension_Method"/>
  <int value="791"
      label="V8SVGFEConvolveMatrixElement_PreserveAlpha_AttributeGetter"/>
  <int value="792" label="V8SVGFilterElement_FilterResX_AttributeGetter"/>
  <int value="793" label="V8SVGFilterElement_FilterResY_AttributeGetter"/>
  <int value="794" label="V8SVGFilterElement_SetFilterRes_Method"/>
  <int value="795" label="V8SVGGraphicsElement_HasExtension_Method"/>
  <int value="796" label="V8SVGMaskElement_HasExtension_Method"/>
  <int value="797" label="V8SVGPatternElement_HasExtension_Method"/>
  <int value="798" label="V8SVGStyleElement_Disabled_AttributeGetter"/>
  <int value="799" label="V8SVGStyleElement_Disabled_AttributeSetter"/>
  <int value="800"
      label="ElementCreateShadowRootMultipleWithUserAgentShadowRoot"/>
  <int value="801" label="InputTypeFileSecureOrigin"/>
  <int value="802" label="InputTypeFileInsecureOrigin"/>
  <int value="803" label="V8HashChangeEvent_InitHashChangeEvent_Method"/>
  <int value="804" label="ElementAttachShadow"/>
  <int value="805" label="V8KeyboardEvent_KeyIdentifier_AttributeGetter"/>
  <int value="806"
      label="V8SecurityPolicyViolationEvent_DocumentURI_AttributeGetter"/>
  <int value="807"
      label="V8SecurityPolicyViolationEvent_BlockedURI_AttributeGetter"/>
  <int value="808"
      label="V8SecurityPolicyViolationEvent_StatusCode_AttributeGetter"/>
  <int value="809" label="HTMLLinkElementDisabled"/>
  <int value="810" label="V8HTMLLinkElement_Disabled_AttributeGetter"/>
  <int value="811" label="V8HTMLLinkElement_Disabled_AttributeSetter"/>
  <int value="812" label="V8HTMLStyleElement_Disabled_AttributeGetter"/>
  <int value="813" label="V8HTMLStyleElement_Disabled_AttributeSetter"/>
  <int value="814" label="V8FileReader_ReadAsBinaryString_Method"/>
  <int value="815" label="V8FileReaderSync_ReadAsBinaryString_Method"/>
  <int value="816" label="V8DOMError_Constructor"/>
  <int value="817" label="V8DOMError_Name_AttributeGetter"/>
  <int value="818" label="V8DOMError_Message_AttributeGetter"/>
  <int value="819" label="V8FileReader_Error_AttributeGetter"/>
  <int value="820" label="V8IDBRequest_Error_AttributeGetter"/>
  <int value="821" label="V8IDBTransaction_Error_AttributeGetter"/>
  <int value="822" label="V8DOMStringList_Item_Method"/>
  <int value="823" label="V8Location_AncestorOrigins_AttributeGetter"/>
  <int value="824" label="V8IDBDatabase_ObjectStoreNames_AttributeGetter"/>
  <int value="825" label="V8IDBObjectStore_IndexNames_AttributeGetter"/>
  <int value="826" label="V8IDBTransaction_ObjectStoreNames_AttributeGetter"/>
  <int value="827" label="V8Navigator_GetStorageUpdates_Method"/>
  <int value="828" label="V8TextTrackCueList_Item_Method"/>
  <int value="829" label="V8TextTrackList_Item_Method"/>
  <int value="830" label="TextInputFired"/>
  <int value="831" label="V8TextEvent_Data_AttributeGetter"/>
  <int value="832" label="V8TextEvent_InitTextEvent_Method"/>
  <int value="833" label="V8SVGSVGElement_UseCurrentView_AttributeGetter"/>
  <int value="834" label="V8SVGSVGElement_CurrentView_AttributeGetter"/>
  <int value="835" label="ClientHintsDPR"/>
  <int value="836" label="ClientHintsResourceWidth"/>
  <int value="837" label="ClientHintsViewportWidth"/>
  <int value="838" label="SRIElementIntegrityAttributeButIneligible"/>
  <int value="839" label="FormDataAppendFile"/>
  <int value="840" label="FormDataAppendFileWithFilename"/>
  <int value="841" label="FormDataAppendBlob"/>
  <int value="842" label="FormDataAppendBlobWithFilename"/>
  <int value="843" label="FormDataAppendNull"/>
  <int value="844" label="HTMLDocumentCreateAttributeNameNotLowercase"/>
  <int value="845"
      label="NonHTMLElementSetAttributeNodeFromHTMLDocumentNameNotLowercase"/>
  <int value="846" label="DOMStringList_Item_AttributeGetter_IndexedDB"/>
  <int value="847" label="DOMStringList_Item_AttributeGetter_Location"/>
  <int value="848" label="DOMStringList_Contains_Method_IndexedDB"/>
  <int value="849" label="DOMStringList_Contains_Method_Location"/>
  <int value="850" label="NavigatorVibrate"/>
  <int value="851" label="NavigatorVibrateSubFrame"/>
  <int value="852" label="PermissionStatusStatus"/>
  <int value="853" label="V8XPathEvaluator_Constructor"/>
  <int value="854" label="V8XPathEvaluator_CreateExpression_Method"/>
  <int value="855" label="V8XPathEvaluator_CreateNSResolver_Method"/>
  <int value="856" label="V8XPathEvaluator_Evaluate_Method"/>
  <int value="857" label="RequestMIDIAccess"/>
  <int value="858" label="V8MouseEvent_LayerX_AttributeGetter"/>
  <int value="859" label="V8MouseEvent_LayerY_AttributeGetter"/>
  <int value="860" label="InnerTextWithShadowTree"/>
  <int value="861" label="SelectionToStringWithShadowTree"/>
  <int value="862" label="WindowFindWithShadowTree"/>
  <int value="863" label="V8CompositionEvent_InitCompositionEvent_Method"/>
  <int value="864" label="V8CustomEvent_InitCustomEvent_Method"/>
  <int value="865" label="V8DeviceMotionEvent_InitDeviceMotionEvent_Method"/>
  <int value="866"
      label="V8DeviceOrientationEvent_InitDeviceOrientationEvent_Method"/>
  <int value="867" label="V8Event_InitEvent_Method"/>
  <int value="868" label="V8KeyboardEvent_InitKeyboardEvent_Method"/>
  <int value="869" label="V8MouseEvent_InitMouseEvent_Method"/>
  <int value="870" label="V8MutationEvent_InitMutationEvent_Method"/>
  <int value="871" label="V8StorageEvent_InitStorageEvent_Method"/>
  <int value="872" label="V8TouchEvent_InitTouchEvent_Method"/>
  <int value="873" label="V8UIEvent_InitUIEvent_Method"/>
  <int value="874" label="V8Document_CreateTouch_Method"/>
  <int value="875" label="V8HTMLFrameElement_GetSVGDocument_Method"/>
  <int value="876" label="RequestFileSystemNonWebbyOrigin"/>
  <int value="877" label="V8Console_Memory_AttributeGetter"/>
  <int value="878" label="V8Console_Memory_AttributeSetter"/>
  <int value="879" label="V8MemoryInfo_TotalJSHeapSize_AttributeGetter"/>
  <int value="880" label="V8MemoryInfo_UsedJSHeapSize_AttributeGetter"/>
  <int value="881" label="V8MemoryInfo_JSHeapSizeLimit_AttributeGetter"/>
  <int value="882" label="V8Performance_Timing_AttributeGetter"/>
  <int value="883" label="V8Performance_Navigation_AttributeGetter"/>
  <int value="884" label="V8Performance_Memory_AttributeGetter"/>
  <int value="885" label="V8SharedWorker_WorkerStart_AttributeGetter"/>
  <int value="886" label="HTMLKeygenElement"/>
  <int value="887" label="V8SVGElement_OffsetParent_AttributeGetter"/>
  <int value="888" label="V8SVGElement_OffsetTop_AttributeGetter"/>
  <int value="889" label="V8SVGElement_OffsetLeft_AttributeGetter"/>
  <int value="890" label="V8SVGElement_OffsetWidth_AttributeGetter"/>
  <int value="891" label="V8SVGElement_OffsetHeight_AttributeGetter"/>
  <int value="892" label="HTMLMediaElementPreloadNone"/>
  <int value="893" label="HTMLMediaElementPreloadMetadata"/>
  <int value="894" label="HTMLMediaElementPreloadAuto"/>
  <int value="895" label="HTMLMediaElementPreloadDefault"/>
  <int value="896" label="MixedContentBlockableAllowed"/>
  <int value="897" label="PseudoBeforeAfterForInputElement"/>
  <int value="898" label="V8Permissions_Revoke_Method"/>
  <int value="899" label="LinkRelDnsPrefetch"/>
  <int value="900" label="LinkRelPreconnect"/>
  <int value="901" label="LinkRelPreload"/>
  <int value="902" label="LinkHeaderDnsPrefetch"/>
  <int value="903" label="LinkHeaderPreconnect"/>
  <int value="904" label="ClientHintsMetaAcceptCH"/>
  <int value="905" label="HTMLElementDeprecatedWidth"/>
  <int value="906" label="ClientHintsContentDPR"/>
  <int value="907" label="ElementAttachShadowOpen"/>
  <int value="908" label="ElementAttachShadowClosed"/>
  <int value="909" label="AudioParamSetValueAtTime"/>
  <int value="910" label="AudioParamLinearRampToValueAtTime"/>
  <int value="911" label="AudioParamExponentialRampToValueAtTime"/>
  <int value="912" label="AudioParamSetTargetAtTime"/>
  <int value="913" label="AudioParamSetValueCurveAtTime"/>
  <int value="914" label="AudioParamCancelScheduledValues"/>
  <int value="915" label="V8Permissions_Request_Method"/>
  <int value="916" label="LinkRelSubresource"/>
  <int value="917" label="LinkRelPrefetch"/>
  <int value="918" label="LinkRelPrerender"/>
  <int value="919" label="LinkRelNext"/>
  <int value="920" label="PrefixedPerformanceResourceTimingBufferFull"/>
  <int value="921" label="CSSValuePrefixedMinContent"/>
  <int value="922" label="CSSValuePrefixedMaxContent"/>
  <int value="923" label="CSSValuePrefixedFitContent"/>
  <int value="924" label="CSSValuePrefixedFillAvailable"/>
  <int value="925" label="FetchAPIRequestContext"/>
  <int value="926" label="PresentationDefaultRequest"/>
  <int value="927" label="PresentationAvailabilityChangeEventListener"/>
  <int value="928" label="PresentationRequestConstructor"/>
  <int value="929" label="PresentationRequestStart"/>
  <int value="930" label="PresentationRequestReconnect"/>
  <int value="931" label="PresentationRequestGetAvailability"/>
  <int value="932" label="PresentationRequestConnectionAvailableEventListener"/>
  <int value="933" label="PresentationConnectionTerminate"/>
  <int value="934" label="PresentationConnectionSend"/>
  <int value="935" label="PresentationConnectionStateChangeEventListener"/>
  <int value="936" label="PresentationConnectionMessageEventListener"/>
  <int value="937" label="CSSAnimationsStackedNeutralKeyframe"/>
  <int value="938" label="ReadingCheckedInClickHandler"/>
  <int value="939" label="FlexboxIntrinsicSizeAlgorithmIsDifferent"/>
  <int value="940" label="HTMLImportsHasStyleSheets"/>
  <int value="941" label="WebkitTextInClipProperty"/>
  <int value="942" label="WebkitTextInColorProperty"/>
  <int value="943" label="HeaderValueNotMatchingRFC7230"/>
  <int value="944" label="ClipPathOfPositionedElement"/>
  <int value="945" label="ClipCssOfPositionedElement"/>
  <int value="946" label="NetInfoType"/>
  <int value="947" label="NetInfoDownlinkMax"/>
  <int value="948" label="NetInfoOnChange"/>
  <int value="949" label="NetInfoOnTypeChange"/>
  <int value="950" label="V8Window_Alert_Method"/>
  <int value="951" label="V8Window_Confirm_Method"/>
  <int value="952" label="V8Window_Prompt_Method"/>
  <int value="953" label="V8Window_Print_Method"/>
  <int value="954" label="V8Window_RequestIdleCallback_Method"/>
  <int value="955" label="FlexboxPercentagePaddingVertical"/>
  <int value="956" label="FlexboxPercentageMarginVertical"/>
  <int value="957" label="BackspaceNavigatedBack"/>
  <int value="958" label="BackspaceNavigatedBackAfterFormInteraction"/>
  <int value="959" label="CSPSourceWildcardWouldMatchExactHost"/>
  <int value="960" label="CredentialManagerGet"/>
  <int value="961" label="CredentialManagerGetWithUI"/>
  <int value="962" label="CredentialManagerGetWithoutUI"/>
  <int value="963" label="CredentialManagerStore"/>
  <int value="964" label="CredentialManagerRequireUserMediation"/>
  <int value="965" label="RequestAutocomplete"/>
  <int value="966" label="BlockableMixedContentInSubframeBlocked"/>
  <int value="967" label="AddEventListenerThirdArgumentIsObject"/>
  <int value="968" label="RemoveEventListenerThirdArgumentIsObject"/>
  <int value="969" label="CSSAtRuleCharset"/>
  <int value="970" label="CSSAtRuleFontFace"/>
  <int value="971" label="CSSAtRuleImport"/>
  <int value="972" label="CSSAtRuleKeyframes"/>
  <int value="973" label="CSSAtRuleMedia"/>
  <int value="974" label="CSSAtRuleNamespace"/>
  <int value="975" label="CSSAtRulePage"/>
  <int value="976" label="CSSAtRuleSupports"/>
  <int value="977" label="CSSAtRuleViewport"/>
  <int value="978" label="CSSAtRuleWebkitKeyframes"/>
  <int value="979" label="V8HTMLFieldSetElement_Elements_AttributeGetter"/>
  <int value="980" label="HTMLMediaElementPreloadForcedNone"/>
  <int value="981" label="ExternalAddSearchProvider"/>
  <int value="982" label="ExternalIsSearchProviderInstalled"/>
  <int value="983" label="V8Permissions_RequestAll_Method"/>
  <int value="984" label="BluetoothDeviceInstanceId"/>
  <int value="985" label="HTMLLabelElementFormIDLAttribute"/>
  <int value="986" label="HTMLLabelElementFormContentAttribute"/>
  <int value="987" label="DeviceOrientationAbsoluteInsecureOrigin"/>
  <int value="988" label="DeviceOrientationAbsoluteSecureOrigin"/>
  <int value="989" label="FontFaceConstructor"/>
  <int value="990" label="ServiceWorkerControlledPage"/>
  <int value="991" label="MeterElementWithContinuousCapacityAppearance"/>
  <int value="992" label="MeterElementWithDiscreteCapacityAppearance"/>
  <int value="993" label="MeterElementWithMeterAppearance"/>
  <int value="994" label="MeterElementWithNoneAppearance"/>
  <int value="995" label="MeterElementWithRatingAppearance"/>
  <int value="996" label="MeterElementWithRelevancyAppearance"/>
  <int value="997" label="SelectionAnchorNode"/>
  <int value="998" label="SelectionAnchorOffset"/>
  <int value="999" label="SelectionFocusNode"/>
  <int value="1000" label="SelectionFocusOffset"/>
  <int value="1001" label="SelectionIsCollapsed"/>
  <int value="1002" label="SelectionRangeCount"/>
  <int value="1003" label="SelectionGetRangeAt"/>
  <int value="1004" label="SelectionAddRange"/>
  <int value="1005" label="SelectionRemoveAllRanges"/>
  <int value="1006" label="SelectionCollapse"/>
  <int value="1007" label="SelectionCollapseToStart"/>
  <int value="1008" label="SelectionCollapseToEnd"/>
  <int value="1009" label="SelectionExtend"/>
  <int value="1010" label="SelectionSelectAllChildren"/>
  <int value="1011" label="SelectionDeleteDromDocument"/>
  <int value="1012" label="SelectionDOMString"/>
  <int value="1013" label="InputTypeRangeVerticalAppearance"/>
  <int value="1014" label="CSSFilterReference"/>
  <int value="1015" label="CSSFilterGrayscale"/>
  <int value="1016" label="CSSFilterSepia"/>
  <int value="1017" label="CSSFilterSaturate"/>
  <int value="1018" label="CSSFilterHueRotate"/>
  <int value="1019" label="CSSFilterInvert"/>
  <int value="1020" label="CSSFilterOpacity"/>
  <int value="1021" label="CSSFilterBrightness"/>
  <int value="1022" label="CSSFilterContrast"/>
  <int value="1023" label="CSSFilterBlur"/>
  <int value="1024" label="CSSFilterDropShadow"/>
  <int value="1025" label="BackgroundSyncRegister"/>
  <int value="1026" label="BorderImageWithBorderStyleNone"/>
  <int value="1027" label="ExecCommandOnInputOrTextarea"/>
  <int value="1028" label="V8History_ScrollRestoration_AttributeGetter"/>
  <int value="1029" label="V8History_ScrollRestoration_AttributeSetter"/>
  <int value="1030" label="SVG1DOMFilter"/>
  <int value="1031" label="OfflineAudioContextStartRendering"/>
  <int value="1032" label="OfflineAudioContextSuspend"/>
  <int value="1033" label="OfflineAudioContextResume"/>
  <int value="1034" label="AttrCloneNode"/>
  <int value="1035" label="SVG1DOMPaintServer"/>
  <int value="1036" label="SVGSVGElementFragmentSVGView"/>
  <int value="1037" label="SVGSVGElementFragmentSVGViewElement"/>
  <int value="1038" label="PresentationConnectionClose"/>
  <int value="1039" label="SVG1DOMShape"/>
  <int value="1040" label="SVG1DOMText"/>
  <int value="1041" label="RTCPeerConnectionConstructorConstraints"/>
  <int value="1042" label="RTCPeerConnectionConstructorCompliant"/>
  <int value="1043"
      label="RTCPeerConnectionCreateOfferLegacyNoFailureCallback"/>
  <int value="1044" label="RTCPeerConnectionCreateOfferLegacyFailureCallback"/>
  <int value="1045" label="RTCPeerConnectionCreateOfferLegacyConstraints"/>
  <int value="1046" label="RTCPeerConnectionCreateOfferLegacyOfferOptions"/>
  <int value="1047" label="RTCPeerConnectionCreateOfferLegacyCompliant"/>
  <int value="1048"
      label="RTCPeerConnectionCreateAnswerLegacyNoFailureCallback"/>
  <int value="1049" label="RTCPeerConnectionCreateAnswerLegacyFailureCallback"/>
  <int value="1050" label="RTCPeerConnectionCreateAnswerLegacyConstraints"/>
  <int value="1051" label="RTCPeerConnectionCreateAnswerLegacyCompliant"/>
  <int value="1052"
      label="RTCPeerConnectionSetLocalDescriptionLegacyNoSuccessCallback"/>
  <int value="1053"
      label="RTCPeerConnectionSetLocalDescriptionLegacyNoFailureCallback"/>
  <int value="1054"
      label="RTCPeerConnectionSetLocalDescriptionLegacyCompliant"/>
  <int value="1055"
      label="RTCPeerConnectionSetRemoteDescriptionLegacyNoSuccessCallback"/>
  <int value="1056"
      label="RTCPeerConnectionSetRemoteDescriptionLegacyNoFailureCallback"/>
  <int value="1057"
      label="RTCPeerConnectionSetRemoteDescriptionLegacyCompliant"/>
  <int value="1058" label="RTCPeerConnectionGetStatsLegacyNonCompliant"/>
  <int value="1059" label="NodeFilterIsFunction"/>
  <int value="1060" label="NodeFilterIsObject"/>
  <int value="1061" label="TextEncoderUTF16"/>
  <int value="1062" label="CSSSelectorInternalPseudoListBox"/>
  <int value="1063" label="CSSSelectorInternalMediaControlsCastButton"/>
  <int value="1064" label="CSSSelectorInternalMediaControlsOverlayCastButton"/>
  <int value="1065" label="CSSSelectorInternalPseudoSpatialNavigationFocus"/>
  <int value="1066" label="SameOriginTextScript"/>
  <int value="1067" label="SameOriginApplicationScript"/>
  <int value="1068" label="SameOriginOtherScript"/>
  <int value="1069" label="CrossOriginTextScript"/>
  <int value="1070" label="CrossOriginApplicationScript"/>
  <int value="1071" label="CrossOriginOtherScript"/>
  <int value="1072" label="SVG1DOMSVGTests"/>
  <int value="1073" label="V8SVGViewElement_ViewTarget_AttributeGetter"/>
  <int value="1074" label="DisableRemotePlaybackAttribute"/>
  <int value="1075" label="V8SloppyMode"/>
  <int value="1076" label="V8StrictMode"/>
  <int value="1077" label="V8StrongMode"/>
  <int value="1078" label="AudioNodeConnectToAudioNode"/>
  <int value="1079" label="AudioNodeConnectToAudioParam"/>
  <int value="1080" label="AudioNodeDisconnectFromAudioNode"/>
  <int value="1081" label="AudioNodeDisconnectFromAudioParam"/>
  <int value="1082" label="V8CSSFontFaceRule_Style_AttributeGetter"/>
  <int value="1083" label="SelectionCollapseNull"/>
  <int value="1084" label="SelectionSetBaseAndExtentNull"/>
  <int value="1085" label="V8SVGSVGElement_CreateSVGNumber_Method"/>
  <int value="1086" label="V8SVGSVGElement_CreateSVGLength_Method"/>
  <int value="1087" label="V8SVGSVGElement_CreateSVGAngle_Method"/>
  <int value="1088" label="V8SVGSVGElement_CreateSVGPoint_Method"/>
  <int value="1089" label="V8SVGSVGElement_CreateSVGMatrix_Method"/>
  <int value="1090" label="V8SVGSVGElement_CreateSVGRect_Method"/>
  <int value="1091" label="V8SVGSVGElement_CreateSVGTransform_Method"/>
  <int value="1092"
      label="V8SVGSVGElement_CreateSVGTransformFromMatrix_Method"/>
  <int value="1093" label="FormNameAccessForNonDescendantImageElement"/>
  <int value="1094" label="FormControlsCollectionNameAccessForImageElement"/>
  <int value="1095" label="V8SVGSVGElement_Viewport_AttributeGetter"/>
  <int value="1096" label="V8RegExpPrototypeStickyGetter"/>
  <int value="1097" label="V8RegExpPrototypeToString"/>
  <int value="1098"
      label="V8InputDeviceCapabilities_FiresTouchEvents_AttributeGetter"/>
  <int value="1099" label="DataElement"/>
  <int value="1100" label="TimeElement"/>
  <int value="1101" label="SVG1DOMUriReference"/>
  <int value="1102" label="SVG1DOMZoomAndPan"/>
  <int value="1103" label="V8SVGGraphicsElement_Transform_AttributeGetter"/>
  <int value="1104" label="MenuItemElement"/>
  <int value="1105" label="MenuItemCloseTag"/>
  <int value="1106" label="SVG1DOMMarkerElement"/>
  <int value="1107" label="SVG1DOMUseElement"/>
  <int value="1108" label="SVG1DOMMaskElement"/>
  <int value="1109" label="V8SVGAElement_Target_AttributeGetter"/>
  <int value="1110" label="V8SVGClipPathElement_ClipPathUnits_AttributeGetter"/>
  <int value="1111" label="SVG1DOMFitToViewBox"/>
  <int value="1112" label="SVG1DOMCursorElement"/>
  <int value="1113" label="V8SVGPathElement_PathLength_AttributeGetter"/>
  <int value="1114" label="SVG1DOMSVGElement"/>
  <int value="1115" label="SVG1DOMImageElement"/>
  <int value="1116" label="SVG1DOMForeignObjectElement"/>
  <int value="1117" label="AudioContextCreateIIRFilter"/>
  <int value="1118" label="CSSSelectorPseudoSlotted"/>
  <int value="1119" label="MediaDevicesEnumerateDevices"/>
  <int value="1120" label="NonSecureSharedWorkerAccessedFromSecureContext"/>
  <int value="1121" label="SecureSharedWorkerAccessedFromNonSecureContext"/>
  <int value="1122" label="NonCSSStyleSheetType"/>
  <int value="1123" label="EventDeepPath"/>
  <int value="1124" label="LinkHeaderPreload"/>
  <int value="1125" label="MouseWheelEvent"/>
  <int value="1126" label="WheelEvent"/>
  <int value="1127" label="MouseWheelAndWheelEvent"/>
  <int value="1128" label="BodyScrollsInAdditionToViewport"/>
  <int value="1129" label="DocumentDesignModeEnabeld"/>
  <int value="1130" label="ContentEditableTrue"/>
  <int value="1131" label="ContentEditableTrueOnHTML"/>
  <int value="1132" label="ContentEditablePlainTextOnly"/>
  <int value="1133" label="V8RegExpPrototypeUnicodeGetter"/>
  <int value="1134" label="V8IntlV8Parse"/>
  <int value="1135" label="V8IntlPattern"/>
  <int value="1136" label="V8IntlResolved"/>
  <int value="1137" label="V8PromiseChain"/>
  <int value="1138" label="V8PromiseAccept"/>
  <int value="1139" label="V8PromiseDefer"/>
  <int value="1140" label="EventScoped"/>
  <int value="1141" label="GeolocationInsecureOriginIframe"/>
  <int value="1142" label="GeolocationSecureOriginIframe"/>
  <int value="1143" label="RequestMIDIAccessIframe"/>
  <int value="1144" label="GetUserMediaInsecureOriginIframe"/>
  <int value="1145" label="GetUserMediaSecureOriginIframe"/>
  <int value="1146" label="ElementRequestPointerLockIframe"/>
  <int value="1147" label="NotificationAPIInsecureOriginIframe"/>
  <int value="1148" label="NotificationAPISecureOriginIframe"/>
  <int value="1149" label="WebSocket"/>
  <int value="1150" label="MediaStreamConstraintsNameValue"/>
  <int value="1151" label="MediaStreamConstraintsFromDictionary"/>
  <int value="1152" label="MediaStreamConstraintsConformant"/>
  <int value="1153" label="CSSSelectorIndirectAdjacent"/>
  <int value="1154" label="NodeRootNode"/>
  <int value="1155" label="BluetoothDeviceConnectGATT"/>
  <int value="1156" label="CreateImageBitmap"/>
  <int value="1157" label="PresentationConnectionConnectEventListener"/>
  <int value="1158" label="PresentationConnectionCloseEventListener"/>
  <int value="1159" label="PresentationConnectionTerminateEventListener"/>
  <int value="1160" label="DocumentCreateEventFontFaceSetLoadEvent"/>
  <int value="1161" label="DocumentCreateEventMediaQueryListEvent"/>
  <int value="1162" label="DocumentCreateEventAnimationEvent"/>
  <int value="1163" label="DocumentCreateEventAnimationPlayerEvent"/>
  <int value="1164" label="DocumentCreateEventApplicationCacheErrorEvent"/>
  <int value="1165" label="DocumentCreateEventAutocompleteErrorEvent"/>
  <int value="1166" label="DocumentCreateEventBeforeUnloadEvent"/>
  <int value="1167" label="DocumentCreateEventClipboardEvent"/>
  <int value="1168" label="DocumentCreateEventCompositionEvent"/>
  <int value="1169" label="DocumentCreateEventDragEvent"/>
  <int value="1170" label="DocumentCreateEventErrorEvent"/>
  <int value="1171" label="DocumentCreateEventFocusEvent"/>
  <int value="1172" label="DocumentCreateEventHashChangeEvent"/>
  <int value="1173" label="DocumentCreateEventMutationEvent"/>
  <int value="1174" label="DocumentCreateEventPageTransitionEvent"/>
  <int value="1175" label="DocumentCreateEventPointerEvent"/>
  <int value="1176" label="DocumentCreateEventPopStateEvent"/>
  <int value="1177" label="DocumentCreateEventProgressEvent"/>
  <int value="1178" label="DocumentCreateEventPromiseRejectionEvent"/>
  <int value="1179" label="DocumentCreateEventRelatedEvent"/>
  <int value="1180" label="DocumentCreateEventResourceProgressEvent"/>
  <int value="1181" label="DocumentCreateEventSecurityPolicyViolationEvent"/>
  <int value="1182" label="DocumentCreateEventTextEvent"/>
  <int value="1183" label="DocumentCreateEventTransitionEvent"/>
  <int value="1184" label="DocumentCreateEventWheelEvent"/>
  <int value="1185" label="DocumentCreateEventMediaKeyEvent"/>
  <int value="1186" label="DocumentCreateEventTrackEvent"/>
  <int value="1187" label="DocumentCreateEventWebKitAnimationEvent"/>
  <int value="1188" label="DocumentCreateEventMutationEvents"/>
  <int value="1189" label="DocumentCreateEventOrientationEvent"/>
  <int value="1190" label="DocumentCreateEventSVGEvents"/>
  <int value="1191" label="DocumentCreateEventWebKitTransitionEvent"/>
  <int value="1192" label="DocumentCreateEventBeforeInstallPromptEvent"/>
  <int value="1193" label="DocumentCreateEventSyncEvent"/>
  <int value="1194" label="DocumentCreateEventDeviceLightEvent"/>
  <int value="1195" label="DocumentCreateEventDeviceMotionEvent"/>
  <int value="1196" label="DocumentCreateEventDeviceOrientationEvent"/>
  <int value="1197" label="DocumentCreateEventMediaEncryptedEvent"/>
  <int value="1198" label="DocumentCreateEventMediaKeyMessageEvent"/>
  <int value="1199" label="DocumentCreateEventGamepadEvent"/>
  <int value="1200" label="DocumentCreateEventGeofencingEvent"/>
  <int value="1201" label="DocumentCreateEventIDBVersionChangeEvent"/>
  <int value="1202" label="DocumentCreateEventBlobEvent"/>
  <int value="1203" label="DocumentCreateEventMediaStreamEvent"/>
  <int value="1204" label="DocumentCreateEventMediaStreamTrackEvent"/>
  <int value="1205" label="DocumentCreateEventRTCDTMFToneChangeEvent"/>
  <int value="1206" label="DocumentCreateEventRTCDataChannelEvent"/>
  <int value="1207" label="DocumentCreateEventRTCIceCandidateEvent"/>
  <int value="1208" label="DocumentCreateEventServicePortConnectEvent"/>
  <int value="1209" label="DocumentCreateEventNotificationEvent"/>
  <int value="1210"
      label="DocumentCreateEventPresentationConnectionAvailableEvent"/>
  <int value="1211"
      label="DocumentCreateEventPresentationConnectionCloseEvent"/>
  <int value="1212" label="DocumentCreateEventPushEvent"/>
  <int value="1213" label="DocumentCreateEventExtendableEvent"/>
  <int value="1214" label="DocumentCreateEventExtendableMessageEvent"/>
  <int value="1215" label="DocumentCreateEventFetchEvent"/>
  <int value="1216" label="DocumentCreateEventInstallEvent"/>
  <int value="1217" label="DocumentCreateEventServiceWorkerMessageEvent"/>
  <int value="1218" label="DocumentCreateEventSpeechRecognitionError"/>
  <int value="1219" label="DocumentCreateEventSpeechRecognitionEvent"/>
  <int value="1220" label="DocumentCreateEventSpeechSynthesisEvent"/>
  <int value="1221" label="DocumentCreateEventStorageEvent"/>
  <int value="1222" label="DocumentCreateEventAudioProcessingEvent"/>
  <int value="1223" label="DocumentCreateEventOfflineAudioCompletionEvent"/>
  <int value="1224" label="DocumentCreateEventWebGLContextEvent"/>
  <int value="1225" label="DocumentCreateEventMIDIConnectionEvent"/>
  <int value="1226" label="DocumentCreateEventMIDIMessageEvent"/>
  <int value="1227" label="DocumentCreateEventCloseEvent"/>
  <int value="1228" label="DocumentCreateEventKeyboardEvents"/>
  <int value="1229" label="HTMLMediaElement"/>
  <int value="1230" label="HTMLMediaElementInDocument"/>
  <int value="1231" label="HTMLMediaElementControlsAttribute"/>
  <int value="1232" label="SVGZoomEvent"/>
  <int value="1233" label="V8Animation_Oncancel_AttributeGetter"/>
  <int value="1234" label="V8Animation_Oncancel_AttributeSetter"/>
  <int value="1235" label="V8HTMLCommentInExternalScript"/>
  <int value="1236" label="V8HTMLComment"/>
  <int value="1237" label="V8SloppyModeBlockScopedFunctionRedefinition"/>
  <int value="1238" label="V8ForInInitializer"/>
  <int value="1239" label="V8Animation_Id_AttributeGetter"/>
  <int value="1240" label="V8Animation_Id_AttributeSetter"/>
  <int value="1241" label="MediaStreamOnEnded"/>
  <int value="1242" label="DocumentCreateEventInputEvent"/>
  <int value="1243" label="WebAnimationHyphenatedProperty"/>
  <int value="1244"
      label="FormControlsCollectionReturnsRadioNodeListForFieldSet"/>
  <int value="1245" label="ApplicationCacheManifestSelectInsecureOrigin"/>
  <int value="1246" label="ApplicationCacheManifestSelectSecureOrigin"/>
  <int value="1247" label="ApplicationCacheAPIInsecureOrigin"/>
  <int value="1248" label="ApplicationCacheAPISecureOrigin"/>
  <int value="1249" label="CSSAtRuleApply"/>
  <int value="1250" label="CSSSelectorPseudoAny"/>
  <int value="1251" label="PannerNodeSetVelocity"/>
  <int value="1252" label="DocumentAllItemNoArguments"/>
  <int value="1253" label="DocumentAllItemNamed"/>
  <int value="1254" label="DocumentAllItemIndexed"/>
  <int value="1255" label="DocumentAllItemIndexedWithNonNumber"/>
  <int value="1256" label="DocumentAllLegacyCallNoArguments"/>
  <int value="1257" label="DocumentAllLegacyCallNamed"/>
  <int value="1258" label="DocumentAllLegacyCallIndexed"/>
  <int value="1259" label="DocumentAllLegacyCallIndexedWithNonNumber"/>
  <int value="1260" label="DocumentAllLegacyCallTwoArguments"/>
  <int value="1261" label="HTMLLabelElementFormIsDifferentFromControlForm"/>
  <int value="1262" label="HTMLLabelElementHasNoControlAndFormIsAncestor"/>
  <int value="1263" label="HTMLLabelElementControlForNonFormAssociatedElement"/>
  <int value="1264" label="PatternAttributeUnicodeFlagIsIncompatible"/>
  <int value="1265" label="HTMLMediaElementLoadNetworkEmptyNotPaused"/>
  <int value="1266" label="EventRelatedTargetScoped"/>
  <int value="1267" label="V8Window_WebkitSpeechGrammar_ConstructorGetter"/>
  <int value="1268" label="V8Window_WebkitSpeechGrammarList_ConstructorGetter"/>
  <int value="1269" label="V8Window_WebkitSpeechRecognition_ConstructorGetter"/>
  <int value="1270"
      label="V8Window_WebkitSpeechRecognitionError_ConstructorGetter"/>
  <int value="1271"
      label="V8Window_WebkitSpeechRecognitionEvent_ConstructorGetter"/>
  <int value="1272" label="V8Window_SpeechSynthesis_AttributeGetter"/>
  <int value="1273" label="V8IDBFactory_WebkitGetDatabaseNames_Method"/>
  <int value="1274" label="ImageDocument"/>
  <int value="1275" label="ScriptPassesCSPDynamic"/>
  <int value="1276" label="ScriptPassesCSPNonce"/>
  <int value="1277" label="CSPWithUnsafeDynamic"/>
  <int value="1278" label="ScrollAnchored"/>
  <int value="1279" label="AddEventListenerFourArguments"/>
  <int value="1280" label="RemoveEventListenerFourArguments"/>
  <int value="1281" label="InvalidReportUriDirectiveInMetaCSP"/>
  <int value="1282" label="InvalidSandboxDirectiveInMetaCSP"/>
  <int value="1283" label="InvalidFrameAncestorsDirectiveInMetaCSP"/>
  <int value="1284" label="TouchDragUserGestureUsed"/>
  <int value="1285" label="TouchDragUserGestureUsedCrossOrigin"/>
  <int value="1286" label="DocumentCreateEventForeignFetchEvent"/>
  <int value="1287" label="SVGCalcModeDiscrete"/>
  <int value="1288" label="SVGCalcModeLinear"/>
  <int value="1289" label="SVGCalcModePaced"/>
  <int value="1290" label="SVGCalcModeSpline"/>
  <int value="1291" label="FormSubmissionStarted"/>
  <int value="1292" label="FormValidationStarted"/>
  <int value="1293" label="FormValidationAbortedSubmission"/>
  <int value="1294" label="FormValidationShowedMessage"/>
  <int value="1295" label="WebAnimationsEasingAsFunctionLinear"/>
  <int value="1296" label="WebAnimationsEasingAsFunctionOther"/>
  <int value="1297" label="V8Document_Images_AttributeGetter"/>
  <int value="1298" label="V8Document_Embeds_AttributeGetter"/>
  <int value="1299" label="V8Document_Plugins_AttributeGetter"/>
  <int value="1300" label="V8Document_Links_AttributeGetter"/>
  <int value="1301" label="V8Document_Forms_AttributeGetter"/>
  <int value="1302" label="V8Document_Scripts_AttributeGetter"/>
  <int value="1303" label="V8Document_Anchors_AttributeGetter"/>
  <int value="1304" label="V8Document_Applets_AttributeGetter"/>
  <int value="1305" label="XMLHttpRequestCrossOriginWithCredentials"/>
  <int value="1306" label="MediaStreamTrackRemote"/>
  <int value="1307" label="V8Node_IsConnected_AttributeGetter"/>
  <int value="1308" label="ShadowRootDelegatesFocus"/>
  <int value="1309" label="MixedShadowRootV0AndV1"/>
  <int value="1310" label="ImageDocumentInFrame"/>
  <int value="1311" label="MediaDocument"/>
  <int value="1312" label="MediaDocumentInFrame"/>
  <int value="1313" label="PluginDocument"/>
  <int value="1314" label="PluginDocumentInFrame"/>
  <int value="1315" label="SinkDocument"/>
  <int value="1316" label="SinkDocumentInFrame"/>
  <int value="1317" label="TextDocument"/>
  <int value="1318" label="TextDocumentInFrame"/>
  <int value="1319" label="ViewSourceDocument"/>
  <int value="1320" label="FileAPINativeLineEndings"/>
  <int value="1321" label="PointerEventAttributeCount"/>
  <int value="1322" label="CompositedReplication"/>
  <int value="1323" label="EncryptedMediaAllSelectedContentTypesHaveCodecs"/>
  <int value="1324" label="EncryptedMediaAllSelectedContentTypesMissingCodecs"/>
  <int value="1325" label="V8DataTransferItem_WebkitGetAsEntry_Method"/>
  <int value="1326" label="V8HTMLInputElement_WebkitEntries_AttributeGetter"/>
  <int value="1327"
      label="Entry_Filesystem_AttributeGetter_IsolatedFileSystem"/>
  <int value="1328" label="Entry_GetMetadata_Method_IsolatedFileSystem"/>
  <int value="1329" label="Entry_MoveTo_Method_IsolatedFileSystem"/>
  <int value="1330" label="Entry_CopyTo_Method_IsolatedFileSystem"/>
  <int value="1331" label="Entry_Remove_Method_IsolatedFileSystem"/>
  <int value="1332" label="Entry_GetParent_Method_IsolatedFileSystem"/>
  <int value="1333" label="Entry_ToURL_Method_IsolatedFileSystem"/>
  <int value="1334" label="During_Microtask_Alert"/>
  <int value="1335" label="During_Microtask_Confirm"/>
  <int value="1336" label="During_Microtask_Print"/>
  <int value="1337" label="During_Microtask_Prompt"/>
  <int value="1338" label="During_Microtask_SyncXHR"/>
  <int value="1339" label="URLMethodCreateObjectURLServiceWorker"/>
  <int value="1340" label="URLMethodRevokeObjectURLServiceWorker"/>
  <int value="1341" label="DocumentCreateEventPaymentRequestUpdateEvent"/>
  <int value="1342" label="CredentialManagerGetReturnedCredential"/>
  <int value="1343" label="GeolocationInsecureOriginDeprecatedNotRemoved"/>
  <int value="1344"
      label="GeolocationInsecureOriginIframeDeprecatedNotRemoved"/>
  <int value="1345" label="ProgressElementWithNoneAppearance"/>
  <int value="1346" label="ProgressElementWithProgressBarAppearance"/>
  <int value="1347" label="PointerEventAddListenerCount"/>
  <int value="1348" label="EventCancelBubbleAffected"/>
  <int value="1349" label="EventCancelBubbleWasChangedToTrue"/>
  <int value="1350" label="EventCancelBubbleWasChangedToFalse"/>
  <int value="1351" label="CSSValueAppearanceNone"/>
  <int value="1352" label="CSSValueAppearanceNotNone"/>
  <int value="1353" label="CSSValueAppearanceOthers"/>
  <int value="1354" label="CSSValueAppearanceButton"/>
  <int value="1355" label="CSSValueAppearanceCaret"/>
  <int value="1356" label="CSSValueAppearanceCheckbox"/>
  <int value="1357" label="CSSValueAppearanceMenulist"/>
  <int value="1358" label="CSSValueAppearanceMenulistButton"/>
  <int value="1359" label="CSSValueAppearanceListbox"/>
  <int value="1360" label="CSSValueAppearanceRadio"/>
  <int value="1361" label="CSSValueAppearanceSearchField"/>
  <int value="1362" label="CSSValueAppearanceTextField"/>
  <int value="1363" label="AudioContextCreatePannerAutomated"/>
  <int value="1364" label="PannerNodeSetPosition"/>
  <int value="1365" label="PannerNodeSetOrientation"/>
  <int value="1366" label="AudioListenerSetPosition"/>
  <int value="1367" label="AudioListenerSetOrientation"/>
  <int value="1368" label="IntersectionObserver_Constructor"/>
  <int value="1369" label="DurableStoragePersist"/>
  <int value="1370" label="DurableStoragePersisted"/>
  <int value="1371" label="DurableStorageEstimate"/>
  <int value="1372" label="UntrustedEventDefaultHandled"/>
  <int value="1373" label="FixedRasterScaleBlurryContent"/>
  <int value="1374" label="FixedRasterScalePotentialPerformanceRegression"/>
  <int value="1375" label="CSSDeepCombinatorAndShadow"/>
</enum>

<enum name="FetchRequestMode" type="int">
  <int value="0" label="SameOrigin"/>
  <int value="1" label="NoCORS"/>
  <int value="2" label="CORS"/>
  <int value="3" label="CORSWithForcedPreflight"/>
  <int value="4" label="Navigate"/>
</enum>

<enum name="FFmpegCodecHashes" type="int">
  <int value="-2140893972" label="bfi"/>
  <int value="-2126016986" label="vp3"/>
  <int value="-2112225664" label="pcm_s32be"/>
  <int value="-2100141199" label="loco"/>
  <int value="-2095396703" label="v408"/>
  <int value="-2093680186" label="amv"/>
  <int value="-2089660750" label="h263"/>
  <int value="-2087604036" label="adpcm_ima_smjpeg"/>
  <int value="-2077566827" label="musepack8"/>
  <int value="-2057234831" label="8svx_exp"/>
  <int value="-2039593792" label="targa"/>
  <int value="-2026984418" label="dirac"/>
  <int value="-2024394607" label="adpcm_ima_ws"/>
  <int value="-2022450851" label="sunrast"/>
  <int value="-2013419814" label="dsd_lsbf_planar"/>
  <int value="-2002502337" label="tiff"/>
  <int value="-1978772551" label="dvaudio"/>
  <int value="-1956356936" label="wmavoice"/>
  <int value="-1936051434" label="h261"/>
  <int value="-1935659465" label="text"/>
  <int value="-1929182263" label="rl2"/>
  <int value="-1920776714" label="a64_multi5"/>
  <int value="-1920272933" label="mlp"/>
  <int value="-1913457333" label="smackvideo"/>
  <int value="-1910182388" label="dds"/>
  <int value="-1877492821" label="ws_vqa"/>
  <int value="-1868061100" label="avrp"/>
  <int value="-1866047250" label="brender_pix_deprecated"/>
  <int value="-1861192281" label="c93"/>
  <int value="-1859416370" label="mts2"/>
  <int value="-1855199147" label="adpcm_yamaha"/>
  <int value="-1854941320" label="tgq"/>
  <int value="-1848915146" label="adpcm_ima_iss"/>
  <int value="-1847740489" label="flac"/>
  <int value="-1847405305" label="qdmc"/>
  <int value="-1837462345" label="bmv_video"/>
  <int value="-1787878546" label="adpcm_afc"/>
  <int value="-1782518388" label="adpcm_vima_deprecated"/>
  <int value="-1769822834" label="vmdaudio"/>
  <int value="-1754427880" label="frwu"/>
  <int value="-1746405263" label="none"/>
  <int value="-1746190470" label="adpcm_ima_amv"/>
  <int value="-1742178896" label="cinepak"/>
  <int value="-1722959117" label="cook"/>
  <int value="-1694324852" label="adpcm_ima_rad"/>
  <int value="-1653946850" label="mp3on4"/>
  <int value="-1638592334" label="msmpeg4v3"/>
  <int value="-1625425962" label="dpx"/>
  <int value="-1620040130" label="vp6"/>
  <int value="-1596796424" label="pcm_f32le"/>
  <int value="-1580836816" label="cdxl"/>
  <int value="-1578877775" label="twinvq"/>
  <int value="-1570048110" label="mace3"/>
  <int value="-1558356361" label="paf_audio"/>
  <int value="-1546633359" label="dss_sp"/>
  <int value="-1538621442" label="tak"/>
  <int value="-1535770868" label="mov_text"/>
  <int value="-1532420090" label="dvb_teletext"/>
  <int value="-1518326441" label="cpia"/>
  <int value="-1516599706" label="stl"/>
  <int value="-1510953689" label="ulti"/>
  <int value="-1495077719" label="wavesynth"/>
  <int value="-1493473944" label="mp1"/>
  <int value="-1488471023" label="aac_latm"/>
  <int value="-1471896197" label="adpcm_4xm"/>
  <int value="-1458812472" label="vble"/>
  <int value="-1452408746" label="bin_data"/>
  <int value="-1437754593" label="tqi"/>
  <int value="-1398094744" label="brender_pix"/>
  <int value="-1396201900" label="lagarith"/>
  <int value="-1394735166" label="s302m"/>
  <int value="-1366158780" label="mvc2"/>
  <int value="-1346295474" label="dfa"/>
  <int value="-1335819014" label="adpcm_ea_r3"/>
  <int value="-1333697928" label="rv10"/>
  <int value="-1328796639" label="pcm_s32le_planar_deprecated"/>
  <int value="-1326344691" label="wmalossless"/>
  <int value="-1276285619" label="subviewer1"/>
  <int value="-1267322736" label="evrc"/>
  <int value="-1253653962" label="cljr"/>
  <int value="-1249151864" label="westwood_snd1"/>
  <int value="-1234201101" label="xan_dpcm"/>
  <int value="-1228141376" label="aic"/>
  <int value="-1217250068" label="pcm_u24le"/>
  <int value="-1216801956" label="kmvc"/>
  <int value="-1216327014" label="ansi"/>
  <int value="-1212214965" label="svq3"/>
  <int value="-1205406239" label="mpeg4"/>
  <int value="-1192008277" label="flashsv"/>
  <int value="-1181422407" label="gif"/>
  <int value="-1156009526" label="wmv1"/>
  <int value="-1153001952" label="eia_608"/>
  <int value="-1150003992" label="nellymoser"/>
  <int value="-1147304270" label="pgm"/>
  <int value="-1146321910" label="adpcm_sbpro_4"/>
  <int value="-1124358604" label="qdraw"/>
  <int value="-1094512964" label="hevc"/>
  <int value="-1082894560" label="y41p"/>
  <int value="-1069291012" label="roq"/>
  <int value="-1055791926" label="wmv2"/>
  <int value="-1052495685" label="adpcm_ea_xas"/>
  <int value="-1050536726" label="fic"/>
  <int value="-1050267191" label="theora"/>
  <int value="-1047975380" label="aura"/>
  <int value="-1038298513" label="iac"/>
  <int value="-1033247386" label="pcm_u24be"/>
  <int value="-1030131048" label="ra_288"/>
  <int value="-1011667768" label="sgirle"/>
  <int value="-1010059925" label="cdgraphics"/>
  <int value="-993429906" label="webp_deprecated"/>
  <int value="-991743010" label="pictor"/>
  <int value="-986254855" label="qtrle"/>
  <int value="-984524901" label="wmapro"/>
  <int value="-982785322" label="roq_dpcm"/>
  <int value="-967736249" label="idf"/>
  <int value="-963536204" label="tmv"/>
  <int value="-961342190" label="truespeech"/>
  <int value="-955936385" label="qdm2"/>
  <int value="-937993216" label="cyuv"/>
  <int value="-908137771" label="mss2"/>
  <int value="-898663359" label="paf_video"/>
  <int value="-891450332" label="qcelp"/>
  <int value="-881893142" label="paf_video_deprecated"/>
  <int value="-878761755" label="alac"/>
  <int value="-872951009" label="vp7"/>
  <int value="-870965910" label="mszh"/>
  <int value="-868148645" label="ttf"/>
  <int value="-853586131" label="eac3"/>
  <int value="-839127813" label="adpcm_adx"/>
  <int value="-820705472" label="timed_id3"/>
  <int value="-816209197" label="vima"/>
  <int value="-815578090" label="ssa"/>
  <int value="-804708185" label="vb"/>
  <int value="-799004205" label="thp"/>
  <int value="-792737437" label="mjpeg"/>
  <int value="-781332453" label="xbm"/>
  <int value="-780629337" label="adpcm_ima_oki"/>
  <int value="-777478450" label="iff_byterun1"/>
  <int value="-776406198" label="hdmv_pgs_subtitle"/>
  <int value="-773314651" label="adpcm_thp_le"/>
  <int value="-755809410" label="xface"/>
  <int value="-750906124" label="sonic"/>
  <int value="-746782512" label="nuv"/>
  <int value="-728484627" label="vp6f"/>
  <int value="-711076000" label="ilbc"/>
  <int value="-693682032" label="png"/>
  <int value="-665301881" label="kgv1"/>
  <int value="-651841063" label="musepack7"/>
  <int value="-644671397" label="pcm_s16le"/>
  <int value="-644168765" label="dvvideo"/>
  <int value="-630356729" label="paf_audio_deprecated"/>
  <int value="-624149477" label="mad"/>
  <int value="-606142900" label="microdvd"/>
  <int value="-605150423" label="jacosub"/>
  <int value="-600721750" label="pcm_s16le_planar"/>
  <int value="-597857853" label="fraps"/>
  <int value="-594775425" label="tdsc"/>
  <int value="-583421433" label="pcm_zork"/>
  <int value="-573567800" label="ffvhuff"/>
  <int value="-558754697" label="dxtory"/>
  <int value="-547412719" label="a64_multi"/>
  <int value="-530757209" label="iff_ilbm"/>
  <int value="-522844891" label="tta"/>
  <int value="-515467965" label="yop"/>
  <int value="-483644003" label="mvc1"/>
  <int value="-478544739" label="mxpeg"/>
  <int value="-469833042" label="sgi"/>
  <int value="-462654404" label="pbm"/>
  <int value="-450113811" label="vp8"/>
  <int value="-449164482" label="smv"/>
  <int value="-434097103" label="8svx_fib"/>
  <int value="-431043877" label="rv30"/>
  <int value="-418117523" label="exr_deprecated"/>
  <int value="-414733739" label="hevc_deprecated"/>
  <int value="-411871512" label="4xm"/>
  <int value="-351638235" label="mace6"/>
  <int value="-335532805" label="v308"/>
  <int value="-321063470" label="cavs"/>
  <int value="-312812574" label="dsicinaudio"/>
  <int value="-305868762" label="ptx"/>
  <int value="-302658824" label="dxa"/>
  <int value="-302292845" label="atrac1"/>
  <int value="-268375107" label="indeo2"/>
  <int value="-262604522" label="qpeg"/>
  <int value="-259187129" label="interplay_dpcm"/>
  <int value="-235472313" label="pjs"/>
  <int value="-197551526" label="vp7_deprecated"/>
  <int value="-195649673" label="mmvideo"/>
  <int value="-194494447" label="sanm"/>
  <int value="-179123055" label="hnm4video"/>
  <int value="-166593824" label="bintext"/>
  <int value="-153142813" label="adpcm_ima_qt"/>
  <int value="-135875472" label="pcm_s24le_planar"/>
  <int value="-108909529" label="adpcm_ea"/>
  <int value="-96441857" label="escape124"/>
  <int value="-92926716" label="indeo3"/>
  <int value="-92742166" label="adpcm_swf"/>
  <int value="-85419673" label="dvb_subtitle"/>
  <int value="-83742388" label="metasound"/>
  <int value="-81607027" label="speex"/>
  <int value="-65839877" label="amr_nb"/>
  <int value="-50131597" label="avui"/>
  <int value="-41854216" label="msrle"/>
  <int value="-35300163" label="pam"/>
  <int value="-30500564" label="rv20"/>
  <int value="-27780731" label="h263i"/>
  <int value="-23682808" label="mjpegb"/>
  <int value="-21755362" label="adpcm_sbpro_3"/>
  <int value="-19624220" label="msmpeg4v1"/>
  <int value="123753" label="bethsoftvid"/>
  <int value="5678717" label="adpcm_vima"/>
  <int value="6153938" label="ffv1"/>
  <int value="60024993" label="sol_dpcm"/>
  <int value="73149662" label="escape130_deprecated"/>
  <int value="76029796" label="mss1"/>
  <int value="86453097" label="utvideo"/>
  <int value="87186225" label="vmdvideo"/>
  <int value="95607943" label="alias_pix"/>
  <int value="98199414" label="wmv3image"/>
  <int value="113741725" label="shorten"/>
  <int value="132664538" label="gsm_ms"/>
  <int value="136569655" label="adpcm_ima_ea_eacs"/>
  <int value="146059120" label="adpcm_ima_dk3"/>
  <int value="173919536" label="dsd_msbf_planar"/>
  <int value="174382442" label="g729"/>
  <int value="180797897" label="xsub"/>
  <int value="197903705" label="yuv4"/>
  <int value="197942357" label="mdec"/>
  <int value="212901544" label="pcm_f64le"/>
  <int value="227190580" label="adpcm_ea_r1"/>
  <int value="231296785" label="jpegls"/>
  <int value="242042871" label="vc1image"/>
  <int value="250226160" label="pcm_s8"/>
  <int value="254320798" label="pcm_dvd"/>
  <int value="265862349" label="binkaudio_rdft"/>
  <int value="278236230" label="webp"/>
  <int value="284053917" label="sp5x"/>
  <int value="287849834" label="msvideo1"/>
  <int value="294769071" label="pcm_s16be_planar"/>
  <int value="309105352" label="bmp"/>
  <int value="309392554" label="dsd_msbf"/>
  <int value="311400023" label="zlib"/>
  <int value="317095520" label="adpcm_ima_apc"/>
  <int value="342736256" label="avrn"/>
  <int value="343186566" label="rpza"/>
  <int value="347789448" label="vplayer"/>
  <int value="396111544" label="otf"/>
  <int value="412600562" label="pcm_u16be"/>
  <int value="429618670" label="jv"/>
  <int value="441761537" label="indeo4"/>
  <int value="445373194" label="tiertexseqvideo"/>
  <int value="453915988" label="adpcm_ima_ea_sead"/>
  <int value="461173543" label="smackaudio"/>
  <int value="463008496" label="dvd_subtitle"/>
  <int value="465125740" label="realtext"/>
  <int value="486681814" label="8bps"/>
  <int value="489448448" label="vc1"/>
  <int value="491790310" label="vcr1"/>
  <int value="500576677" label="hap"/>
  <int value="503945275" label="motionpixels"/>
  <int value="525499602" label="vmnc"/>
  <int value="552661632" label="adpcm_xa"/>
  <int value="558339021" label="jpeg2000"/>
  <int value="563328753" label="4gv"/>
  <int value="565711017" label="pcm_s24le"/>
  <int value="567624278" label="asv2"/>
  <int value="573633387" label="pcm_f64be"/>
  <int value="579930439" label="cmv"/>
  <int value="580364763" label="txd"/>
  <int value="588676310" label="pcm_s8_planar"/>
  <int value="603287142" label="mpl2"/>
  <int value="610300309" label="v210x"/>
  <int value="634747673" label="avs"/>
  <int value="640012049" label="adpcm_ms"/>
  <int value="648238710" label="xan_wc3"/>
  <int value="695230495" label="aura2"/>
  <int value="722738593" label="escape130"/>
  <int value="724570383" label="rawvideo"/>
  <int value="726397522" label="wmv3"/>
  <int value="746742638" label="truehd"/>
  <int value="747771882" label="dts"/>
  <int value="753949422" label="indeo5"/>
  <int value="781916095" label="ayuv"/>
  <int value="789960893" label="bmv_audio"/>
  <int value="802192292" label="adpcm_ima_dk4"/>
  <int value="814609554" label="ralf"/>
  <int value="816220395" label="apng"/>
  <int value="820788836" label="subviewer"/>
  <int value="855521935" label="smvjpeg"/>
  <int value="856849194" label="tgv"/>
  <int value="865955000" label="smc"/>
  <int value="903853106" label="012v"/>
  <int value="913577987" label="wmav2"/>
  <int value="944040689" label="ppm"/>
  <int value="944980366" label="idcin"/>
  <int value="946455966" label="aasc"/>
  <int value="948849813" label="adpcm_ima_wav"/>
  <int value="949116467" label="binkvideo"/>
  <int value="949591507" label="vp9"/>
  <int value="972771007" label="mpeg2video"/>
  <int value="973601133" label="hq_hqa"/>
  <int value="981942659" label="opus"/>
  <int value="997031855" label="truemotion2"/>
  <int value="997190932" label="atrac3p"/>
  <int value="997732996" label="xwd"/>
  <int value="1001166722" label="xan_wc4"/>
  <int value="1008492983" label="msmpeg4v2"/>
  <int value="1020187009" label="rv40"/>
  <int value="1022607787" label="ape"/>
  <int value="1033850553" label="snow"/>
  <int value="1034034342" label="sipr"/>
  <int value="1041617024" label="tak_deprecated"/>
  <int value="1049882649" label="binkaudio_dct"/>
  <int value="1053922807" label="g723_1"/>
  <int value="1066477861" label="vorbis"/>
  <int value="1077386855" label="cscd"/>
  <int value="1098721511" label="g2m"/>
  <int value="1127772984" label="imc"/>
  <int value="1138712147" label="ac3"/>
  <int value="1139877352" label="dnxhd"/>
  <int value="1158772651" label="anm"/>
  <int value="1165132763" label="opus_deprecated"/>
  <int value="1194572884" label="g2m_deprecated"/>
  <int value="1210249397" label="avc"/>
  <int value="1213003867" label="hdmv_text_subtitle"/>
  <int value="1236695157" label="pcm_s32le_planar"/>
  <int value="1244283551" label="mpeg1video"/>
  <int value="1246598929" label="flic"/>
  <int value="1251286213" label="dxv"/>
  <int value="1258259575" label="pcm_lxf"/>
  <int value="1271374381" label="wmav1"/>
  <int value="1294385179" label="mp3"/>
  <int value="1299068647" label="truemotion1"/>
  <int value="1310993795" label="zerocodec"/>
  <int value="1311566537" label="flv1"/>
  <int value="1312943731" label="zmbv"/>
  <int value="1313131096" label="h264"/>
  <int value="1318324895" label="pcm_bluray"/>
  <int value="1333708519" label="pcm_u8"/>
  <int value="1366148173" label="adpcm_g726le"/>
  <int value="1375054610" label="aac"/>
  <int value="1395029615" label="adpcm_ea_maxis_xa"/>
  <int value="1397947482" label="dsd_lsbf"/>
  <int value="1411832541" label="pcm_f32be"/>
  <int value="1413182900" label="dvd_nav_packet"/>
  <int value="1462568683" label="srt"/>
  <int value="1467359000" label="msa1"/>
  <int value="1468951708" label="comfortnoise"/>
  <int value="1469210692" label="mp2"/>
  <int value="1483758205" label="celt"/>
  <int value="1502256638" label="vp5"/>
  <int value="1525492969" label="asv1"/>
  <int value="1526182480" label="klv"/>
  <int value="1535518292" label="pcm_s24le_planar_deprecated"/>
  <int value="1536086449" label="pcx"/>
  <int value="1550758811" label="mpegvideo_xvmc"/>
  <int value="1565855078" label="adpcm_ea_r2"/>
  <int value="1567457517" label="adpcm_g722"/>
  <int value="1571821879" label="dsicinvideo"/>
  <int value="1578202877" label="h263p"/>
  <int value="1603330014" label="r10k"/>
  <int value="1622843532" label="adpcm_sbpro_2"/>
  <int value="1626738193" label="mp3adu"/>
  <int value="1636940385" label="targa_y216"/>
  <int value="1647791075" label="adpcm_g726"/>
  <int value="1651871844" label="svq1"/>
  <int value="1656834662" label="voxware"/>
  <int value="1671488988" label="adpcm_ct"/>
  <int value="1681362983" label="webvtt"/>
  <int value="1681507854" label="exr"/>
  <int value="1704161151" label="pcm_u32be"/>
  <int value="1724507916" label="ra_144"/>
  <int value="1729587546" label="pgmyuv"/>
  <int value="1730373804" label="pcm_alaw"/>
  <int value="1741236466" label="subrip"/>
  <int value="1771307928" label="flashsv2"/>
  <int value="1789213623" label="wavpack"/>
  <int value="1804125128" label="pcm_s24be"/>
  <int value="1813293157" label="hqx"/>
  <int value="1818519290" label="sonicls"/>
  <int value="1822179743" label="pcm_s24daud"/>
  <int value="1823608208" label="pcm_mulaw"/>
  <int value="1827051583" label="adpcm_thp"/>
  <int value="1834381325" label="adpcm_dtk"/>
  <int value="1854844146" label="tscc"/>
  <int value="1890319788" label="mp4als"/>
  <int value="1896040704" label="cllc"/>
  <int value="1913299765" label="vixl"/>
  <int value="1947892273" label="prores"/>
  <int value="1951984033" label="v210"/>
  <int value="1961440145" label="vp6a"/>
  <int value="1965599083" label="sami"/>
  <int value="1981484138" label="pcm_u32le"/>
  <int value="1997862473" label="interplayvideo"/>
  <int value="2002251246" label="tscc2"/>
  <int value="2005720882" label="atrac3"/>
  <int value="2026594607" label="ass"/>
  <int value="2032395845" label="pcm_u16le"/>
  <int value="2041774878" label="huffyuv"/>
  <int value="2047102762" label="sanm_deprecated"/>
  <int value="2053719989" label="r210"/>
  <int value="2071582326" label="xbin"/>
  <int value="2080704511" label="pcm_s16be"/>
  <int value="2084073402" label="ljpeg"/>
  <int value="2086226415" label="pcm_s32le"/>
  <int value="2086394367" label="gsm"/>
  <int value="2100540076" label="amr_wb"/>
  <int value="2118960502" label="mimic"/>
  <int value="2128505640" label="wnv1"/>
  <int value="2146164868" label="v410"/>
</enum>

<enum name="FFmpegCodecs" type="int">
  <obsolete>
    deprecated Sep 15 2015 in favor of FFmpegCodecHashes
  </obsolete>
  <int value="0" label="NONE"/>
  <int value="1" label="MPEG1VIDEO"/>
  <int value="2" label="MPEG2VIDEO"/>
  <int value="3" label="MPEG2VIDEO_XVMC"/>
  <int value="4" label="H261"/>
  <int value="5" label="H263"/>
  <int value="6" label="RV10"/>
  <int value="7" label="RV20"/>
  <int value="8" label="MJPEG"/>
  <int value="9" label="MJPEGB"/>
  <int value="10" label="LJPEG"/>
  <int value="11" label="SP5X"/>
  <int value="12" label="JPEGLS"/>
  <int value="13" label="MPEG4"/>
  <int value="14" label="RAWVIDEO"/>
  <int value="15" label="MSMPEG4V1"/>
  <int value="16" label="MSMPEG4V2"/>
  <int value="17" label="MSMPEG4V3"/>
  <int value="18" label="WMV1"/>
  <int value="19" label="WMV2"/>
  <int value="20" label="H263P"/>
  <int value="21" label="H263I"/>
  <int value="22" label="FLV1"/>
  <int value="23" label="SVQ1"/>
  <int value="24" label="SVQ3"/>
  <int value="25" label="DVVIDEO"/>
  <int value="26" label="HUFFYUV"/>
  <int value="27" label="CYUV"/>
  <int value="28" label="H264"/>
  <int value="29" label="INDEO3"/>
  <int value="30" label="VP3"/>
  <int value="31" label="THEORA"/>
  <int value="32" label="ASV1"/>
  <int value="33" label="ASV2"/>
  <int value="34" label="FFV1"/>
  <int value="35" label="4XM"/>
  <int value="36" label="VCR1"/>
  <int value="37" label="CLJR"/>
  <int value="38" label="MDEC"/>
  <int value="39" label="ROQ"/>
  <int value="40" label="INTERPLAY_VIDEO"/>
  <int value="41" label="XAN_WC3"/>
  <int value="42" label="XAN_WC4"/>
  <int value="43" label="RPZA"/>
  <int value="44" label="CINEPAK"/>
  <int value="45" label="WS_VQA"/>
  <int value="46" label="MSRLE"/>
  <int value="47" label="MSVIDEO1"/>
  <int value="48" label="IDCIN"/>
  <int value="49" label="8BPS"/>
  <int value="50" label="SMC"/>
  <int value="51" label="FLIC"/>
  <int value="52" label="TRUEMOTION1"/>
  <int value="53" label="VMDVIDEO"/>
  <int value="54" label="MSZH"/>
  <int value="55" label="ZLIB"/>
  <int value="56" label="QTRLE"/>
  <int value="57" label="SNOW"/>
  <int value="58" label="TSCC"/>
  <int value="59" label="ULTI"/>
  <int value="60" label="QDRAW"/>
  <int value="61" label="VIXL"/>
  <int value="62" label="QPEG"/>
  <int value="63" label="PNG"/>
  <int value="64" label="PPM"/>
  <int value="65" label="PBM"/>
  <int value="66" label="PGM"/>
  <int value="67" label="PGMYUV"/>
  <int value="68" label="PAM"/>
  <int value="69" label="FFVHUFF"/>
  <int value="70" label="RV30"/>
  <int value="71" label="RV40"/>
  <int value="72" label="VC1"/>
  <int value="73" label="WMV3"/>
  <int value="74" label="LOCO"/>
  <int value="75" label="WNV1"/>
  <int value="76" label="AASC"/>
  <int value="77" label="INDEO2"/>
  <int value="78" label="FRAPS"/>
  <int value="79" label="TRUEMOTION2"/>
  <int value="80" label="BMP"/>
  <int value="81" label="CSCD"/>
  <int value="82" label="MMVIDEO"/>
  <int value="83" label="ZMBV"/>
  <int value="84" label="AVS"/>
  <int value="85" label="SMACKVIDEO"/>
  <int value="86" label="NUV"/>
  <int value="87" label="KMVC"/>
  <int value="88" label="FLASHSV"/>
  <int value="89" label="CAVS"/>
  <int value="90" label="JPEG2000"/>
  <int value="91" label="VMNC"/>
  <int value="92" label="VP5"/>
  <int value="93" label="VP6"/>
  <int value="94" label="VP6F"/>
  <int value="95" label="TARGA"/>
  <int value="96" label="DSICINVIDEO"/>
  <int value="97" label="TIERTEXSEQVIDEO"/>
  <int value="98" label="TIFF"/>
  <int value="99" label="GIF"/>
  <int value="100" label="DXA"/>
  <int value="101" label="DNXHD"/>
  <int value="102" label="THP"/>
  <int value="103" label="SGI"/>
  <int value="104" label="C93"/>
  <int value="105" label="BETHSOFTVID"/>
  <int value="106" label="PTX"/>
  <int value="107" label="TXD"/>
  <int value="108" label="VP6A"/>
  <int value="109" label="AMV"/>
  <int value="110" label="VB"/>
  <int value="111" label="PCX"/>
  <int value="112" label="SUNRAST"/>
  <int value="113" label="INDEO4"/>
  <int value="114" label="INDEO5"/>
  <int value="115" label="MIMIC"/>
  <int value="116" label="RL2"/>
  <int value="117" label="ESCAPE124"/>
  <int value="118" label="DIRAC"/>
  <int value="119" label="BFI"/>
  <int value="120" label="CMV"/>
  <int value="121" label="MOTIONPIXELS"/>
  <int value="122" label="TGV"/>
  <int value="123" label="TGQ"/>
  <int value="124" label="TQI"/>
  <int value="125" label="AURA"/>
  <int value="126" label="AURA2"/>
  <int value="127" label="V210X"/>
  <int value="128" label="TMV"/>
  <int value="129" label="V210"/>
  <int value="130" label="DPX"/>
  <int value="131" label="MAD"/>
  <int value="132" label="FRWU"/>
  <int value="133" label="FLASHSV2"/>
  <int value="134" label="CDGRAPHICS"/>
  <int value="135" label="R210"/>
  <int value="136" label="ANM"/>
  <int value="137" label="BINKVIDEO"/>
  <int value="138" label="IFF_ILBM"/>
  <int value="139" label="IFF_BYTERUN1"/>
  <int value="140" label="KGV1"/>
  <int value="141" label="YOP"/>
  <int value="142" label="VP8"/>
  <int value="143" label="PICTOR"/>
  <int value="144" label="ANSI"/>
  <int value="145" label="A64_MULTI"/>
  <int value="146" label="A64_MULTI5"/>
  <int value="147" label="R10K"/>
  <int value="148" label="MXPEG"/>
  <int value="149" label="LAGARITH"/>
  <int value="150" label="PRORES"/>
  <int value="151" label="JV"/>
  <int value="152" label="DFA"/>
  <int value="153" label="WMV3IMAGE"/>
  <int value="154" label="VC1IMAGE"/>
  <int value="155" label="UTVIDEO"/>
  <int value="156" label="BMV_VIDEO"/>
  <int value="157" label="VBLE"/>
  <int value="158" label="DXTORY"/>
  <int value="159" label="V410"/>
  <int value="160" label="XWD"/>
  <int value="161" label="CDXL"/>
  <int value="162" label="XBM"/>
  <int value="163" label="ZEROCODEC"/>
  <int value="164" label="MSS1"/>
  <int value="165" label="MSA1"/>
  <int value="166" label="TSCC2"/>
  <int value="167" label="MTS2"/>
  <int value="168" label="CLLC"/>
  <int value="169" label="MSS2"/>
  <int value="170" label="VP9"/>
  <int value="65536" label="PCM_S16LE"/>
  <int value="65537" label="PCM_S16BE"/>
  <int value="65538" label="PCM_U16LE"/>
  <int value="65539" label="PCM_U16BE"/>
  <int value="65540" label="PCM_S8"/>
  <int value="65541" label="PCM_U8"/>
  <int value="65542" label="PCM_MULAW"/>
  <int value="65543" label="PCM_ALAW"/>
  <int value="65544" label="PCM_S32LE"/>
  <int value="65545" label="PCM_S32BE"/>
  <int value="65546" label="PCM_U32LE"/>
  <int value="65547" label="PCM_U32BE"/>
  <int value="65548" label="PCM_S24LE"/>
  <int value="65549" label="PCM_S24BE"/>
  <int value="65550" label="PCM_U24LE"/>
  <int value="65551" label="PCM_U24BE"/>
  <int value="65552" label="PCM_S24DAUD"/>
  <int value="65553" label="PCM_ZORK"/>
  <int value="65554" label="PCM_S16LE_PLANAR"/>
  <int value="65555" label="PCM_DVD"/>
  <int value="65556" label="PCM_F32BE"/>
  <int value="65557" label="PCM_F32LE"/>
  <int value="65558" label="PCM_F64BE"/>
  <int value="65559" label="PCM_F64LE"/>
  <int value="65560" label="PCM_BLURAY"/>
  <int value="65561" label="PCM_LXF"/>
  <int value="65562" label="S302M"/>
  <int value="65563" label="PCM_S8_PLANAR"/>
  <int value="69632" label="ADPCM_IMA_QT"/>
  <int value="69633" label="ADPCM_IMA_WAV"/>
  <int value="69634" label="ADPCM_IMA_DK3"/>
  <int value="69635" label="ADPCM_IMA_DK4"/>
  <int value="69636" label="ADPCM_IMA_WS"/>
  <int value="69637" label="ADPCM_IMA_SMJPEG"/>
  <int value="69638" label="ADPCM_MS"/>
  <int value="69639" label="ADPCM_4XM"/>
  <int value="69640" label="ADPCM_XA"/>
  <int value="69641" label="ADPCM_ADX"/>
  <int value="69642" label="ADPCM_EA"/>
  <int value="69643" label="ADPCM_G726"/>
  <int value="69644" label="ADPCM_CT"/>
  <int value="69645" label="ADPCM_SWF"/>
  <int value="69646" label="ADPCM_YAMAHA"/>
  <int value="69647" label="ADPCM_SBPRO_4"/>
  <int value="69648" label="ADPCM_SBPRO_3"/>
  <int value="69649" label="ADPCM_SBPRO_2"/>
  <int value="69650" label="ADPCM_THP"/>
  <int value="69651" label="ADPCM_IMA_AMV"/>
  <int value="69652" label="ADPCM_EA_R1"/>
  <int value="69653" label="ADPCM_EA_R3"/>
  <int value="69654" label="ADPCM_EA_R2"/>
  <int value="69655" label="ADPCM_IMA_EA_SEAD"/>
  <int value="69656" label="ADPCM_IMA_EA_EACS"/>
  <int value="69657" label="ADPCM_EA_XAS"/>
  <int value="69658" label="ADPCM_EA_MAXIS_XA"/>
  <int value="69659" label="ADPCM_IMA_ISS"/>
  <int value="69660" label="ADPCM_G722"/>
  <int value="69661" label="ADPCM_IMA_APC"/>
  <int value="73728" label="AMR_NB"/>
  <int value="73729" label="AMR_WB"/>
  <int value="77824" label="RA_144"/>
  <int value="77825" label="RA_288"/>
  <int value="81920" label="ROQ_DPCM"/>
  <int value="81921" label="INTERPLAY_DPCM"/>
  <int value="81922" label="XAN_DPCM"/>
  <int value="81923" label="SOL_DPCM"/>
  <int value="86016" label="MP2"/>
  <int value="86017" label="MP3"/>
  <int value="86018" label="AAC"/>
  <int value="86019" label="AC3"/>
  <int value="86020" label="DTS"/>
  <int value="86021" label="VORBIS"/>
  <int value="86022" label="DVAUDIO"/>
  <int value="86023" label="WMAV1"/>
  <int value="86024" label="WMAV2"/>
  <int value="86025" label="MACE3"/>
  <int value="86026" label="MACE6"/>
  <int value="86027" label="VMDAUDIO"/>
  <int value="86028" label="FLAC"/>
  <int value="86029" label="MP3ADU"/>
  <int value="86030" label="MP3ON4"/>
  <int value="86031" label="SHORTEN"/>
  <int value="86032" label="ALAC"/>
  <int value="86033" label="WESTWOOD_SND1"/>
  <int value="86034" label="GSM"/>
  <int value="86035" label="QDM2"/>
  <int value="86036" label="COOK"/>
  <int value="86037" label="TRUESPEECH"/>
  <int value="86038" label="TTA"/>
  <int value="86039" label="SMACKAUDIO"/>
  <int value="86040" label="QCELP"/>
  <int value="86041" label="WAVPACK"/>
  <int value="86042" label="DSICINAUDIO"/>
  <int value="86043" label="IMC"/>
  <int value="86044" label="MUSEPACK7"/>
  <int value="86045" label="MLP"/>
  <int value="86046" label="GSM_MS"/>
  <int value="86047" label="ATRAC3"/>
  <int value="86048" label="VOXWARE"/>
  <int value="86049" label="APE"/>
  <int value="86050" label="NELLYMOSER"/>
  <int value="86051" label="MUSEPACK8"/>
  <int value="86052" label="SPEEX"/>
  <int value="86053" label="WMAVOICE"/>
  <int value="86054" label="WMAPRO"/>
  <int value="86055" label="WMALOSSLESS"/>
  <int value="86056" label="ATRAC3P"/>
  <int value="86057" label="EAC3"/>
  <int value="86058" label="SIPR"/>
  <int value="86059" label="MP1"/>
  <int value="86060" label="TWINVQ"/>
  <int value="86061" label="TRUEHD"/>
  <int value="86062" label="MP4ALS"/>
  <int value="86063" label="ATRAC1"/>
  <int value="86064" label="BINKAUDIO_RDFT"/>
  <int value="86065" label="BINKAUDIO_DCT"/>
  <int value="86066" label="AAC_LATM"/>
  <int value="86067" label="QDMC"/>
  <int value="86068" label="CELT"/>
  <int value="86069" label="G723_1"/>
  <int value="86070" label="G729"/>
  <int value="86071" label="8SVX_EXP"/>
  <int value="86072" label="8SVX_FIB"/>
  <int value="86073" label="BMV_AUDIO"/>
  <int value="86074" label="RALF"/>
  <int value="86075" label="IAC"/>
  <int value="86076" label="ILBC"/>
  <int value="86077" label="OPUS_DEPRECATED"/>
  <int value="86078" label="COMFORT_NOISE"/>
  <int value="86079" label="TAK_DEPRECATED"/>
  <int value="94208" label="DVD_SUBTITLE"/>
  <int value="94209" label="DVB_SUBTITLE"/>
  <int value="94210" label="TEXT"/>
  <int value="94211" label="XSUB"/>
  <int value="94212" label="SSA"/>
  <int value="94213" label="MOV_TEXT"/>
  <int value="94214" label="HDMV_PGS_SUBTITLE"/>
  <int value="94215" label="DVB_TELETEXT"/>
  <int value="94216" label="SRT"/>
  <int value="98304" label="TTF"/>
  <int value="102400" label="PROBE"/>
  <int value="131072" label="MPEG2TS"/>
  <int value="131073" label="MPEG4SYSTEMS"/>
  <int value="135168" label="FFMETADATA"/>
  <int value="4665933" label="G2M"/>
  <int value="4801606" label="IDF"/>
  <int value="5198918" label="OTF"/>
  <int value="407917392" label="PCM_S24LE_PLANAR"/>
  <int value="542135120" label="PCM_S32LE_PLANAR"/>
  <int value="808530518" label="012V"/>
  <int value="809850962" label="EXR"/>
  <int value="944985688" label="8SVX_RAW"/>
  <int value="1095123744" label="ADPCM_AFC"/>
  <int value="1096176208" label="AVRP"/>
  <int value="1096176238" label="AVRN"/>
  <int value="1096176969" label="AVUI"/>
  <int value="1096373590" label="AYUV"/>
  <int value="1112557912" label="BRENDER_PIX"/>
  <int value="1112823892" label="BINTEXT"/>
  <int value="1129335105" label="CPIA"/>
  <int value="1160852272" label="ESCAPE130"/>
  <int value="1179014995" label="FFWAVESYNTH"/>
  <int value="1211250229" label="HEVC"/>
  <int value="1246975298" label="JACOSUB"/>
  <int value="1263294017" label="SMPTE_KLV"/>
  <int value="1297108018" label="MPL2"/>
  <int value="1297498929" label="MVC1"/>
  <int value="1297498930" label="MVC2"/>
  <int value="1330333984" label="ADPCM_IMA_OKI"/>
  <int value="1330664787" label="OPUS"/>
  <int value="1346455105" label="PAF_AUDIO"/>
  <int value="1346455126" label="PAF_VIDEO"/>
  <int value="1347637264" label="PCM_S16BE_PLANAR"/>
  <int value="1349012051" label="PJS"/>
  <int value="1381259348" label="REALTEXT"/>
  <int value="1396788553" label="SAMI"/>
  <int value="1396788813" label="SANM"/>
  <int value="1397180754" label="SGIRLE"/>
  <int value="1397706307" label="SONIC"/>
  <int value="1397706316" label="SONIC_LS"/>
  <int value="1397909872" label="SUBRIP"/>
  <int value="1398953521" label="SUBVIEWER1"/>
  <int value="1400201814" label="SUBVIEWER"/>
  <int value="1412575542" label="TARGA_Y216"/>
  <int value="1446195256" label="V308"/>
  <int value="1446260792" label="V408"/>
  <int value="1447644481" label="VIMA"/>
  <int value="1448111218" label="VPLAYER"/>
  <int value="1465275476" label="WEBVTT"/>
  <int value="1480739150" label="XBIN"/>
  <int value="1480999235" label="XFACE"/>
  <int value="1496592720" label="Y41P"/>
  <int value="1498764852" label="YUV4"/>
  <int value="1664495672" label="EIA_608"/>
  <int value="1833195076" label="MICRODVD"/>
  <int value="1936029283" label="EVRC"/>
  <int value="1936944502" label="SMV"/>
  <int value="1950507339" label="TAK"/>
</enum>

<enum name="FFmpegColorRanges" type="int">
  <int value="0" label="UNSPECIFIED"/>
  <int value="1" label="MPEG"/>
  <int value="2" label="JPEG"/>
</enum>

<enum name="FileDialogType" type="int">
  <int value="0" label="Select folder"/>
  <int value="1" label="Upload folder"/>
  <int value="2" label="Save as file"/>
  <int value="3" label="Open file"/>
  <int value="4" label="Open multiple files"/>
  <int value="5" label="Full page"/>
  <int value="6" label="Error"/>
</enum>

<enum name="FileManagerVolumeType" type="int">
  <int value="0" label="Google Drive"/>
  <int value="1" label="Download Folder"/>
  <int value="2" label="Removable Disk"/>
  <int value="3" label="Archive File"/>
  <int value="4" label="FileSystemProvider API"/>
  <int value="5" label="MTP (Media Transfer Protocol) Device"/>
</enum>

<enum name="FileMetricsProviderAccessResult" type="int">
  <int value="0" label="File was mapped."/>
  <int value="1" label="File doesn't exist."/>
  <int value="2" label="File not modified."/>
  <int value="3" label="File is invalid (e.g. directory or zero-size)."/>
  <int value="4" label="File could not be memory-mapped by system."/>
  <int value="5" label="File has invalid contents."/>
  <int value="6" label="File could not be exclusively opened."/>
</enum>

<enum name="FileSystemDatabaseInitResult" type="int">
  <int value="0" label="OK"/>
  <int value="1" label="Corruption"/>
  <int value="2" label="IO Error"/>
  <int value="3" label="Unknown Error"/>
</enum>

<enum name="FileSystemErrors" type="int">
  <int value="0" label="OK"/>
  <int value="1" label="Incognito"/>
  <int value="2" label="Invalid Schema"/>
  <int value="3" label="Create Directory Error"/>
  <int value="4" label="Not Found"/>
  <int value="5" label="Unknown Error"/>
</enum>

<enum name="FileType" type="int">
  <int value="0" label="other"/>
  <int value="1" label=".doc"/>
  <int value="2" label=".docx"/>
  <int value="3" label=".odt"/>
  <int value="4" label=".rtf"/>
  <int value="5" label=".pdf"/>
  <int value="6" label=".ppt"/>
  <int value="7" label=".pptx"/>
  <int value="8" label=".odp"/>
  <int value="9" label=".xls"/>
  <int value="10" label=".xlsx"/>
  <int value="11" label=".ods"/>
  <int value="12" label=".csv"/>
  <int value="13" label=".odf"/>
  <int value="14" label=".rar"/>
  <int value="15" label=".asf"/>
  <int value="16" label=".wma"/>
  <int value="17" label=".wmv"/>
  <int value="18" label=".mov"/>
  <int value="19" label=".mpg"/>
  <int value="20" label=".log"/>
</enum>

<enum name="FlashNavigateUsageType" type="int">
  <int value="0" label="Rejected because of Authorization header."/>
  <int value="1" label="Rejected because of Cache-Control header."/>
  <int value="2" label="Rejected because of Content-Encoding header."/>
  <int value="3" label="Rejected because of Content-MD5 header."/>
  <int value="4" label="Rejected because of Content-Type header."/>
  <int value="5" label="Rejected because of Expires header."/>
  <int value="6" label="Rejected because of From header."/>
  <int value="7" label="Rejected because of If-Match header."/>
  <int value="8" label="Rejected because of If-None-Match header."/>
  <int value="9" label="Rejected because of If-Range header."/>
  <int value="10" label="Rejected because of If-Unmodified-Since header."/>
  <int value="11" label="Rejected because of Pragma header."/>
  <int value="12" label="Rejected because of Referer header."/>
  <int value="13"
      label="Rejected because of other headers (e.g., custom headers)."/>
  <int value="14" label="The total number of rejected navigate requests."/>
  <int value="15" label="The total number of navigate requests."/>
</enum>

<enum name="FlashTinyContentSize" type="int">
  <int value="0" label="1x1 or smaller"/>
  <int value="1" label="5x5 or smaller"/>
  <int value="2" label="10x10 or smaller"/>
  <int value="3" label="Large"/>
</enum>

<enum name="FlashUsage" type="int">
  <int value="0" label="Started NPAPI Flash at least once">
    Number of browser processes that have started at least one NPAPI Flash
    process during their lifetime.
  </int>
  <int value="1" label="Started PPAPI Flash at least once">
    Number of browser processes that have started at least one PPAPI Flash
    process during their lifetime.
  </int>
  <int value="2" label="Started browser process">
    Total number of browser processes.
  </int>
</enum>

<enum name="FontDisplayValue" type="int">
  <int value="0" label="auto"/>
  <int value="1" label="block"/>
  <int value="2" label="swap"/>
  <int value="3" label="fallback"/>
  <int value="4" label="optional"/>
</enum>

<enum name="FormDataDeserializationStatus" type="int">
  <int value="0" label="Login database success"/>
  <int value="1" label="Login database failure"/>
  <int value="2" label="Libsecret success"/>
  <int value="3" label="Libsecret failure"/>
  <int value="4" label="GNOME success"/>
  <int value="5" label="GNOME failure"/>
</enum>

<enum name="FramebustPermissions" type="int">
  <int value="0" label="Only permitted for framebusting, no user gesture"/>
  <int value="1" label="Only permitted for framebusting, user gesture"/>
  <int value="2" label="Allowed navigation, no user gesture"/>
  <int value="3" label="Allowed navigation, user gesture"/>
</enum>

<enum name="FtpDataConnectionError" type="int">
  <int value="0">Data connection successful</int>
  <int value="1">Local firewall blocked the connection</int>
  <int value="2">Connection timed out</int>
  <int value="3">
    Connection has been established, but then got broken (either reset or
    aborted)
  </int>
  <int value="4">Connection has been refused</int>
  <int value="20">Other kind of error</int>
</enum>

<enum name="FtpServerType" type="int">
  <obsolete>
    Deprecated 2012-11-13. No longer generated.
  </obsolete>
  <summary>
    Old FTP server type as previously defined in
    net/ftp/ftp_server_type_histograms.h
  </summary>
  <int value="0" label="Unknown">
    Unknown (could be a server we don't support, a broken server, or a security
    attack)
  </int>
  <int value="1" label="/bin/ls">Server using /bin/ls -l and variants</int>
  <int value="2" label="/bin/dls">Server using /bin/dls</int>
  <int value="3" label="EPLF">Server using EPLF format</int>
  <int value="4" label="WinNT">
    WinNT server configured for old style listing
  </int>
  <int value="5" label="VMS">VMS (including variants)</int>
  <int value="6" label="IBM VM">IBM VM/CMS, VM/ESA, z/VM formats</int>
  <int value="7" label="OS/2">OS/2 FTP Server</int>
  <int value="8" label="win16">
    win16 hosts: SuperTCP or NetManage Chameleon
  </int>
</enum>

<enum name="FtpServerType2" type="int">
  <summary>
    FTP server type as defined in net/ftp/ftp_server_type_histograms.h
  </summary>
  <int value="0" label="Unknown"/>
  <int value="1" label="/bin/ls"/>
  <int value="2" label="Windows"/>
  <int value="3" label="VMS"/>
  <int value="4" label="Netware">
    Obsolete, no longer detected or supported.
  </int>
  <int value="5" label="OS/2">Obsolete, no longer detected or supported.</int>
</enum>

<enum name="GaiaSessionRestoreOutcome" type="int">
  <int value="0" label="Undefined"/>
  <int value="1" label="Success"/>
  <int value="2" label="OAuth2 tokens cannot be fetched"/>
  <int value="3" label="No local OAuth2 refresh token found"/>
  <int value="4" label="OAuthLogin call failed"/>
  <int value="5" label="MergeSession call failed"/>
  <int value="6" label="ListAccounts call failed"/>
  <int value="7" label="No restore needed, fresh cookies found"/>
  <int value="8" label="Overflow"/>
</enum>

<enum name="GATTCharacteristicHash" type="int">
<!-- Hash values can be produced using tool: bluetooth_metrics_hash (Only built via GN, not GYP) -->

  <int value="1615384" label="alert_notification_control_point"/>
  <int value="4531384" label="date_of_birth"/>
  <int value="22829753" label="barometric_pressure_trend"/>
  <int value="33030714" label="scan_refresh"/>
  <int value="40437408" label="gender"/>
  <int value="64893984" label="local_east_coordinate.xml"/>
  <int value="67768539" label="alert_category_id_bit_mask"/>
  <int value="79560451" label="sc_control_point"/>
  <int value="84948752"
      label="Eddystone Config ADV Slot Data;
             a3c8750a-8ed3-4bdf-8a39-a01bebede295"/>
  <int value="89070880" label="blood_pressure_measurement"/>
  <int value="102699400" label="cycling_power_feature"/>
  <int value="145478270" label="glucose_feature"/>
  <int value="162705488" label="manufacturer_name_string"/>
  <int value="164418508" label="weight_measurement"/>
  <int value="177223896" label="report_map"/>
  <int value="203846063" label="ff0c"/>
  <int value="205016416" label="body_composition_measurement"/>
  <int value="235785246" label="irradiance"/>
  <int value="248349383" label="csc_measurement"/>
  <int value="254703207" label="true_wind_speed"/>
  <int value="257107525" label="intermediate_temperature"/>
  <int value="259169368" label="cgm_measurement"/>
  <int value="261747886" label="battery_level"/>
  <int value="282925453" label="time_with_dst"/>
  <int value="289588334" label="supported_unread_alert_category"/>
  <int value="296670902" label="heart_rate_control_point"/>
  <int value="298186521" label="alert_category_id"/>
  <int value="307449363" label="plx_features"/>
  <int value="310983691" label="cycling_power_measurement"/>
  <int value="312578485" label="navigation"/>
  <int value="333947401" label="temperature_measurement"/>
  <int value="338768495" label="ringer_setting"/>
  <int value="339742946" label="hid_information"/>
  <int value="358854697" label="bond_management_feature"/>
  <int value="361317539" label="language"/>
  <int value="363167947" label="blood_pressure_feature"/>
  <int value="364021976"
      label="nRF candy machine; b6c31338-6c07-453e-961a-d8a8a41bf368"/>
  <int value="405569435" label="boot_keyboard_output_report"/>
  <int value="409618715" label="cycling_power_vector"/>
  <int value="419477741" label="body_composition_feature"/>
  <int value="469191968" label="Playbulb Candle Color; fffc"/>
  <int value="473092981"
      label="Eddystone Config Advertising Interval;
             a3c87503-8ed3-4bdf-8a39-a01bebede295"/>
  <int value="486368335" label="location_name"/>
  <int value="512543326" label="date_of_threshold_assessment"/>
  <int value="531135021" label="cgm_specific_ops_control_point"/>
  <int value="540054581" label="magnetic_declination"/>
  <int value="546162499"
      label="Eddystone Config EID Identity Key;
             a3c87509-8ed3-4bdf-8a39-a01bebede295"/>
  <int value="546355367" label="firmware_revision_string"/>
  <int value="549702960" label="humidity"/>
  <int value="557034058" label="cycling_power_control_point"/>
  <int value="557040382" label="hardware_revision_string"/>
  <int value="561260257" label="analog"/>
  <int value="589741087" label="model_number_string"/>
  <int value="638602429" label="new_alert"/>
  <int value="642925692" label="anaerobic_heart_rate_lower_limit"/>
  <int value="650507215" label="aerobic_heart_rate_lower_limit"/>
  <int value="653904148" label="cgm_session_run_time"/>
  <int value="675543714" label="aerobic_threshold"/>
  <int value="689682673" label="unread_alert_status"/>
  <int value="710863194" label="dew_point"/>
  <int value="713208266" label="apparent_wind_direction"/>
  <int value="724796397" label="weight"/>
  <int value="747671909" label="reference_time_information"/>
  <int value="752820597" label="boot_mouse_input_report"/>
  <int value="762835818" label="tx_power_level"/>
  <int value="765862810" label="cgm_session_start_time"/>
  <int value="788890283"
      label="Eddystone Config Factory reset;
             a3c8750b-8ed3-4bdf-8a39-a01bebede295"/>
  <int value="797118889" label="time_source"/>
  <int value="839366223" label="user_index"/>
  <int value="842908520" label="rsc_measurement"/>
  <int value="859809200" label="resting_heart_rate"/>
  <int value="867296114" label="gust_factor"/>
  <int value="868427891" label="local_north_coordinate"/>
  <int value="868892960" label="heat_index"/>
  <int value="873660243" label="body_sensor_location"/>
  <int value="893588698" label="scan_interval_window"/>
  <int value="910416910"
      label="nRF UART RX; 6e400003-b5a3-f393-e0a9-e50e24dcca9e"/>
  <int value="917477908" label="software_revision_string"/>
  <int value="918961501" label="plx_spot_check_measurement"/>
  <int value="922434244" label="ln_feature"/>
  <int value="928099812" label="system_id"/>
  <int value="928491064" label="last_name"/>
  <int value="947971228" label="temperature_type"/>
  <int value="951656105"
      label="Eddystone Config Remain Connectable;
             a3c8750c-8ed3-4bdf-8a39-a01bebede295"/>
  <int value="962656991"
      label="Eddystone Config Public ECDH Key;
             a3c87508-8ed3-4bdf-8a39-a01bebede295"/>
  <int value="976761505" label="local_time_information"/>
  <int value="987658962" label="glucose_measurement"/>
  <int value="1002619180" label="exact_time_256"/>
  <int value="1025676359" label="dst_offset"/>
  <int value="1050948662"
      label="nRF UART TX; 6e400002-b5a3-f393-e0a9-e50e24dcca9e"/>
  <int value="1061486494" label="anaerobic_heart_rate_upper_limit"/>
  <int value="1072163984" label="gap.reconnection_address"/>
  <int value="1100640868" label="day_of_week"/>
  <int value="1125104414" label="gap.central_address_resolution_support"/>
  <int value="1134538374" label="hip_circumference"/>
  <int value="1136624215" label="maximum_recommended_heart_rate"/>
  <int value="1136682523" label="date_time"/>
  <int value="1161713439" label="Playbulb Candle Effect; fffb"/>
  <int value="1167525145" label="alert_status"/>
  <int value="1183399370" label="magnetic_flux_density_3D"/>
  <int value="1186677690"
      label="Eddystone Config Advertised Tx Power;
             a3c87505-8ed3-4bdf-8a39-a01bebede295"/>
  <int value="1193066711" label="uv_index"/>
  <int value="1214133688" label="vo2_max"/>
  <int value="1217613737" label="three_zone_heart_rate_limits"/>
  <int value="1227844535" label="floor_number"/>
  <int value="1237083013" label="first_name"/>
  <int value="1245615057" label="pnp_id"/>
  <int value="1254532025" label="user_control_point"/>
  <int value="1288236137" label="hid_control_point"/>
  <int value="1320278204"
      label="Eddystone Config Radio Tx Power;
             a3c87504-8ed3-4bdf-8a39-a01bebede295"/>
  <int value="1329901812"
      label="Eddystone Config Lock State;
             a3c87506-8ed3-4bdf-8a39-a01bebede295"/>
  <int value="1333242790" label="longitude"/>
  <int value="1358488787"
      label="sport_type_for_aerobic_and_anaerobic_thresholds"/>
  <int value="1370497910" label="position_quality"/>
  <int value="1370779343" label="apparent_wind_speed"/>
  <int value="1399905251" label="elevation"/>
  <int value="1403795440" label="time_update_control_point"/>
  <int value="1407679683" label="location_and_speed"/>
  <int value="1409077916"
      label="ieee_11073-20601_regulatory_certification_data_list"/>
  <int value="1418868404"
      label="gap.peripheral_preferred_connection_parameters"/>
  <int value="1419696114" label="record_access_control_point"/>
  <int value="1426243900" label="time_update_state"/>
  <int value="1445812935" label="current_time"/>
  <int value="1448457670" label="cgm_feature"/>
  <int value="1479031407" label="five_zone_heart_rate_limits"/>
  <int value="1480262218" label="height"/>
  <int value="1501299347"
      label="nRF candy machine; a6c31338-6c07-453e-961a-d8a8a41bf368"/>
  <int value="1502604093" label="serial_number_string"/>
  <int value="1511396316" label="ln_control_point"/>
  <int value="1511953014"
      label="Eddystone Config Capabilities;
             a3c87501-8ed3-4bdf-8a39-a01bebede295"/>
  <int value="1521362289" label="indoor_positioning_configuration"/>
  <int value="1541435682" label="fat_burn_heart_rate_upper_limit"/>
  <int value="1542101224" label="plx_continuous_measurent"/>
  <int value="1547112406"
      label="Eddystone Config Active Slot;
             a3c87502-8ed3-4bdf-8a39-a01bebede295"/>
  <int value="1556918420" label="supported_new_alert_category"/>
  <int value="1562359952" label="bond_management_control_point"/>
  <int value="1594190447" label="anaerobic_threshold"/>
  <int value="1594284383" label="time_accuracy"/>
  <int value="1599786113" label="sensor_location"/>
  <int value="1650767660" label="protocol_mode"/>
  <int value="1655824245" label="pressure"/>
  <int value="1658559118" label="digital"/>
  <int value="1704141710" label="true_wind_direction"/>
  <int value="1732815395" label="alert_level"/>
  <int value="1735563923" label="rsc_feature"/>
  <int value="1748731133" label="intermediate_blood_pressure"/>
  <int value="1774994865" label="day_date_time"/>
  <int value="1777827929" label="heart_rate_measurement"/>
  <int value="1778752264" label="magnetic_flux_density_2D"/>
  <int value="1807818076" label="rainfall"/>
  <int value="1811011331" label="report"/>
  <int value="1813165113" label="fat_burn_heart_rate_lower_limit"/>
  <int value="1822663159" label="altitude"/>
  <int value="1826219951" label="measurement_interval"/>
  <int value="1855704654" label="latitude"/>
  <int value="1881531610" label="descriptor_value_changed"/>
  <int value="1899652799" label="pollen_concentration"/>
  <int value="1904364134" label="aerobic_heart_rate_upper_limit"/>
  <int value="1936155204" label="gap.device_name"/>
  <int value="1954594648" label="temperature"/>
  <int value="1970019437" label="gap.peripheral_privacy_flag"/>
  <int value="1981651466" label="wind_chill"/>
  <int value="1999174392" label="glucose_measurement_context"/>
  <int value="2000824522" label="waist_circumference"/>
  <int value="2010182602" label="csc_feature"/>
  <int value="2022949018" label="cgm_status"/>
  <int value="2025615830" label="aggregate"/>
  <int value="2025816471"
      label="Eddystone Config Unlock; a3c87507-8ed3-4bdf-8a39-a01bebede295"/>
  <int value="2031294873" label="uncertainty"/>
  <int value="2041423305" label="email_address"/>
  <int value="2042267197" label="age"/>
  <int value="2047173546" label="boot_keyboard_input_report"/>
  <int value="2083994430" label="two_zone_heart_rate_limit"/>
  <int value="2084445069" label="ringer_control_point"/>
  <int value="2091531878" label="weight_scale_feature"/>
  <int value="2101185135" label="time_zone"/>
  <int value="2105952193" label="heart_rate_max"/>
  <int value="2118566262" label="database_change_increment"/>
  <int value="2125906618" label="gap.appearance"/>
  <int value="2140490935" label="gatt.service_changed"/>
</enum>

<enum name="GATTServiceHash" type="int">
<!-- Hash values can be produced using tool: bluetooth_metrics_hash (Only built via GN, not GYP) -->

  <int value="7464675" label="pulse_oximeter"/>
  <int value="26695985" label="fe20"/>
  <int value="35226455" label="fe44"/>
  <int value="35347197" label="fe26"/>
  <int value="41430862" label="fea8"/>
  <int value="44208286" label="fe29"/>
  <int value="46512116" label="fe03"/>
  <int value="47251880" label="fe8c"/>
  <int value="48328546" label="febf"/>
  <int value="56938056" label="feb9"/>
  <int value="62669585" label="feff"/>
  <int value="70653353" label="fe37"/>
  <int value="81094401" label="link_loss"/>
  <int value="85709298" label="fe38"/>
  <int value="91953454" label="fe7b"/>
  <int value="109066436" label="Printer; 18f0"/>
  <int value="117033282" label="fe1e"/>
  <int value="119232939" label="fe16"/>
  <int value="126220948" label="fec4"/>
  <int value="130754956" label="fe0d"/>
  <int value="134110769" label="fecf"/>
  <int value="141942246" label="fe1d"/>
  <int value="152492105" label="fe5f"/>
  <int value="169501939" label="fe4d"/>
  <int value="199936534" label="fe3c"/>
  <int value="214038522" label="fed3"/>
  <int value="217781951" label="human_interface_device"/>
  <int value="219286671" label="fe04"/>
  <int value="221983129" label="fe66"/>
  <int value="228594985" label="fe21"/>
  <int value="229725863"
      label="Juggglow; 624e957f-cb42-4cd6-bacc-84aeb898f69b"/>
  <int value="239745754" label="fe22"/>
  <int value="252638028" label="fe9c"/>
  <int value="253001319" label="fe84"/>
  <int value="267848299" label="fe3e"/>
  <int value="270670950" label="fe62"/>
  <int value="272218751" label="automation_io"/>
  <int value="273356483" label="fe68"/>
  <int value="278860884" label="fe5c"/>
  <int value="289754407" label="fe01"/>
  <int value="291870040" label="fe6d"/>
  <int value="295205583" label="fe27"/>
  <int value="310654399" label="fe54"/>
  <int value="314884784" label="fe65"/>
  <int value="315044617" label="fea9"/>
  <int value="321399472" label="fe86"/>
  <int value="335078161" label="DOTTI; fff0"/>
  <int value="336095190" label="fe1c"/>
  <int value="337129282" label="fe73"/>
  <int value="347254994" label="feb6"/>
  <int value="350589357" label="fe8e"/>
  <int value="353919198" label="fe41"/>
  <int value="367801999" label="fe19"/>
  <int value="381944619" label="continuous_glucose_monitoring"/>
  <int value="393442080" label="fe47"/>
  <int value="404751265" label="fe34"/>
  <int value="406443827" label="fe08"/>
  <int value="406667138" label="fe1b"/>
  <int value="408422717" label="fe12"/>
  <int value="411422080" label="feaf"/>
  <int value="428955508" label="fed8"/>
  <int value="436040838" label="fe49"/>
  <int value="442258066" label="fec6"/>
  <int value="448479874" label="fe13"/>
  <int value="452749537" label="fe6f"/>
  <int value="486403409" label="fe7e"/>
  <int value="493187195"
      label="Insight cards; 13630000-aeb9-10cf-ef69-81e145a91113"/>
  <int value="499379297" label="fe0c"/>
  <int value="517314925" label="fe0e"/>
  <int value="534472233" label="feea"/>
  <int value="535574137" label="feb1"/>
  <int value="547028880" label="fed0"/>
  <int value="547391938" label="feee"/>
  <int value="563178896" label="fec8"/>
  <int value="572734315"
      label="Sphero Robot; 22bb746f-2bb0-7554-2d6f-726568705327"/>
  <int value="587509991" label="feba"/>
  <int value="593291030" label="fe80"/>
  <int value="593725623" label="fef8"/>
  <int value="594122172" label="health_thermometer"/>
  <int value="598801180" label="fe64"/>
  <int value="599398840" label="feb4"/>
  <int value="601952480"
      label="PowerUp RC plane; 75b64e51-f181-4ed1-921a-476090d80ba7"/>
  <int value="603143198" label="fef5"/>
  <int value="604112254" label="fee4"/>
  <int value="617434027" label="fe59"/>
  <int value="621358948" label="fec7"/>
  <int value="633977000" label="fedf"/>
  <int value="642914459" label="fe3d"/>
  <int value="643543662" label="fefe"/>
  <int value="675211143" label="fe4a"/>
  <int value="677930586" label="fe11"/>
  <int value="683753134" label="fe82"/>
  <int value="684646659" label="febb"/>
  <int value="687580695" label="fe7a"/>
  <int value="687720133" label="fe91"/>
  <int value="688383299" label="fe1f"/>
  <int value="690691504" label="bond_management"/>
  <int value="695100933" label="fed4"/>
  <int value="702341883" label="fed5"/>
  <int value="703883979" label="fe87"/>
  <int value="706159123" label="fe32"/>
  <int value="712814660"
      label="Eddystone-URL Beacon Configuration;
             ee0c2080-8786-40ba-ab96-99b91ac981d8"/>
  <int value="739317418" label="fe05"/>
  <int value="741183887" label="fe78"/>
  <int value="749323131" label="fece"/>
  <int value="762562796" label="fe5e"/>
  <int value="775377708" label="fe2b"/>
  <int value="780195705" label="fead"/>
  <int value="786171562" label="fe0a"/>
  <int value="803680658" label="fea3"/>
  <int value="805645044" label="glucose"/>
  <int value="807272540" label="fe1a"/>
  <int value="817497010" label="fe18"/>
  <int value="836214784" label="cycling_power"/>
  <int value="841972234" label="feeb"/>
  <int value="869059214" label="next_dst_change"/>
  <int value="869682406" label="fe60"/>
  <int value="876407493" label="location_and_navigation"/>
  <int value="878416856" label="fe85"/>
  <int value="879242624"
      label="nRF candy machine; a6c31337-6c07-453e-961a-d8a8a41bf368"/>
  <int value="882315332" label="fe55"/>
  <int value="889111031" label="fecd"/>
  <int value="890629650" label="running_speed_and_cadence"/>
  <int value="901700952" label="fedd"/>
  <int value="902817086" label="fea2"/>
  <int value="918911989" label="fed1"/>
  <int value="931929648" label="Mi Band; fee0"/>
  <int value="935427983" label="fed7"/>
  <int value="936179325" label="feb5"/>
  <int value="939739701" label="fe8f"/>
  <int value="939958322" label="febc"/>
  <int value="940942235" label="feef"/>
  <int value="953202155" label="fe8d"/>
  <int value="960854785" label="fe53"/>
  <int value="961193127" label="feb8"/>
  <int value="963656436" label="fe77"/>
  <int value="1001310815" label="fe75"/>
  <int value="1024550252" label="feda"/>
  <int value="1029767622" label="internet_protocol_support"/>
  <int value="1035129135" label="fe74"/>
  <int value="1044298649" label="fe99"/>
  <int value="1047979067" label="fe17"/>
  <int value="1054370387" label="fef9"/>
  <int value="1061554458" label="feaa"/>
  <int value="1067649821" label="fe3f"/>
  <int value="1079263879" label="fe06"/>
  <int value="1085187782" label="feae"/>
  <int value="1088150526" label="feb2"/>
  <int value="1091337779" label="fefb"/>
  <int value="1096286291" label="fed6"/>
  <int value="1102290958" label="fe56"/>
  <int value="1103440256" label="fee9"/>
  <int value="1107293675" label="cycling_speed_and_cadence"/>
  <int value="1107743017" label="fe00"/>
  <int value="1108163795" label="fec0"/>
  <int value="1108885324" label="fe48"/>
  <int value="1122138707" label="fed2"/>
  <int value="1122276223" label="fe67"/>
  <int value="1122861451" label="Playbulb Candle; ff02"/>
  <int value="1132318862" label="fe6a"/>
  <int value="1133574029" label="fede"/>
  <int value="1134418737" label="fed9"/>
  <int value="1146291045" label="fe2e"/>
  <int value="1155522736" label="fea0"/>
  <int value="1181418959" label="feca"/>
  <int value="1185484517" label="fe02"/>
  <int value="1188875912" label="phone_alert_status"/>
  <int value="1204532270" label="fea1"/>
  <int value="1205730714" label="fe81"/>
  <int value="1213218283" label="feb7"/>
  <int value="1219993345" label="device_information"/>
  <int value="1225001939" label="fe6c"/>
  <int value="1235220658" label="fe6e"/>
  <int value="1236903028" label="fe9d"/>
  <int value="1239202871" label="generic_attribute"/>
  <int value="1244946418" label="fe61"/>
  <int value="1250531601" label="fe15"/>
  <int value="1257014053" label="fe33"/>
  <int value="1262008705" label="fef2"/>
  <int value="1265172773" label="indoor_positioning"/>
  <int value="1265779630" label="fe7d"/>
  <int value="1275725183" label="febe"/>
  <int value="1276692887" label="fe09"/>
  <int value="1280998251" label="blood_pressure"/>
  <int value="1289827687" label="fe7c"/>
  <int value="1293391247" label="fea4"/>
  <int value="1295501517" label="fef3"/>
  <int value="1300474367" label="fe70"/>
  <int value="1300496660" label="fe23"/>
  <int value="1327498374"
      label="nRF UART; 6e400001-b5a3-f393-e0a9-e50e24dcca9e"/>
  <int value="1344502489" label="fe92"/>
  <int value="1352591424" label="fe2d"/>
  <int value="1357782294" label="fe90"/>
  <int value="1357850359" label="fefc"/>
  <int value="1362860533" label="fe9a"/>
  <int value="1366014117" label="fe2c"/>
  <int value="1369789354" label="current_time"/>
  <int value="1376579922" label="fef0"/>
  <int value="1377872916" label="fe51"/>
  <int value="1380007534" label="fe96"/>
  <int value="1382767841" label="fe93"/>
  <int value="1394327958" label="fe24"/>
  <int value="1398099241" label="user_data"/>
  <int value="1402127045" label="fef4"/>
  <int value="1415105941" label="scan_parameters"/>
  <int value="1416866355" label="fe3b"/>
  <int value="1422100109"
      label="Sphero Robot; 22bb746f-2ba0-7554-2d6f-726568705327"/>
  <int value="1424865940" label="alert_notification"/>
  <int value="1432421356" label="fe14"/>
  <int value="1433847022" label="fefa"/>
  <int value="1465794357" label="feb0"/>
  <int value="1484296385" label="fe30"/>
  <int value="1513113754" label="fe39"/>
  <int value="1515793787" label="fef1"/>
  <int value="1548928839" label="fec5"/>
  <int value="1549672811"
      label="nRF candy machine; b6c31337-6c07-453e-961a-d8a8a41bf368"/>
  <int value="1553614739" label="fe6b"/>
  <int value="1563543855" label="fe72"/>
  <int value="1569655226" label="generic_access"/>
  <int value="1573199922" label="fe71"/>
  <int value="1594426590" label="fe4e"/>
  <int value="1600490722" label="fe46"/>
  <int value="1604724337" label="fe88"/>
  <int value="1606985074" label="feed"/>
  <int value="1607594729" label="fe0f"/>
  <int value="1618872680" label="fe9b"/>
  <int value="1631386264" label="fefd"/>
  <int value="1635890706" label="fe9e"/>
  <int value="1637021391" label="fe95"/>
  <int value="1638012344" label="fe97"/>
  <int value="1648320092" label="fe7f"/>
  <int value="1651126525" label="fe25"/>
  <int value="1651610232" label="fe52"/>
  <int value="1660904097" label="immediate_alert"/>
  <int value="1663141542" label="battery_service"/>
  <int value="1671670551" label="fe5a"/>
  <int value="1673238799" label="fee3"/>
  <int value="1680929515" label="fe79"/>
  <int value="1681595304" label="fe4b"/>
  <int value="1682716946" label="fe45"/>
  <int value="1694516494" label="fe31"/>
  <int value="1696287138" label="weight_scale"/>
  <int value="1701893879" label="feac"/>
  <int value="1706666451" label="fea7"/>
  <int value="1714031075" label="fe10"/>
  <int value="1724509641" label="fe8b"/>
  <int value="1729966097"
      label="Anki OVERDRIVE cars; be15beef-6186-407e-8381-0bd89c4d8df4"/>
  <int value="1753170093" label="environmental_sensing"/>
  <int value="1763555668" label="fe76"/>
  <int value="1779377938" label="fe5d"/>
  <int value="1784351685" label="feab"/>
  <int value="1788143374" label="feb3"/>
  <int value="1788905945" label="fedb"/>
  <int value="1789684919" label="fe36"/>
  <int value="1805849785" label="fe98"/>
  <int value="1808789304" label="fe3a"/>
  <int value="1821803686" label="TI SensorTag Simple Keys; ffe0"/>
  <int value="1823176820" label="body_composition"/>
  <int value="1826466999" label="fee1"/>
  <int value="1829698279" label="fe0b"/>
  <int value="1833458622" label="fe42"/>
  <int value="1844072312" label="fe40"/>
  <int value="1849709266" label="fec3"/>
  <int value="1855849484"
      label="iHealth Edge; 636f6d2e-6a69-7561-6e2e-414d56313100"/>
  <int value="1891274929" label="fee2"/>
  <int value="1891804450" label="fe58"/>
  <int value="1905398969" label="fee6"/>
  <int value="1915568448" label="fe89"/>
  <int value="1922068523" label="fef6"/>
  <int value="1922152740" label="fe8a"/>
  <int value="1922853101" label="fe28"/>
  <int value="1925022679" label="fe57"/>
  <int value="1940012814" label="fe2a"/>
  <int value="1942373991"
      label="Eddystone-URL Beacon Configuration v2;
             a3c87500-8ed3-4bdf-8a39-a01bebede295"/>
  <int value="1946977319" label="fec1"/>
  <int value="1953707948" label="fe9f"/>
  <int value="1960388103" label="fecb"/>
  <int value="1969478137" label="fe63"/>
  <int value="1970234661" label="reference_time_update"/>
  <int value="1971997463" label="fe07"/>
  <int value="1976176123" label="fe4c"/>
  <int value="1983035069" label="fec9"/>
  <int value="1984351068" label="fea6"/>
  <int value="2016025023" label="febd"/>
  <int value="2017827114" label="fe4f"/>
  <int value="2022676622" label="fe35"/>
  <int value="2051635436" label="fe50"/>
  <int value="2055825405" label="fedc"/>
  <int value="2058080782" label="fecc"/>
  <int value="2061595680" label="fea5"/>
  <int value="2069612985" label="fee5"/>
  <int value="2070392722" label="fec2"/>
  <int value="2075745564" label="heart_rate"/>
  <int value="2081534039" label="fe83"/>
  <int value="2086529225" label="tx_power"/>
  <int value="2097896377" label="fee8"/>
  <int value="2100033855" label="fef7"/>
  <int value="2107223399" label="fee7"/>
  <int value="2108894990" label="fe2f"/>
  <int value="2110412550" label="fe43"/>
  <int value="2113887919" label="fe5b"/>
  <int value="2115271248" label="fe94"/>
  <int value="2132514937" label="feec"/>
  <int value="2136716957" label="fe69"/>
</enum>

<enum name="GCMCheckinRequestStatus" type="int">
  <int value="0" label="Success"/>
  <int value="1" label="URL fetching failed"/>
  <int value="2" label="HTTP bad request"/>
  <int value="3" label="HTTP unauthorized"/>
  <int value="4" label="HTTP not OK"/>
  <int value="5" label="Response parsing failed"/>
  <int value="6" label="Zero ID or token"/>
</enum>

<enum name="GCMConnectionResetReason" type="int">
  <int value="0" label="Login failure"/>
  <int value="1" label="Close command"/>
  <int value="2" label="Heartbeat failure"/>
  <int value="3" label="Socket failure"/>
  <int value="4" label="Network change"/>
  <int value="5" label="New heartbeat interval"/>
</enum>

<enum name="GCMDecryptionResult" type="int">
  <int value="0" label="Success (message unencrypted)"/>
  <int value="1" label="Success (message decrypted)"/>
  <int value="2" label="Failure (invalid Encryption HTTP header)"/>
  <int value="3" label="Failure (invalid Crypto-Key HTTP header)"/>
  <int value="4" label="Failure (no keying material available)"/>
  <int value="5" label="Failure (unable to compute the shared secret)"/>
  <int value="6" label="Failure (unable to decrypt using AES-GCM)"/>
</enum>

<enum name="GCMEndpoints" type="int">
  <int value="0" label="mtalk.google.com:5228"/>
  <int value="1" label="mtalk.google.com:443"/>
</enum>

<enum name="GCMInvalidationsIncomingMessageStatus" type="int">
  <int value="0" label="Success"/>
  <int value="1" label="GCM message's content missing or empty"/>
  <int value="2" label="Base64Decode failed"/>
  <int value="3" label="Parsing protobuf failed"/>
</enum>

<enum name="GCMInvalidationsOutgoingMessageStatus" type="int">
  <int value="0" label="Success"/>
  <int value="1" label="Message was discarded"/>
  <int value="2" label="Access token request failed"/>
  <int value="3" label="HTTP Post failed"/>
</enum>

<enum name="GCMLoadStatus" type="int">
  <int value="0" label="Success"/>
  <int value="1" label="Reloading open store"/>
  <int value="2" label="Store open failed"/>
  <int value="3" label="Loading device credentials failed"/>
  <int value="4" label="Loading registrations failed"/>
  <int value="5" label="Loading incoming messages failed"/>
  <int value="6" label="Loading outgoing messages failed"/>
  <int value="7" label="Loading last checkin info failed"/>
  <int value="8" label="Loading gservice settings failed"/>
  <int value="9" label="Loading account mapping failed"/>
  <int value="10" label="Loading last token time failed"/>
  <int value="11" label="Loading heartbeat intervals failed"/>
  <int value="12" label="Loading Instance ID data failed"/>
  <int value="13" label="Store does not exist"/>
</enum>

<enum name="GCMOutgoingMessageTTLCategory" type="int">
  <int value="0" label="Zero"/>
  <int value="1" label="Less than or equal to 1 minute"/>
  <int value="2" label="Less than or equal to 1 hour"/>
  <int value="3" label="Less than or equal to 1 day"/>
  <int value="4" label="Less than or equal to 1 week"/>
  <int value="5" label="More than 1 week but less than maximum"/>
  <int value="6" label="Default or maximium time"/>
</enum>

<enum name="GcmReceiverStatus" type="int">
  <obsolete>
    Deprecated as of 01/2016. The error has been fixed by GCM. (crbug/580367)
  </obsolete>
  <int value="0" label="SUCCESS"/>
  <int value="1" label="ERROR_SECURITY_EXCEPTION"/>
</enum>

<enum name="GCMRegistrationRequestStatus" type="int">
  <int value="0" label="Success (this is not logged currently)"/>
  <int value="1" label="Invalid parameters"/>
  <int value="2" label="Invalid sender"/>
  <int value="3" label="Authentication failed"/>
  <int value="4" label="Device registration error"/>
  <int value="5" label="Unknown error"/>
  <int value="6" label="URL fetching failed"/>
  <int value="7" label="HTTP not OK"/>
  <int value="8" label="Response parsing failed"/>
  <int value="9" label="Reached maximum number of retries"/>
</enum>

<enum name="GCMResetStoreError" type="int">
  <int value="0" label="Destroying store failed"/>
  <int value="1" label="Infinite store reset"/>
</enum>

<enum name="GCMUnregistrationRequestStatus" type="int">
  <int value="0" label="Success"/>
  <int value="1" label="URL fetching failed"/>
  <int value="2" label="No response body"/>
  <int value="3" label="Response parsing failed"/>
  <int value="4" label="Incorrect App Id"/>
  <int value="5" label="Invalid parameters"/>
  <int value="6" label="Service unavailable"/>
  <int value="7" label="Internal server error"/>
  <int value="8" label="HTTP reponse code not OK"/>
  <int value="9" label="Unknown error"/>
  <int value="10" label="Reached maximum number of retries"/>
</enum>

<enum name="GCMUpstreamMessageStatus" type="int">
  <int value="0" label="Success"/>
  <int value="1" label="Message size limit exceeded"/>
  <int value="2" label="Access token request failed"/>
  <int value="3" label="Send request failed"/>
</enum>

<enum name="GCReason" type="int">
  <int value="0" label="Idle GC"/>
  <int value="1" label="Precise GC"/>
  <int value="2" label="Conservative GC"/>
  <int value="3" label="Forced GC for testing"/>
  <int value="4" label="Memory pressure GC"/>
  <int value="5" label="Page navigation GC"/>
</enum>

<enum name="GDataAuthResult" type="int">
  <int value="0" label="FAILURE"/>
  <int value="1" label="SUCCESS"/>
  <int value="2" label="NO_CONNECTION"/>
</enum>

<enum name="GDataEntryKind" type="int">
  <obsolete>
    Deprecated 9/2012, and replaced by DriveEntryKind
  </obsolete>
  <int value="0" label="UNKNOWN"/>
  <int value="4097" label="ITEM"/>
  <int value="4098" label="SITE"/>
  <int value="8449" label="DOCUMENT"/>
  <int value="8450" label="SPEREADSHEET"/>
  <int value="8451" label="PRESENTATION"/>
  <int value="8452" label="DRAWING"/>
  <int value="8453" label="TABLE"/>
  <int value="8705" label="EXTERNAL_APP"/>
  <int value="16385" label="FOLDER"/>
  <int value="32769" label="FILE"/>
  <int value="32770" label="PDF"/>
</enum>

<enum name="GeolocationInfoBarDelegateAndroidEvent" type="int">
  <obsolete>
    Deprecated 9/2014, and replaced by PermissionAction.
  </obsolete>
  <int value="0" label="User allowed the page to use geolocation">
    For the Android platform the count for this event should be exactly the same
    as the corresponding event in the GeolocationInfoBarDelegateEvent enum.
  </int>
  <int value="1" label="User opened geolocation settings"/>
</enum>

<enum name="GeolocationInfoBarDelegateEvent" type="int">
  <obsolete>
    Deprecated 9/2014, and replaced by PermissionAction.
  </obsolete>
  <int value="0" label="The bar was created"/>
  <int value="1" label="User allowed use of geolocation"/>
  <int value="2" label="User denied use of geolocation"/>
  <int value="3" label="User dismissed the bar"/>
  <int value="4" label="User clicked on link"/>
  <int value="5" label="User ignored the bar"/>
</enum>

<enum name="GeopositionErrorCode" type="int">
  <int value="0" label="There was no error"/>
  <int value="1" label="User denied use of geolocation"/>
  <int value="2" label="Geoposition could not be determined"/>
  <int value="3" label="Timeout"/>
</enum>

<enum name="GestureActionType" type="int">
  <int value="0" label="Unknown"/>
  <int value="1" label="Omnibox pinch"/>
  <int value="2" label="Omnibox scroll"/>
  <int value="3" label="Tabstrip pinch"/>
  <int value="4" label="Tabstrip scroll"/>
  <int value="5" label="Bezel scroll"/>
  <int value="6" label="Desktop scroll"/>
  <int value="7" label="Desktop pinch"/>
  <int value="8" label="Webpage pinch"/>
  <int value="9" label="Webpage scroll"/>
  <int value="10" label="Webpage tap"/>
  <int value="11" label="Tabstrip tap"/>
  <int value="12" label="Bezel down"/>
  <int value="13" label="Tab switched tap"/>
  <int value="14" label="Active tab tap"/>
  <int value="15" label="Tab close button tap"/>
  <int value="16" label="New tab button tap"/>
  <int value="17" label="Top edge of window tap"/>
  <int value="18" label="Window size button tap"/>
  <int value="19" label="Area surrounding tabstrip tap"/>
  <int value="20" label="Window resized double tap"/>
</enum>

<enum name="GesturePredictionResult" type="int">
  <int value="0" label="Gesture occured and was predicted"/>
  <int value="1" label="Gesture occured but was not predicted"/>
  <int value="2" label="Gesture predicted but didn't occur"/>
</enum>

<enum name="GetPerfDataOutcome" type="int">
  <int value="0" label="Success.">
    Perf data was collected, parsed and attached to the UMA protobuf
    successfully.
  </int>
  <int value="1" label="No perf data ready to be uploaded.">
    Could not add perf data to the UMA protobuf because no perf data was ready
    to be uploaded.
  </int>
  <int value="2" label="Collection timer triggered but have data already.">
    Perf timer triggered but the perf provider already had a perf data proto to
    be added to the UMA protobuf.
  </int>
  <int value="3"
      label="Collection timer triggered but incognito window active.">
    Perf timer triggered but an incognito window was open.
  </int>
  <int value="4" label="Incognito window launched during collection.">
    Perf data was collected but an incognito window was opened during the
    collection.
  </int>
  <int value="5" label="Protobuf returned by debugd not deserialized.">
    Perf data was collected and sent to Chrome as a serialized protobuf but it
    could not be deserialized by Chrome.
  </int>
  <int value="6" label="Illegal data returned by debugd.">
    The perf data sent back to Chrome by debugd is invalid.
  </int>
  <int value="7" label="Already collecting.">
    A perf data collection was already active.
  </int>
</enum>

<enum name="GetUserDataTempDirResult" type="int">
  <int value="0" label="SUCCESS"/>
  <int value="1" label="CANT_GET_PARENT_PATH"/>
  <int value="2" label="CANT_GET_UDT_PATH"/>
  <int value="3" label="NOT_A_DIRECTORY"/>
  <int value="4" label="CANT_CREATE_DIR"/>
  <int value="5" label="CANT_WRITE_TO_PATH"/>
  <int value="6" label="UNSET"/>
</enum>

<enum name="GLError" type="int">
  <int value="0" label="0x0000 - GL_NO_ERROR"/>
  <int value="1280" label="0x0500 - GL_INVALID_ENUM"/>
  <int value="1281" label="0x0501 - GL_INVALID_VALUE"/>
  <int value="1282" label="0x0502 - GL_INVALID_OPERATION"/>
  <int value="1285" label="0x0505 - GL_OUT_OF_MEMORY"/>
  <int value="1286" label="0x0506 - GL_INVALID_FRAMEBUFFER_OPERATION"/>
</enum>

<enum name="GoogleCaptchaEvent" type="int">
  <int value="0" label="Google CAPTCHA shown"/>
  <int value="1" label="Google CAPTCHA solved"/>
</enum>

<enum name="GoogleNowCardTypeId" type="int">
  <summary>
    Represents a card type ID. See cardTypeId in
    chrome/browser/resources/google_now/background.js.
  </summary>
  <int value="1" label="Frequent Place"/>
  <int value="7" label="Weather"/>
  <int value="12" label="Flight Status"/>
  <int value="13" label="Sport Score"/>
  <int value="14" label="Calendar"/>
  <int value="19" label="Public Alert"/>
  <int value="21" label="Stock Quote List"/>
  <int value="23" label="Package Tracking"/>
  <int value="27" label="Birthday"/>
  <int value="43" label="Reminder"/>
</enum>

<enum name="GoogleNowEvent" type="int">
  <summary>
    Events in Google Now component extension. See GoogleNowEvent in
    chrome/browser/resources/google_now/background.js.
  </summary>
  <int value="0" label="REQUEST_FOR_CARDS_TOTAL"/>
  <int value="1" label="REQUEST_FOR_CARDS_SUCCESS"/>
  <int value="2" label="CARDS_PARSE_SUCCESS"/>
  <int value="3" label="DISMISS_REQUEST_TOTAL"/>
  <int value="4" label="DISMISS_REQUEST_SUCCESS"/>
  <int value="5" label="LOCATION_REQUEST"/>
  <int value="6" label="DELETED_LOCATION_UPDATE"/>
  <int value="7" label="EXTENSION_START"/>
  <int value="8" label="DELETED_SHOW_WELCOME_TOAST"/>
  <int value="9" label="STOPPED"/>
  <int value="10" label="DELETED_USER_SUPPRESSED"/>
  <int value="11" label="SIGNED_OUT"/>
  <int value="12" label="NOTIFICATION_DISABLED"/>
  <int value="13" label="GOOGLE_NOW_DISABLED"/>
</enum>

<enum name="GooglePlayServicesConnectionResult" type="int">
  <summary>
    Results of attempting a connection to Google Play Services. See Javadoc for
    com.google.android.gms.common.ConnectionResult at
    http://developer.android.com/reference for more information.
  </summary>
  <int value="0" label="SUCCESS"/>
  <int value="1" label="SERVICE_MISSING"/>
  <int value="2" label="SERVICE_VERSION_UPDATE_REQUIRED"/>
  <int value="3" label="SERVICE_DISABLED"/>
  <int value="4" label="SIGN_IN_REQUIRED"/>
  <int value="5" label="INVALID_ACCOUNT"/>
  <int value="6" label="RESOLUTION_REQUIRED"/>
  <int value="7" label="NETWORK_ERROR"/>
  <int value="8" label="INTERNAL_ERROR"/>
  <int value="9" label="SERVICE_INVALID"/>
  <int value="10" label="DEVELOPER_ERROR"/>
  <int value="11" label="LICENSE_CHECK_FAILED"/>
  <int value="12" label="DATE_INVALID"/>
  <int value="13" label="CANCELED"/>
  <int value="14" label="TIMEOUT"/>
  <int value="15" label="INTERRUPTED"/>
  <int value="16" label="API_UNAVAILABLE"/>
  <int value="17" label="SIGN_IN_FAILED"/>
  <int value="18" label="SERVICE_UPDATING"/>
  <int value="1500" label="DRIVE_EXTERNAL_STORAGE_REQUIRED"/>
</enum>

<enum name="GooglePlayServicesErrorHandlerAction" type="int">
  <summary>
    Types of action taken in response to Google Play Services user-recoverable
    errors. See subclasses of UserRecoverableErrorHandler in
    org.chromium.chrome.browser.externalauth.ExternalAuthUtils for more
    information.
  </summary>
  <int value="0" label="SILENT"/>
  <int value="1" label="SYSTEM_NOTIFICATION"/>
  <int value="2" label="MODAL_DIALOG"/>
  <int value="3" label="IGNORED_AS_REDUNDANT"/>
</enum>

<enum name="GoogleServiceAuthError" type="int">
  <int value="0" label="NONE"/>
  <int value="1" label="INVALID_GAIA_CREDENTIALS"/>
  <int value="2" label="USER_NOT_SIGNED_UP"/>
  <int value="3" label="CONNECTION_FAILED"/>
  <int value="4" label="CAPTCHA_REQUIRED"/>
  <int value="5" label="ACCOUNT_DELETED"/>
  <int value="6" label="ACCOUNT_DISABLED"/>
  <int value="7" label="SERVICE_UNAVAILABLE"/>
  <int value="8" label="TWO_FACTOR"/>
  <int value="9" label="REQUEST_CANCELED"/>
  <int value="10" label="HOSTED_NOT_ALLOWED"/>
  <int value="11" label="UNEXPECTED_SERVICE_RESPONSE"/>
  <int value="12" label="SERVICE_ERROR"/>
  <int value="13" label="WEB_LOGIN_REQUIRED"/>
</enum>

<enum name="GoogleUpdateAfterItemClickedActions" type="int">
  <int value="0" label="Updated"/>
  <int value="1" label="Not updated"/>
</enum>

<enum name="GoogleUpdateErrorCode" type="int">
  <int value="0" label="GOOGLE_UPDATE_NO_ERROR"/>
  <int value="1" label="CANNOT_UPGRADE_CHROME_IN_THIS_DIRECTORY"/>
  <int value="2" label="GOOGLE_UPDATE_JOB_SERVER_CREATION_FAILED"/>
  <int value="3" label="GOOGLE_UPDATE_ONDEMAND_CLASS_NOT_FOUND"/>
  <int value="4" label="GOOGLE_UPDATE_ONDEMAND_CLASS_REPORTED_ERROR"/>
  <int value="5" label="GOOGLE_UPDATE_GET_RESULT_CALL_FAILED"/>
  <int value="6" label="GOOGLE_UPDATE_GET_VERSION_INFO_FAILED"/>
  <int value="7" label="GOOGLE_UPDATE_ERROR_UPDATING"/>
  <int value="8" label="GOOGLE_UPDATE_DISABLED_BY_POLICY"/>
  <int value="9" label="GOOGLE_UPDATE_DISABLED_BY_POLICY_AUTO_ONLY"/>
</enum>

<enum name="GoogleUpdateInfoBarActions" type="int">
  <int value="0" label="Clicked close"/>
  <int value="1" label="Clicked to update appears successful"/>
  <int value="2" label="Clicked to update but failed"/>
  <int value="3" label="InfoBar dismissed implicitly (no interaction)"/>
</enum>

<enum name="GoogleUpdateMenuItemActions" type="int">
  <int value="0" label="Not clicked"/>
  <int value="1" label="Clicked, intent launched"/>
  <int value="2" label="Clicked, intent failed"/>
</enum>

<enum name="GoogleUpdateUpgradeStatus" type="int">
  <int value="0" label="UPGRADE_STARTED"/>
  <int value="1" label="UPGRADE_CHECK_STARTED"/>
  <int value="2" label="UPGRADE_IS_AVAILABLE"/>
  <int value="3" label="UPGRADE_SUCCESSFUL"/>
  <int value="4" label="UPGRADE_ALREADY_UP_TO_DATE"/>
  <int value="5" label="UPGRADE_ERROR"/>
</enum>

<enum name="GPUProcessLaunchCauses" type="int">
  <summary>
    Causes for the GPU Process to be launched. From:
    content/common/gpu/gpu_process_launch_causes.h
  </summary>
  <int value="0" label="about:gpucrash">
    CAUSE_FOR_GPU_LAUNCH_ABOUT_GPUCRASH
  </int>
  <int value="1" label="about:gpuhang">CAUSE_FOR_GPU_LAUNCH_ABOUT_GPUHANG</int>
  <int value="2" label="GpuDataManager RequestCompleteGpuInfoIfNeeded">
    CAUSE_FOR_GPU_LAUNCH_GPUDATAMANAGER_REQUESTCOMPLETEGPUINFOIFNEEDED
  </int>
  <int value="3" label="RenderWidgetFullScreenPepper CreateContext">
    CAUSE_FOR_GPU_LAUNCH_RENDERWIDGETFULLSCREENPEPPER_CREATECONTEXT
  </int>
  <int value="4" label="WebGraphicsContext3DCommandBufferImpl Initialize">
    CAUSE_FOR_GPU_LAUNCH_WEBGRAPHICSCONTEXT3DCOMMANDBUFFERIMPL_INITIALIZE
  </int>
  <int value="5" label="NoLaunch">CAUSE_FOR_GPU_LAUNCH_NO_LAUNCH</int>
  <int value="6" label="VideoDecodeAccelerator Initialize">
    CAUSE_FOR_GPU_LAUNCH_VIDEODECODEACCELERATOR_INITIALIZE
  </int>
  <int value="7" label="Pepper PlatformContext3DImpl Initialize">
    CAUSE_FOR_GPU_LAUNCH_PEPPERPLATFORMCONTEXT3DIMPL_INITIALIZE
  </int>
  <int value="8" label="Browser Startup">
    CAUSE_FOR_GPU_LAUNCH_BROWSER_STARTUP
  </int>
  <int value="9" label="Canvas 2D">CAUSE_FOR_GPU_LAUNCH_CANVAS_2D</int>
  <int value="10" label="Pepper VideoEncodeAccelerator Initialize">
    CAUSE_FOR_GPU_LAUNCH_PEPPERVIDEOENCODERACCELERATOR_INITIALIZE
  </int>
  <int value="11" label="GpuMemoryBuffer allocate">
    CAUSE_FOR_GPU_LAUNCH_GPU_MEMORY_BUFFER_ALLOCATE
  </int>
  <int value="12" label="JpegDecodeAccelerator Initialize">
    CAUSE_FOR_GPU_LAUNCH_JPEGDECODEACCELERATOR_INITIALIZE
  </int>
  <int value="13" label="Mojo Setup">CAUSE_FOR_GPU_LAUNCH_MOJO_SETUP</int>
  <int value="14" label="Get Gpu Service Registry">
    CAUSE_FOR_GPU_LAUNCH_GET_GPU_SERVICE_REGISTRY
  </int>
  <int value="15" label="Browser shared main thread context">
    CAUSE_FOR_GPU_LAUNCH_BROWSER_SHARED_MAIN_THREAD_CONTEXT
  </int>
  <int value="16" label="Renderer shared main thread context">
    CAUSE_FOR_GPU_LAUNCH_RENDERER_SHARED_MAIN_THREAD_CONTEXT
  </int>
  <int value="17" label="WebGL context">CAUSE_FOR_GPU_LAUNCH_WEBGL_CONTEXT</int>
  <int value="18" label="Shared worker thread context">
    CAUSE_FOR_GPU_LAUNCH_SHARED_WORKER_THREAD_CONTEXT
  </int>
  <int value="19" label="Renderer verify GPU compositing">
    CAUSE_FOR_GPU_LAUNCH_RENDERER_VERIFY_GPU_COMPOSITING
  </int>
  <int value="20" label="Display compositor context">
    CAUSE_FOR_GPU_LAUNCH_DISPLAY_COMPOSITOR_CONTEXT
  </int>
  <int value="21" label="Media worker context">
    CAUSE_FOR_GPU_LAUNCH_MEDIA_CONTEXT
  </int>
</enum>

<enum name="GzipEncodingFixupResult" type="int">
  <int value="0" label="Gzip encoding left as-is"/>
  <int value="1" label="MIME type indicated GZIP content"/>
  <int value="2" label="Explicit download with GZIP filename extension"/>
  <int value="3" label="Unhandled MIME type with a GZIP filename extension"/>
</enum>

<enum name="HadFormInteraction" type="int">
  <int value="0" label="No form interaction"/>
  <int value="1" label="Observed form interaction"/>
</enum>

<enum name="HIDContinueScenarioType" type="int">
  <summary>Possible detected devices combination on leaving dialog</summary>
  <int value="0" label="Pointing device only detected."/>
  <int value="1" label="Keyboard device only detected."/>
  <int value="2" label="Both devices, pointing and keyboard, detected."/>
</enum>

<enum name="HistogramActivityReport" type="int">
  <int value="0" label="Reports created"/>
  <int value="1" label="Histograms created"/>
  <int value="2" label="Histograms found by look-up"/>
  <int value="3" label="Logarithmic histograms created"/>
  <int value="4" label="Linear histograms created"/>
  <int value="5" label="Boolean histograms created"/>
  <int value="6" label="Custom histograms created"/>
  <int value="7" label="Sparse histograms created"/>
  <int value="8" label="UMA-targeted histograms created"/>
  <int value="9" label="UMA-stability histograms created"/>
  <int value="10" label="Persistent histograms created"/>
</enum>

<enum name="HistoryFaviconsRecoveryEnum" type="int">
  <summary>Error states noted in thumbnail_database.cc recovery code.</summary>
  <int value="0" label="RECOVERY_EVENT_RECOVERED">Successful recovery.</int>
  <int value="1" label="RECOVERY_EVENT_FAILED_SCOPER">
    sql::Recovery failed init.
  </int>
  <int value="2" label="RECOVERY_EVENT_FAILED_META_VERSION_ERROR">
    Query failed against recovery meta table.
  </int>
  <int value="3" label="RECOVERY_EVENT_FAILED_META_VERSION_NONE">
    No version row in recovery meta table.
  </int>
  <int value="4" label="RECOVERY_EVENT_FAILED_META_WRONG_VERSION6">
    Recovery meta table has version 6.
  </int>
  <int value="5" label="RECOVERY_EVENT_FAILED_META_WRONG_VERSION5">
    Recovery meta table has version 5.
  </int>
  <int value="6" label="RECOVERY_EVENT_FAILED_META_WRONG_VERSION">
    Recovery meta table has an unexpected version.
  </int>
  <int value="7" label="RECOVERY_EVENT_FAILED_RECOVER_META">
    Failed to create recovery meta table.
  </int>
  <int value="8" label="RECOVERY_EVENT_FAILED_META_INSERT">
    Failed to copy recovery meta table.
  </int>
  <int value="9" label="RECOVERY_EVENT_FAILED_INIT">
    Failed to init target schema.
  </int>
  <int value="10" label="RECOVERY_EVENT_FAILED_RECOVER_FAVICONS">
    Failed to create recovery favicons table.
  </int>
  <int value="11" label="RECOVERY_EVENT_FAILED_FAVICONS_INSERT">
    Failed to copy recovery favicons table.
  </int>
  <int value="12" label="RECOVERY_EVENT_FAILED_RECOVER_FAVICON_BITMAPS">
    Failed to create recovery favicon_bitmaps table.
  </int>
  <int value="13" label="RECOVERY_EVENT_FAILED_FAVICON_BITMAPS_INSERT">
    Failed to copy recovery favicon_bitmaps table.
  </int>
  <int value="14" label="RECOVERY_EVENT_FAILED_RECOVER_ICON_MAPPING">
    Failed to create recovery icon_mapping table.
  </int>
  <int value="15" label="RECOVERY_EVENT_FAILED_ICON_MAPPING_INSERT">
    Failed to copy recovery icon_mapping table.
  </int>
  <int value="16" label="RECOVERY_EVENT_RECOVERED_VERSION6">
    Successful recovery of version 6 database.
  </int>
  <int value="17" label="RECOVERY_EVENT_FAILED_META_INIT">
    Failed sql::MetaTable::Init().
  </int>
  <int value="18" label="RECOVERY_EVENT_FAILED_META_VERSION">
    Failed sql::Recovery::SetupMeta() or GetMetaVersionNumber().
  </int>
  <int value="19" label="RECOVERY_EVENT_DEPRECATED">
    Recovery found deprecated version and razed.
  </int>
  <int value="20" label="RECOVERY_EVENT_FAILED_V5_INITSCHEMA">
    Failed v5 recovery loading schema.
  </int>
  <int value="21" label="RECOVERY_EVENT_FAILED_V5_AUTORECOVER_FAVICONS">
    Failed v5 recovery on favicons.
  </int>
  <int value="22" label="RECOVERY_EVENT_FAILED_V5_AUTORECOVER_ICON_MAPPING">
    Failed v5 recovery on icon_mapping.
  </int>
  <int value="23" label="RECOVERY_EVENT_RECOVERED_VERSION5">
    Successful recovery of version 6 database.
  </int>
  <int value="24" label="RECOVERY_EVENT_FAILED_AUTORECOVER_FAVICONS">
    Failed v6/7 recovery on favicons.
  </int>
  <int value="25" label="RECOVERY_EVENT_FAILED_AUTORECOVER_FAVICON_BITMAPS">
    Failed v6/7 recovery on favicon_bitmaps.
  </int>
  <int value="26" label="RECOVERY_EVENT_FAILED_AUTORECOVER_ICON_MAPPING">
    Failed v6/7 recovery on icon_mapping.
  </int>
  <int value="27" label="RECOVERY_EVENT_FAILED_COMMIT">
    Failed sql::Recovery::Recovered().
  </int>
</enum>

<enum name="HistoryTopSitesRecoveryEnum" type="int">
  <summary>Error states noted in top_sites_database.cc recovery code.</summary>
  <int value="0" label="RECOVERY_EVENT_RECOVERED">Successful recovery.</int>
  <int value="1" label="RECOVERY_EVENT_DEPRECATED">
    Recovery found deprecated version and razed.
  </int>
  <int value="2" label="RECOVERY_EVENT_FAILED_SCOPER">
    sql::Recovery failed init.
  </int>
  <int value="3" label="RECOVERY_EVENT_FAILED_META_VERSION">
    Failed sql::Recovery::SetupMeta() or GetMetaVersionNumber().
  </int>
  <int value="4" label="RECOVERY_EVENT_FAILED_META_WRONG_VERSION">
    Recovery meta table has an unexpected version.
  </int>
  <int value="5" label="RECOVERY_EVENT_FAILED_META_INIT">
    Failed sql::MetaTable::Init().
  </int>
  <int value="6" label="RECOVERY_EVENT_FAILED_SCHEMA_INIT">
    Failed to init target schema.
  </int>
  <int value="7" label="RECOVERY_EVENT_FAILED_AUTORECOVER_THUMBNAILS">
    Failed recovery on thumbnails table.
  </int>
  <int value="8" label="RECOVERY_EVENT_FAILED_COMMIT">
    Failure from sql::Recovery::Recovered().
  </int>
  <int value="9" label="RECOVERY_EVENT_INVARIANT_RANK">
    Rows were deleted because |url_rank| and |last_forced| didn't agree.  Does
    not prevent recovery.
  </int>
  <int value="10" label="RECOVERY_EVENT_INVARIANT_REDIRECT">
    Rows were deleted because |redirects| did not contain |url|.  Does not
    prevent recovery.
  </int>
  <int value="11" label="RECOVERY_EVENT_INVARIANT_CONTIGUOUS">
    |url_rank| was renumbered due to missing rows.  Does not prevent recovery.
  </int>
</enum>

<enum name="HotwordAvailability" type="int">
  <int value="0" label="Unavailable -- reason may be unknown"/>
  <int value="1" label="Available"/>
  <int value="2" label="Pending download"/>
  <int value="3" label="Disabled"/>
</enum>

<enum name="HotwordError" type="int">
  <int value="0" label="No error"/>
  <int value="1" label="Generic error"/>
  <int value="2" label="NaCl error"/>
  <int value="3" label="Microphone error"/>
</enum>

<enum name="HotwordMediaStreamResult" type="int">
  <int value="0" label="Success"/>
  <int value="1" label="Unknown error"/>
  <int value="2" label="NotSupportedError"/>
  <int value="3" label="PermissionDeniedError"/>
  <int value="4" label="ConstraintNotSatisfiedError"/>
  <int value="5" label="OverconstrainedError"/>
  <int value="6" label="NotFoundError"/>
  <int value="7" label="AbortError"/>
  <int value="8" label="SourceUnavailableError"/>
  <int value="9" label="PermissionDismissedError"/>
  <int value="10" label="InvalidStateError"/>
  <int value="11" label="DevicesNotFoundError"/>
  <int value="12" label="InvalidSecurityOriginError"/>
</enum>

<enum name="HotwordNaClMessageTimeout" type="int">
  <int value="0" label="REQUEST_MODEL"/>
  <int value="1" label="MODEL_LOADED"/>
  <int value="2" label="READY_FOR_AUDIO"/>
  <int value="3" label="STOPPED"/>
  <int value="4" label="HOTWORD_DETECTED"/>
  <int value="5" label="MS_CONFIGURED"/>
</enum>

<enum name="HotwordNaClPluginLoadResult" type="int">
  <int value="0" label="Success"/>
  <int value="1" label="Unknown error"/>
  <int value="2" label="Module crash"/>
  <int value="3" label="Module not found"/>
</enum>

<enum name="HotwordPrefState" type="int">
  <int value="0" label="Preference not set"/>
  <int value="1" label="'Classic' hotwording enabled"/>
  <int value="2" label="Hotwording disabled"/>
  <int value="3" label="Always-on hotwording enabled"/>
</enum>

<enum name="HotwordTriggerSource" type="int">
  <int value="0" label="Launcher (except when always-on is enabled)"/>
  <int value="1" label="NTP or google.com"/>
  <int value="2" label="Always-On"/>
  <int value="3" label="Training Mode"/>
</enum>

<enum name="Hresult" type="int">
  <int value="-2147467262" label="E_NOINTERFACE"/>
  <int value="-2147417848" label="RPC_E_DISCONNECTED"/>
  <int value="-2147221164" label="REGDB_E_CLASSNOTREG"/>
  <int value="-2147219437" label="GOOPDATE_E_APP_UPDATE_DISABLED_BY_POLICY"/>
  <int value="-2147219198" label="GOOPDATEINSTALL_E_INSTALLER_FAILED"/>
  <int value="-2147024894" label="ERROR_FILE_NOT_FOUND"/>
  <int value="-2147024893" label="ERROR_PATH_NOT_FOUND"/>
  <int value="-2147024891" label="ERROR_ACCESS_DENIED"/>
  <int value="-2147024703" label="ERROR_BAD_EXE_FORMAT"/>
  <int value="-2147024110" label="ERROR_ACCESS_DISABLED_NO_SAFER_UI_BY_POLICY"/>
  <int value="-2147023838" label="ERROR_SERVICE_DISABLED"/>
  <int value="-2147023673" label="ERROR_CANCELLED"/>
  <int value="-2147023504" label="ERROR_FILE_CORRUPT"/>
  <int value="-2147023436" label="ERROR_TIMEOUT"/>
  <int value="-2147023179" label="RPC_S_UNKNOWN_IF"/>
  <int value="-2147023174" label="RPC_S_SERVER_UNAVAILABLE"/>
  <int value="-2147009295" label="ERROR_INSTALL_PACKAGE_NOT_FOUND"/>
  <int value="-2146959355" label="CO_E_SERVER_EXEC_FAILURE"/>
</enum>

<enum name="HttpAuthCount" type="int">
  <int value="0" label="Basic Start"/>
  <int value="1" label="Basic Reject"/>
  <int value="2" label="Digest Start"/>
  <int value="3" label="Digest Reject"/>
  <int value="4" label="NTLM Start"/>
  <int value="5" label="NTLM Reject"/>
  <int value="6" label="Negotiate Start"/>
  <int value="7" label="Negotiate Reject"/>
</enum>

<enum name="HttpAuthResource" type="int">
  <int value="0" label="Top Page Allowed"/>
  <int value="1" label="Same-domain Sub-resource Allowed"/>
  <int value="2" label="Cross-domain Sub-resource Blocked"/>
  <int value="3" label="Cross-domain Sub-resource Allowed"/>
</enum>

<enum name="HttpAuthTarget" type="int">
  <int value="0" label="Basic Proxy"/>
  <int value="1" label="Basic Secure Proxy"/>
  <int value="2" label="Basic Server"/>
  <int value="3" label="Basic Secure Server"/>
  <int value="4" label="Digest Proxy"/>
  <int value="5" label="Digest Secure Proxy"/>
  <int value="6" label="Digest Server"/>
  <int value="7" label="Digest Secure Server"/>
  <int value="8" label="NTLM Proxy"/>
  <int value="9" label="NTLM Secure Proxy"/>
  <int value="10" label="NTLM Server"/>
  <int value="11" label="NTLM Secure Server"/>
  <int value="12" label="Negotiate Proxy"/>
  <int value="13" label="Negotiate Secure Proxy"/>
  <int value="14" label="Negotiate Server"/>
  <int value="15" label="Negotiate Secure Server"/>
</enum>

<enum name="HttpCachePattern" type="int">
  <int value="0" label="Undefined"/>
  <int value="1" label="Not Covered"/>
  <int value="2" label="Not Cached"/>
  <int value="3" label="Used"/>
  <int value="4" label="Validated"/>
  <int value="5" label="Updated"/>
  <int value="6" label="CantConditionalize"/>
</enum>

<enum name="HttpCacheValidationCause" type="int">
  <int value="0" label="Undefined"/>
  <int value="1" label="Vary Mismatch"/>
  <int value="2" label="Validate Flag"/>
  <int value="3" label="Stale Resource"/>
  <int value="4" label="Zero Freshness"/>
</enum>

<enum name="HttpHeaderParserEvent" type="int">
  <int value="0" label="PARSER_INVOKED"/>
  <int value="1" label="HTTP_09_RESPONSE"/>
  <int value="2" label="ALLOWED_TRUNCATED_HEADERS"/>
  <int value="3" label="SKIPPED_WS_PREFIX"/>
  <int value="4" label="SKIPPED_NON_WS_PREFIX"/>
  <int value="5" label="HTTP_09_RESPONSE_OVER_HTTP"/>
  <int value="6" label="HTTP_09_RESPONSE_OVER_SSL"/>
  <int value="7" label="HEADER_HTTP_09_ON_REUSED_SOCKET"/>
</enum>

<enum name="HttpPipelineStatus" type="int">
  <int value="0" label="Success"/>
  <int value="1" label="Redirected"/>
  <int value="2" label="Certificate error"/>
  <int value="3" label="Bad HTTP response code"/>
  <int value="4" label="Network error"/>
  <int value="5" label="Response too large"/>
  <int value="6" label="Response too small"/>
  <int value="7" label="Response content mismatch"/>
  <int value="8" label="Bad HTTP version"/>
  <int value="9" label="Corrupt stats response"/>
</enum>

<enum name="HttpResponseCode" type="int">
  <int value="100" label="100: Continue"/>
  <int value="101" label="101: Switching Protocols"/>
  <int value="200" label="200: OK"/>
  <int value="201" label="201: Created"/>
  <int value="202" label="202: Accepted"/>
  <int value="203" label="203: Non-Authoritative Information"/>
  <int value="204" label="204: No Content"/>
  <int value="205" label="205: Reset Content"/>
  <int value="206" label="206: Partial Content"/>
  <int value="300" label="300: Multiple Choices"/>
  <int value="301" label="301: Moved Permanently"/>
  <int value="302" label="302: Found"/>
  <int value="303" label="303: See Other"/>
  <int value="304" label="304: Not Modified"/>
  <int value="305" label="305: Use Proxy"/>
  <int value="306" label="306: (Unused)"/>
  <int value="307" label="307: Temporary Redirect"/>
  <int value="400" label="400: Bad Request"/>
  <int value="401" label="401: Unauthorized"/>
  <int value="402" label="402: Payment Required"/>
  <int value="403" label="403: Forbidden"/>
  <int value="404" label="404: Not Found"/>
  <int value="405" label="405: Method Not Allowed"/>
  <int value="406" label="406: Not Acceptable"/>
  <int value="407" label="407: Proxy Authentication Required"/>
  <int value="408" label="408: Request Timeout"/>
  <int value="409" label="409: Conflict"/>
  <int value="410" label="410: Gone"/>
  <int value="411" label="411: Length Required"/>
  <int value="412" label="412: Precondition Failed"/>
  <int value="413" label="413: Request Entity Too Large"/>
  <int value="414" label="414: Request-URI Too Long"/>
  <int value="415" label="415: Unsupported Media Type"/>
  <int value="416" label="416: Requested Range Not Satisfiable"/>
  <int value="417" label="417: Expectation Failed"/>
  <int value="500" label="500: Internal Server Error"/>
  <int value="501" label="501: Not Implemented"/>
  <int value="502" label="502: Bad Gateway"/>
  <int value="503" label="503: Service Unavailable"/>
  <int value="504" label="504: Gateway Timeout"/>
  <int value="505" label="505: HTTP Version Not Supported"/>
</enum>

<enum name="HttpServerPropertiesUpdatePrefsLocation" type="int">
  <int value="0" label="SUPPORTS_SPDY"/>
  <int value="1" label="HTTP_11_REQUIRED"/>
  <int value="2" label="SET_ALTERNATIVE_SERVICE"/>
  <int value="3" label="MARK_ALTERNATIVE_SERVICE_BROKEN"/>
  <int value="4" label="MARK_ALTERNATIVE_SERVICE_RECENTLY_BROKEN"/>
  <int value="5" label="CONFIRM_ALTERNATIVE_SERVICE"/>
  <int value="6" label="CLEAR_ALTERNATIVE_SERVICE"/>
  <int value="7" label="SET_SPDY_SETTING"/>
  <int value="8" label="CLEAR_SPDY_SETTINGS"/>
  <int value="9" label="CLEAR_ALL_SPDY_SETTINGS"/>
  <int value="10" label="SET_SUPPORTS_QUIC"/>
  <int value="11" label="SET_SERVER_NETWORK_STATS"/>
  <int value="12" label="DETECTED_CORRUPTED_PREFS"/>
</enum>

<enum name="HttpSocketType" type="int">
  <int value="0" label="UNUSED">newly connected socket</int>
  <int value="1" label="UNUSED_IDLE">
    connected unused socket (idle prior to use)
  </int>
  <int value="2" label="REUSED_IDLE">previously used (keep-alive?) socket</int>
</enum>

<enum name="HttpStatusLineStatus" type="int">
  <int value="0" label="OK">Spec-compliant status line</int>
  <int value="1" label="EMPTY">Empty status line</int>
  <int value="2" label="NOT_HTTP">Incorrect protocol name</int>
  <int value="3" label="HTTP_CASE_MISMATCH">Protocol name not uppercase</int>
  <int value="4" label="HTTP_NO_VERSION">Protocol version missing</int>
  <int value="5" label="INVALID_VERSION">Protocol version invalid</int>
  <int value="6" label="MULTI_DIGIT_VERSION">
    Protocol version number is multiple digits
  </int>
  <int value="7" label="UNKNOWN_VERSION">Unknown but valid-looking version</int>
  <int value="8" label="EXPLICIT_0_9">Explicitly specified HTTP/0.9</int>
  <int value="9" label="MISSING_STATUS_CODE">Missing status code</int>
  <int value="10" label="INVALID_STATUS_CODE">Invalid status code</int>
  <int value="11" label="STATUS_CODE_TRAILING">
    Trailing characters after status code
  </int>
  <int value="12" label="MISSING_REASON_PHRASE">Missing reason phrase</int>
  <int value="13" label="REASON_DISALLOWED_CHARACTER">
    Disallowed character in reason phrase
  </int>
  <int value="14" label="EXCESS_WHITESPACE">
    Excess whitespace separating protocol version and status code
  </int>
  <int value="15" label="RESERVED_STATUS_CODE">
    Status code from reserved ranges (0xx or 6xx-9xx)
  </int>
</enum>

<enum name="IceCandidatePairTypes" type="int">
  <int value="0" label="host_host"/>
  <int value="1" label="host_srflx"/>
  <int value="2" label="host_relay"/>
  <int value="3" label="host_prflx"/>
  <int value="4" label="srflx_host"/>
  <int value="5" label="srflx_srflx"/>
  <int value="6" label="srflx_relay"/>
  <int value="7" label="srflx_prflx"/>
  <int value="8" label="relay_host"/>
  <int value="9" label="relay_srflx"/>
  <int value="10" label="relay_relay"/>
  <int value="11" label="relay_prflx"/>
  <int value="12" label="prflx_host"/>
  <int value="13" label="prflx_srflx"/>
  <int value="14" label="prflx_relay"/>
  <int value="15" label="host(private)_host(private)"/>
  <int value="16" label="host(private)_host(public)"/>
  <int value="17" label="host(public)_host(private)"/>
  <int value="18" label="host(public)_host(public)"/>
</enum>

<enum name="IceConnectionStates" type="int">
  <int value="0" label="IceConnectionNew"/>
  <int value="1" label="IceConnectionChecking"/>
  <int value="2" label="IceConnectionConnected"/>
  <int value="3" label="IceconnectionCompleted"/>
  <int value="4" label="IceconnectionFailed"/>
  <int value="5" label="IceconnectionDisconnected"/>
  <int value="6" label="IceconnectionClosed"/>
</enum>

<enum name="IDBContextForcedCloseReason" type="int">
  <int value="0" label="DeleteOrigin">
    A request was made to delete the data for an origin.
  </int>
  <int value="1" label="BackingStoreFailure">
    An unrecoverable error occurred accessing the backing store.
  </int>
  <int value="2" label="InternalsPage">
    A forced close was requested from the indexeddb-internals page.
  </int>
</enum>

<enum name="IDBKeyPathType" type="int">
  <int value="0" label="None">No key path.</int>
  <int value="1" label="String">Key path is a string.</int>
  <int value="2" label="Array">Key path is an array of strings.</int>
</enum>

<enum name="IDBLevelDBBackingStoreInternalErrorType" type="int">
  <int value="0" label="IDBLevelDBBackingStoreReadError">
    IndexedDB encountered an error attempting to read or decode a value from the
    leveldb backing store, indicative of corruption or I/O error. Unused as of
    M26.
  </int>
  <int value="1" label="IDBLevelDBBackingStoreWriteError">
    IndexeDB encountered an error attempting to write or commit a value to the
    leveldb backing store, indicative of I/O error. Unused as of M26.
  </int>
  <int value="2" label="IDBLevelDBBackingStoreConsistencyError">
    IndexedDB encountered a consistency error in the leveldb backing store,
    indicative of corruption or an coding error. Unused as of M26.
  </int>
  <int value="3" label="FindKeyInIndex"/>
  <int value="4" label="GetIDBDatabaseMetaData"/>
  <int value="5" label="GetIndexes"/>
  <int value="6" label="GetKeyGeneratorCurrentNumber"/>
  <int value="7" label="GetObjectStores"/>
  <int value="8" label="GetRecord"/>
  <int value="9" label="KeyExistsInObjectStore"/>
  <int value="10" label="LoadCurrentRow"/>
  <int value="11" label="SetupMetadata"/>
  <int value="12" label="GetPrimaryKeyViaIndex"/>
  <int value="13" label="KeyExistsInIndex"/>
  <int value="14" label="VersionExists"/>
  <int value="15" label="DeleteObjectStore"/>
  <int value="16" label="SetMaxObjectStoreId"/>
  <int value="17" label="SetMaxIndexId"/>
  <int value="18" label="GetNewDatabaseId"/>
  <int value="19" label="GetNewVersionNumber"/>
  <int value="20" label="CreateIDBDatabaseMetaData"/>
  <int value="21" label="DeleteDatabase"/>
  <int value="22" label="TransactionCommit"/>
  <int value="23" label="GetDatabaseNames"/>
  <int value="24" label="ReadBlobJournal"/>
  <int value="25" label="DecodeBlobJournal"/>
  <int value="26" label="GetBlobKeyGeneratorCurrentNumber"/>
  <int value="27" label="GetBlobInfoForRecord"/>
</enum>

<enum name="IDBLevelDBBackingStoreOpenResult" type="int">
  <int value="0" label="OpenMemorySuccess">
    An in-memory backing store was opened successfully.
  </int>
  <int value="1" label="OpenSuccess">
    An on-disk backing store was opened successfully.
  </int>
  <int value="2" label="OpenFailedDirectory">
    An on-disk backing store could not be opened or created because the
    directory could not be opened or created. Cleanup will not be attempted.
  </int>
  <int value="3" label="OpenFailedUnknownSchema">
    An on-disk backing store was opened but had an unknown schema version, due
    to corruption or reverting to a previous version of Chrome. Cleanup will be
    attempted.
  </int>
  <int value="4" label="OpenCleanupDestroyFailed">
    An on-disk backing store failed to open; cleanup was attempted but the
    database could not be destroyed.
  </int>
  <int value="5" label="OpenCleanupReopenFailed">
    An on-disk backing store failed to open; cleanup was attempted but
    re-opening the database failed.
  </int>
  <int value="6" label="OpenCleanupReopenSuccess">
    An on-disk backing store failed to open; cleanup was attempted and the
    database was then opened successfully.
  </int>
  <int value="7" label="OpenFailedIOErrCheckingSchema">
    An on-disk backing store was opened but leveldb failed to read the schema
    version.
  </int>
  <int value="8" label="OpenFailedUnknownErr"/>
  <int value="9" label="OpenMemoryFailed">
    An in-memory backing store failed to open.
  </int>
  <int value="10" label="OpenNonASCII">
    A database with non-ascii characters in its path was opened (with either
    success or failure).
  </int>
  <int value="11" label="OpenAttemptDiskFull">
    An open failed on a machine with a full disk. No cleanup was attempted.
  </int>
  <int value="12" label="OpenAttemptPathTooLong">
    Open failed because either a path component or the overall path was too
    long.
  </int>
  <int value="13" label="OpenAttemptNoRecovery">
    An open attempt failed with an I/O error that doesn't necessitate a recovery
    attempt.
  </int>
  <int value="14" label="OpenAttemptPriorCorruption">
    The corrupted open database was deleted.
  </int>
  <int value="15" label="OpenCleanupBlobJournalFailed">
    Open failed because the blob journal could not be cleaned up.
  </int>
</enum>

<enum name="IMECommitType" type="int">
  <obsolete>
    Deprecated 03/2015, and replaced by IMECommitType2.
  </obsolete>
  <int value="0" label="X -&gt; X(0)">
    Types X, commits X as the top suggestion.
  </int>
  <int value="1" label="X -&gt; Y(0)">
    Types X, commits Y as the top suggestion.
  </int>
  <int value="2" label="X -&gt; X(1)">
    Types X, commits X as the non-top suggestion.
  </int>
  <int value="3" label="X -&gt; Y(1)">
    Types X, commits Y as the non-top suggestion.
  </int>
  <int value="4" label="Prediction">Commits a prediction suggestion.</int>
  <int value="5" label="Revert">
    Reverts the previous auto-corrected and committed word.
  </int>
</enum>

<enum name="IMECommitType2" type="int">
  <int value="0" label="X -&gt; X(0)">
    Types X, commits X as the top suggestion.
  </int>
  <int value="1" label="X -&gt; Y(0)">
    Types X, commits Y as the top suggestion.
  </int>
  <int value="2" label="X -&gt; X(1)">
    Types X, commits X as the 2nd suggestion.
  </int>
  <int value="3" label="X -&gt; Y(1)">
    Types X, commits Y as the 2nd suggestion.
  </int>
  <int value="4" label="X -&gt; X(2)">
    Types X, commits X as the 3rd/other suggestion.
  </int>
  <int value="5" label="X -&gt; Y(2)">
    Types X, commits Y as the 3rd/other suggestion.
  </int>
  <int value="6" label="Prediction">Commits a prediction suggestion.</int>
  <int value="7" label="Revert">
    Reverts the previous auto-corrected and committed word.
  </int>
  <int value="8" label="Voice">The commit is triggered by voice input.</int>
</enum>

<enum name="IMECorrectionLevel" type="int">
  <int value="0" label="Off"/>
  <int value="1" label="Modest"/>
  <int value="2" label="Aggressive"/>
</enum>

<enum name="IMEGestureTypingEvent" type="int">
  <int value="0" label="Typed">A word was typed with a gesture.</int>
  <int value="1" label="Deleted">
    A gesture-typed word was deleted after being typed.
  </int>
  <int value="2" label="Replaced 0">
    A gesture-typed word was replaced by the first suggestion.
  </int>
  <int value="3" label="Replaced 1">
    A gesture-typed word was replaced by the second suggestion.
  </int>
  <int value="4" label="Replaced 2">
    A gesture-typed word was replaced by the third suggestion.
  </int>
</enum>

<enum name="IMERegisterProxyView" type="int">
  <int value="0" label="Success">Success in registering ProxyView to IMM</int>
  <int value="1" label="Failure">Failure in registering ProxyView to IMM</int>
  <int value="2" label="DetectionFailure">Failure in detecting the result</int>
  <int value="3" label="ReplicaInputConnection">
    ReplicaInputConnection was used instead
  </int>
</enum>

<enum name="IMESwitchType" type="int">
  <int value="0" label="By tray menu">IME switches by tray menu</int>
  <int value="1" label="By accelerator">IME switches by accelerator</int>
</enum>

<enum name="IMEVKLayout" type="int">
  <int value="0" label="Compact"/>
  <int value="1" label="CompactSymbol"/>
  <int value="2" label="CompactMore"/>
  <int value="3" label="Full"/>
  <int value="4" label="A11y"/>
  <int value="5" label="Handwriting"/>
  <int value="6" label="Emoji"/>
</enum>

<enum name="ImporterType" type="int">
  <int value="0" label="Unknown"/>
  <int value="1" label="IMPORTER_METRICS_IE">IE (Windows-only)</int>
  <int value="2" label="IMPORTER_METRICS_FIREFOX2">Firefox 2</int>
  <int value="3" label="IMPORTER_METRICS_FIREFOX3">Firefox 3 (and later)</int>
  <int value="4" label="IMPORTER_METRICS_SAFARI">Safari (Mac-only)</int>
  <int value="5" label="IMPORTER_METRICS_GOOGLE_TOOLBAR5">Google Toolbar</int>
  <int value="6" label="IMPORTER_METRICS_BOOKMARKS_FILE">
    A bookmarks.html file
  </int>
  <int value="7" label="IMPORTER_METRICS_EDGE">Edge (Windows-only)</int>
</enum>

<enum name="IncidentType" type="int">
  <int value="1" label="TrackedPreference"/>
  <int value="2" label="BinaryIntegrity"/>
  <int value="3" label="BlacklistLoad"/>
  <int value="4" label="OmniboxInteraction"/>
  <int value="5" label="VariationsSeedSignature"/>
  <int value="6" label="ResourceRequest"/>
  <int value="7" label="SuspiciousModule"/>
</enum>

<enum name="Inconsistencies" type="int">
  <int value="1" label="RangeChecksum"/>
  <int value="2" label="BucketOrder"/>
  <int value="3" label="RangeChecksum BucketOrder"/>
  <int value="4" label="CountHigh"/>
  <int value="5" label="CountHigh RangeChecksum"/>
  <int value="6" label="CountHigh BucketOrder"/>
  <int value="7" label="CountHigh RangeChecksum BucketOrder"/>
  <int value="8" label="CountLow"/>
  <int value="9" label="CountLow RangeChecksum"/>
  <int value="10" label="CountLow BucketOrder"/>
  <int value="11" label="CountLow RangeChecksum BucketOrder"/>
</enum>

<enum name="IndexedDatabaseMethods" type="int">
  <int value="0" label="CreateObjectStore()"/>
  <int value="1" label="DeleteObjectStore()"/>
  <int value="2" label="Transaction()"/>
  <int value="3" label="DeleteDatabase()"/>
  <int value="4" label="Open()"/>
</enum>

<enum name="InfoBarIdentifier" type="int">
  <int value="-1" label="INVALID"/>
  <int value="0" label="TEST_INFOBAR"/>
  <int value="1" label="APP_BANNER_INFOBAR_DELEGATE_ANDROID"/>
  <int value="2" label="APP_BANNER_INFOBAR_DELEGATE_DESKTOP"/>
  <int value="3" label="ANDROID_DOWNLOAD_MANAGER_OVERWRITE_INFOBAR_DELEGATE"/>
  <int value="4" label="CHROME_DOWNLOAD_MANAGER_OVERWRITE_INFOBAR_DELEGATE"/>
  <int value="5" label="DOWNLOAD_REQUEST_INFOBAR_DELEGATE_ANDROID"/>
  <int value="6" label="FULLSCREEN_INFOBAR_DELEGATE"/>
  <int value="7" label="HUNG_PLUGIN_INFOBAR_DELEGATE"/>
  <int value="8" label="HUNG_RENDERER_INFOBAR_DELEGATE"/>
  <int value="9" label="MEDIA_STREAM_INFOBAR_DELEGATE_ANDROID"/>
  <int value="10" label="MEDIA_THROTTLE_INFOBAR_DELEGATE"/>
  <int value="11" label="REQUEST_QUOTA_INFOBAR_DELEGATE"/>
  <int value="12" label="DEV_TOOLS_CONFIRM_INFOBAR_DELEGATE"/>
  <int value="13" label="EXTENSION_DEV_TOOLS_INFOBAR_DELEGATE"/>
  <int value="14" label="INCOGNITO_CONNECTABILITY_INFOBAR_DELEGATE"/>
  <int value="15" label="THEME_INSTALLED_INFOBAR_DELEGATE"/>
  <int value="16" label="GEOLOCATION_INFOBAR_DELEGATE_ANDROID"/>
  <int value="17" label="THREE_D_API_INFOBAR_DELEGATE"/>
  <int value="18" label="INSECURE_CONTENT_INFOBAR_DELEGATE"/>
  <int value="19" label="MIDI_PERMISSION_INFOBAR_DELEGATE_ANDROID"/>
  <int value="20" label="PROTECTED_MEDIA_IDENTIFIER_INFOBAR_DELEGATE_ANDROID"/>
  <int value="21" label="NACL_INFOBAR_DELEGATE"/>
  <int value="22" label="DATA_REDUCTION_PROXY_INFOBAR_DELEGATE_ANDROID"/>
  <int value="23" label="NOTIFICATION_PERMISSION_INFOBAR_DELEGATE"/>
  <int value="24" label="AUTO_SIGNIN_FIRST_RUN_INFOBAR_DELEGATE"/>
  <int value="25" label="GENERATED_PASSWORD_SAVED_INFOBAR_DELEGATE_ANDROID"/>
  <int value="26" label="SAVE_PASSWORD_INFOBAR_DELEGATE"/>
  <int value="27" label="PEPPER_BROKER_INFOBAR_DELEGATE"/>
  <int value="28" label="PERMISSION_UPDATE_INFOBAR_DELEGATE"/>
  <int value="29" label="DURABLE_STORAGE_PERMISSION_INFOBAR_DELEGATE_ANDROID"/>
  <int value="30" label="NPAPI_REMOVAL_INFOBAR_DELEGATE"/>
  <int value="31" label="OUTDATED_PLUGIN_INFOBAR_DELEGATE"/>
  <int value="32" label="PLUGIN_METRO_MODE_INFOBAR_DELEGATE"/>
  <int value="33" label="RELOAD_PLUGIN_INFOBAR_DELEGATE"/>
  <int value="34" label="PLUGIN_OBSERVER"/>
  <int value="35" label="SSL_ADD_CERTIFICATE"/>
  <int value="36" label="SSL_ADD_CERTIFICATE_INFOBAR_DELEGATE"/>
  <int value="37" label="POPUP_BLOCKED_INFOBAR_DELEGATE"/>
  <int value="38" label="CHROME_SELECT_FILE_POLICY"/>
  <int value="39" label="KEYSTONE_PROMOTION_INFOBAR_DELEGATE"/>
  <int value="40" label="COLLECTED_COOKIES_INFOBAR_DELEGATE"/>
  <int value="41" label="INSTALLATION_ERROR_INFOBAR_DELEGATE"/>
  <int value="42" label="ALTERNATE_NAV_INFOBAR_DELEGATE"/>
  <int value="43" label="BAD_FLAGS_PROMPT"/>
  <int value="44" label="DEFAULT_BROWSER_INFOBAR_DELEGATE"/>
  <int value="45" label="GOOGLE_API_KEYS_INFOBAR_DELEGATE"/>
  <int value="46" label="OBSOLETE_SYSTEM_INFOBAR_DELEGATE"/>
  <int value="47" label="SESSION_CRASHED_INFOBAR_DELEGATE"/>
  <int value="48" label="WEBSITE_SETTINGS_INFOBAR_DELEGATE"/>
  <int value="49" label="AUTOFILL_CC_INFOBAR_DELEGATE"/>
  <int value="50" label="TRANSLATE_INFOBAR_DELEGATE"/>
  <int value="51" label="IOS_CHROME_SAVE_PASSWORD_INFOBAR_DELEGATE"/>
  <int value="52" label="NATIVE_APP_INSTALLER_INFOBAR_DELEGATE"/>
  <int value="53" label="NATIVE_APP_LAUNCHER_INFOBAR_DELEGATE"/>
  <int value="54" label="NATIVE_APP_OPEN_POLICY_INFOBAR_DELEGATE"/>
  <int value="55" label="RE_SIGN_IN_INFOBAR_DELEGATE"/>
  <int value="56" label="SHOW_PASSKIT_ERROR_INFOBAR_DELEGATE"/>
  <int value="57" label="READER_MODE_INFOBAR_DELEGATE"/>
  <int value="58" label="SYNC_ERROR_INFOBAR_DELEGATE"/>
  <int value="59" label="UPGRADE_INFOBAR_DELEGATE"/>
  <int value="60" label="CHROME_WINDOW_ERROR"/>
  <int value="61" label="CONFIRM_DANGEROUS_DOWNLOAD"/>
  <int value="62" label="WINDOWS_DESKTOP_SEARCH_INFOBAR_DELEGATE"/>
</enum>

<enum name="InfoBarResponse" type="int">
  <int value="0" label="No Response selected"/>
  <int value="1" label="Save Password"/>
  <int value="2" label="Never for this site (blacklist / exception)"/>
  <int value="3" label="InfoBar dismissed by clicking the 'X'"/>
</enum>

<enum name="InjectedAdType" type="int">
  <int value="0" label="Invalid"/>
  <int value="1" label="IFrame"/>
  <int value="2" label="Embed"/>
  <int value="3" label="Anchor"/>
  <int value="4" label="Script"/>
</enum>

<enum name="InputMethodCategory" type="int">
  <int value="0" label="Unkown"/>
  <int value="1" label="XKB">XKeyboard</int>
  <int value="2" label="Chinese"/>
  <int value="3" label="Japanese"/>
  <int value="4" label="Korean"/>
  <int value="5" label="M17n">Multilingualization</int>
  <int value="6" label="T13n">Transliteration</int>
</enum>

<enum name="InputMethodID" type="int">
  <int value="109700" label="xkb:am:phonetic:arm">
    Armenian Phonetic keyboard
  </int>
  <int value="109800" label="xkb:be::fra">Belgian keyboard</int>
  <int value="109801" label="xkb:be::ger">Belgian keyboard</int>
  <int value="109802" label="xkb:be::nld">Belgian keyboard</int>
  <int value="109803" label="xkb:bg::bul">Bulgarian keyboard</int>
  <int value="109804" label="xkb:bg:phonetic:bul">
    Bulgarian Phonetic keyboard
  </int>
  <int value="109805" label="xkb:br::por">Brazilian keyboard</int>
  <int value="109806" label="xkb:by::bel">Belarusian keyboard</int>
  <int value="109900" label="xkb:ca::fra">Canadian French keyboard</int>
  <int value="109901" label="xkb:ca:eng:eng">Canadian English keyboard</int>
  <int value="109902" label="xkb:ca:multix:fra">
    Canadian Multilingual keyboard
  </int>
  <int value="109903" label="xkb:ch::ger">Swiss keyboard</int>
  <int value="109904" label="xkb:ch:fr:fra">Swiss French keyboard</int>
  <int value="109905" label="xkb:cz::cze">Czech keyboard</int>
  <int value="109906" label="xkb:cz:qwerty:cze">Czech QWERTY keyboard</int>
  <int value="110000" label="xkb:de::ger">German keyboard</int>
  <int value="110001" label="xkb:de:neo:ger">German NEO 2 keyboard</int>
  <int value="110002" label="xkb:dk::dan">Danish keyboard</int>
  <int value="110100" label="xkb:ee::est">Estonian keyboard</int>
  <int value="110101" label="xkb:es::spa">Spanish keyboard</int>
  <int value="110102" label="xkb:es:cat:cat">Catalan keyboard</int>
  <int value="110200" label="xkb:fi::fin">Finnish keyboard</int>
  <int value="110201" label="xkb:fr::fra">French keyboard</int>
  <int value="110300" label="xkb:gb:dvorak:eng">UK Dvorak keyboard</int>
  <int value="110301" label="xkb:gb:extd:eng">UK keyboard</int>
  <int value="110302" label="xkb:ge::geo">Georgian keyboard</int>
  <int value="110303" label="xkb:gr::gre">Greek keyboard</int>
  <int value="110400" label="xkb:hr::scr">Croatian keyboard</int>
  <int value="110401" label="xkb:hu::hun">Hungarian keyboard</int>
  <int value="110500" label="xkb:ie::ga">Irish keyboard</int>
  <int value="110501" label="xkb:il::heb">Hebrew keyboard</int>
  <int value="110502" label="xkb:is::ice">Icelandic keyboard</int>
  <int value="110503" label="xkb:it::ita">Italian keyboard</int>
  <int value="110600" label="xkb:jp::jpn">Japanese keyboard</int>
  <int value="110800" label="xkb:latam::spa">Latin American keyboard</int>
  <int value="110801" label="xkb:lt::lit">Lithuanian keyboard</int>
  <int value="110802" label="xkb:lv:apostrophe:lav">Latvian keyboard</int>
  <int value="110900" label="xkb:mn::mon">Mongolian keyboard</int>
  <int value="111000" label="xkb:no::nob">Norwegian keyboard</int>
  <int value="111200" label="xkb:pl::pol">Polish keyboard</int>
  <int value="111201" label="xkb:pt::por">Portuguese keyboard</int>
  <int value="111400" label="xkb:ro::rum">Romanian keyboard</int>
  <int value="111401" label="xkb:ro:std:rum">Romanian Standard keyboard</int>
  <int value="111402" label="xkb:rs::srp">Serbian keyboard</int>
  <int value="111403" label="xkb:ru::rus">Russian keyboard</int>
  <int value="111404" label="xkb:ru:phonetic:rus">
    Russian Phonetic keyboard
  </int>
  <int value="111500" label="xkb:se::swe">Swedish keyboard</int>
  <int value="111501" label="xkb:si::slv">Slovenian keyboard</int>
  <int value="111502" label="xkb:sk::slo">Slovakian keyboard</int>
  <int value="111600" label="xkb:tr::tur">Turkish keyboard</int>
  <int value="111700" label="xkb:ua::ukr">Ukrainian keyboard</int>
  <int value="111701" label="xkb:us::eng">US keyboard</int>
  <int value="111702" label="xkb:us::fil">US keyboard</int>
  <int value="111703" label="xkb:us::ind">US keyboard</int>
  <int value="111704" label="xkb:us::msa">US keyboard</int>
  <int value="111705" label="xkb:us:altgr-intl:eng">US Extended keyboard</int>
  <int value="111706" label="xkb:us:colemak:eng">US Colemak keyboard</int>
  <int value="111707" label="xkb:us:dvorak:eng">US Dvorak keyboard</int>
  <int value="111708" label="xkb:us:intl:eng">US International keyboard</int>
  <int value="111709" label="xkb:us:intl:nld">US International keyboard</int>
  <int value="111710" label="xkb:us:intl:por">US International keyboard</int>
  <int value="209700" label="zh-hant-t-i0-array-1992">Array input method</int>
  <int value="209900" label="zh-hant-t-i0-cangjie-1987">
    Cangjie input method
  </int>
  <int value="209901" label="zh-hant-t-i0-cangjie-1987-x-m0-simplified">
    Quick input method
  </int>
  <int value="210000" label="zh-hant-t-i0-dayi-1988">Dayi input method</int>
  <int value="211200" label="zh-hant-t-i0-pinyin">
    Traditional Pinyin input method
  </int>
  <int value="211201" label="zh-t-i0-pinyin">Pinyin input method</int>
  <int value="211700" label="zh-hant-t-i0-und">Zhuyin input method</int>
  <int value="211900" label="zh-t-i0-wubi-1986">Wubi input method</int>
  <int value="310600" label="nacl_mozc_jp">
    Google Japanese Input (for Japanese keyboard)
  </int>
  <int value="311700" label="nacl_mozc_us">
    Google Japanese Input (for US keyboard)
  </int>
  <int value="405000" label="hangul_2set">Hangul 2 Set</int>
  <int value="405100" label="hangul_3set390">Hangul 3 Set (390)</int>
  <int value="405101" label="hangul_3setfinal">Hangul 3 Set (Final)</int>
  <int value="405102" label="hangul_3setnoshift">Hangul 3 Set (No Shift)</int>
  <int value="409700" label="hangul_ahnmatae">Hangul Ahnmatae</int>
  <int value="411400" label="hangul_romaja">Hangul Romaja</int>
  <int value="509700" label="vkd_ar">Arabic keyboard</int>
  <int value="509800" label="vkd_bn_phone">Bengali keyboard (Phonetic)</int>
  <int value="509900" label="vkd_ckb_ar">
    Sorani Kurdish Arabic-based keyboard
  </int>
  <int value="509901" label="vkd_ckb_en">
    Sorani Kurdish English-based keyboard
  </int>
  <int value="510000" label="vkd_deva_phone">
    Devanagari keyboard (Phonetic)
  </int>
  <int value="510100" label="vkd_ethi">Ethiopic keyboard</int>
  <int value="510200" label="vkd_fa">Persian keyboard</int>
  <int value="510300" label="vkd_gu_phone">Gujarati keyboard (Phonetic)</int>
  <int value="510700" label="vkd_km">Khmer keyboard</int>
  <int value="510701" label="vkd_kn_phone">Kannada keyboard (Phonetic)</int>
  <int value="510800" label="vkd_lo">Lao keyboard</int>
  <int value="510900" label="vkd_ml_phone">Malayalam keyboard (Phonetic)</int>
  <int value="510901" label="vkd_my">Myanmar keyboard</int>
  <int value="510902" label="vkd_my_myansan">Myanmar Myansan keyboard</int>
  <int value="511000" label="vkd_ne_inscript">Nepali keyboard (InScript)</int>
  <int value="511001" label="vkd_ne_phone">Nepali keyboard (Phonetic)</int>
  <int value="511500" label="vkd_si">Sinhala keyboard</int>
  <int value="511600" label="vkd_ta_inscript">Tamil keyboard (InScript)</int>
  <int value="511601" label="vkd_ta_itrans">Tamil keyboard (itrans)</int>
  <int value="511602" label="vkd_ta_phone">Tamil keyboard (Phonetic)</int>
  <int value="511603" label="vkd_ta_tamil99">Tamil keyboard (Tamil99)</int>
  <int value="511604" label="vkd_ta_typewriter">
    Tamil keyboard (Typewriter)
  </int>
  <int value="511605" label="vkd_te_phone">Telugu keyboard (Phonetic)</int>
  <int value="511606" label="vkd_th">Thai keyboard (Kedmanee)</int>
  <int value="511607" label="vkd_th_pattajoti">Thai keyboard (Pattachote)</int>
  <int value="511608" label="vkd_th_tis">Thai keyboard (TIS 820-2531)</int>
  <int value="511800" label="vkd_vi_tcvn">Vietnamese keyboard (TCVN)</int>
  <int value="511801" label="vkd_vi_telex">Vietnamese keyboard (Telex)</int>
  <int value="511802" label="vkd_vi_viqr">Vietnamese keyboard (VIQR)</int>
  <int value="511803" label="vkd_vi_vni">Vietnamese keyboard (VNI)</int>
  <int value="609700" label="am-t-i0-und">Transliteration Amharic</int>
  <int value="609701" label="ar-t-i0-und">Transliteration Arabic</int>
  <int value="609800" label="bn-t-i0-und">Transliteration Bengali</int>
  <int value="609801" label="braille">Braille Keyboard</int>
  <int value="610100" label="el-t-i0-und">Transliteration Greek</int>
  <int value="610200" label="fa-t-i0-und">Transliteration Persian</int>
  <int value="610300" label="gu-t-i0-und">Transliteration Gujarati</int>
  <int value="610400" label="he-t-i0-und">Transliteration Hebrew</int>
  <int value="610401" label="hi-t-i0-und">Transliteration Hindi</int>
  <int value="610700" label="kn-t-i0-und">Transliteration Kannada</int>
  <int value="610900" label="ml-t-i0-und">Transliteration Malayalam</int>
  <int value="610901" label="mr-t-i0-und">Transliteration Marathi</int>
  <int value="611000" label="ne-t-i0-und">Transliteration Nepali</int>
  <int value="611100" label="or-t-i0-und">Transliteration Oriya</int>
  <int value="611200" label="pa-t-i0-und">Transliteration Punjabi</int>
  <int value="611500" label="sa-t-i0-und">Transliteration Sanskrit</int>
  <int value="611501" label="sr-t-i0-und">Transliteration Serbian</int>
  <int value="611600" label="ta-t-i0-und">Transliteration Tamil</int>
  <int value="611601" label="te-t-i0-und">Transliteration Telugu</int>
  <int value="611602" label="ti-t-i0-und">Transliteration Tigrinya</int>
  <int value="611700" label="ur-t-i0-und">Transliteration Urdu</int>
</enum>

<enum name="InputMethodID2" type="int">
  <int value="-2082426075" label="xkb:cz:qwerty:cze">Czech QWERTY keyboard</int>
  <int value="-2039513744" label="xkb:ru::rus">Russian keyboard</int>
  <int value="-2004968165" label="xkb:gb:dvorak:eng">UK Dvorak keyboard</int>
  <int value="-2004834194" label="xkb:ca:multix:fra">
    Canadian Multilingual keyboard
  </int>
  <int value="-1992142310" label="xkb:dk::dan">Danish keyboard</int>
  <int value="-1972379678" label="vkd_deva_phone">
    Devanagari keyboard (Phonetic)
  </int>
  <int value="-1957398030" label="ta-t-i0-und">Tamil transliteration</int>
  <int value="-1955862460" label="xkb:ro::rum">Romanian keyboard</int>
  <int value="-1951732875" label="xkb:be::nld">Belgian keyboard</int>
  <int value="-1931838225" label="zh-hant-t-i0-cangjie-1987-x-m0-simplified">
    Quick input method
  </int>
  <int value="-1899483055" label="vkd_my">Myanmar keyboard</int>
  <int value="-1856842164" label="xkb:ge::geo">Georgian keyboard</int>
  <int value="-1856063724" label="vkd_km">Khmer keyboard</int>
  <int value="-1749961581" label="vkd_ta_inscript">
    Tamil keyboard (InScript)
  </int>
  <int value="-1710145174" label="xkb:am:phonetic:arm">
    Armenian Phonetic keyboard
  </int>
  <int value="-1709647399" label="xkb:mn::mon">Mongolian keyboard</int>
  <int value="-1668610460" label="xkb:us:dvp:eng">
    US Programmer Dvorak keyboard
  </int>
  <int value="-1667829653" label="zh-hant-t-i0-cangjie-1987">
    Cangjie input method
  </int>
  <int value="-1591721678" label="vkd_ne_inscript">
    Nepali keyboard (InScript)
  </int>
  <int value="-1474243589" label="xkb:it::ita">Italian keyboard</int>
  <int value="-1408581676" label="xkb:gb:extd:eng">UK keyboard</int>
  <int value="-1402880636" label="xkb:se::swe">Swedish keyboard</int>
  <int value="-1396156987" label="vkd_ru_phone_aatseel">
    Russian Phonetic (AATSEEL) keyboard
  </int>
  <int value="-1338032348" label="xkb:de:neo:ger">German NEO 2 keyboard</int>
  <int value="-1288127107" label="vkd_vi_telex">
    Vietnamese keyboard (Telex)
  </int>
  <int value="-1263201701" label="hi-t-i0-und">Hindi transliteration</int>
  <int value="-1242404917" label="sr-t-i0-und">Serbian transliteration</int>
  <int value="-1148371254" label="xkb:us:intl:por">
    US International keyboard
  </int>
  <int value="-1105197074" label="vkd_ar">Arabic keyboard</int>
  <int value="-1096071752" label="vkd_fa">Persian keyboard</int>
  <int value="-1065120196" label="vkd_th">Thai keyboard (Kedmanee)</int>
  <int value="-1053378431" label="xkb:tr::tur">Turkish keyboard</int>
  <int value="-1032532014" label="xkb:bg:phonetic:bul">
    Bulgarian Phonetic keyboard
  </int>
  <int value="-1024152574" label="xkb:ca:eng:eng">
    Canadian English keyboard
  </int>
  <int value="-1021036210" label="xkb:us::ind">US keyboard</int>
  <int value="-1018545698" label="vkd_ckb_en">
    Sorani Kurdish English-based keyboard
  </int>
  <int value="-994915284" label="xkb:ch:fr:fra">Swiss French keyboard</int>
  <int value="-955047705" label="xkb:sk::slo">Slovakian keyboard</int>
  <int value="-942739805" label="xkb:tr:f:tur">Turkish-F keyboard</int>
  <int value="-923332388" label="xkb:ua::ukr">Ukrainian keyboard</int>
  <int value="-917118451" label="vkd_vi_tcvn">Vietnamese keyboard (TCVN)</int>
  <int value="-848378885" label="vkd_ethi">Ethiopic keyboard</int>
  <int value="-827208209" label="xkb:hu::hun">Hungarian keyboard</int>
  <int value="-797137387" label="ml-t-i0-und">Malayalam transliteration</int>
  <int value="-676861102" label="vkd_vi_viqr">Vietnamese keyboard (VIQR)</int>
  <int value="-666585286" label="xkb:bg::bul">Bulgarian keyboard</int>
  <int value="-650362029" label="xkb:ie::ga">Irish keyboard</int>
  <int value="-639620912" label="te-t-i0-und">Telugu transliteration</int>
  <int value="-622670909" label="zh-hant-t-i0-dayi-1988">Dayi input method</int>
  <int value="-547772150" label="xkb:ro:std:rum">
    Romanian standard keyboard
  </int>
  <int value="-535089160" label="xkb:us::msa">US keyboard</int>
  <int value="-519506383" label="he-t-i0-und">Hebrew transliteration</int>
  <int value="-512360986" label="xkb:us:altgr-intl:eng">
    US Extended keyboard
  </int>
  <int value="-498028381" label="sa-t-i0-und">Sanskrit transliteration</int>
  <int value="-496003957" label="xkb:de::ger">German keyboard</int>
  <int value="-439432295" label="vkd_ru_phone_yazhert">
    Russian Phonetic (YaZHert) keyboard
  </int>
  <int value="-378677550" label="vkd_bn_phone">Bengali keyboard (Phonetic)</int>
  <int value="-352571373" label="xkb:rs::srp">Serbian keyboard</int>
  <int value="-299716106" label="xkb:si::slv">Slovenian keyboard</int>
  <int value="-292687390" label="xkb:fi::fin">Finnish keyboard</int>
  <int value="-280690349" label="vkd_vi_vni">Vietnamese keyboard (VNI)</int>
  <int value="-263932473" label="xkb:ch::ger">Swiss keyboard</int>
  <int value="-231610124" label="ne-t-i0-und">Nepali transliteration</int>
  <int value="-225482038" label="vkd_si">Sinhala keyboard</int>
  <int value="-219542410" label="ko-t-i0-und">Korean input method</int>
  <int value="-202781885" label="xkb:us:intl:eng">
    US International keyboard
  </int>
  <int value="-193738949" label="gu-t-i0-und">Gujarati transliteration</int>
  <int value="-147742988" label="mr-t-i0-und">Marathi transliteration</int>
  <int value="-83634292" label="vkd_my_myansan">Myanmar Myansan keyboard</int>
  <int value="-70827301" label="xkb:be::fra">Belgian keyboard</int>
  <int value="-69316526" label="fa-t-i0-und">Persian transliteration</int>
  <int value="2215666" label="xkb:jp::jpn">Japanese keyboard</int>
  <int value="28549849" label="xkb:pt::por">Portuguese keyboard</int>
  <int value="60054916" label="xkb:fo::fao">Faroese keyboard</int>
  <int value="87135772" label="xkb:fr::fra">French keyboard</int>
  <int value="150803493" label="vkd_ta_phone">Tamil keyboard (Phonetic)</int>
  <int value="193122406" label="xkb:gr::gre">Greek keyboard</int>
  <int value="197116831" label="xkb:es::spa">Spanish keyboard</int>
  <int value="214846098" label="zh-t-i0-wubi-1986">Wubi input method</int>
  <int value="319509360" label="xkb:be::ger">Belgian keyboard</int>
  <int value="382485416" label="xkb:lv:apostrophe:lav">Latvian keyboard</int>
  <int value="398887705" label="ti-t-i0-und">Tigrinya transliteration</int>
  <int value="400837283" label="yue-hant-t-i0-und">Cantonese input method</int>
  <int value="414827905" label="vkd_ta_typewriter">
    Tamil keyboard (Typewriter)
  </int>
  <int value="428624332" label="zh-t-i0-pinyin">Pinyin input method</int>
  <int value="452111434" label="kn-t-i0-und">Kannada transliteration</int>
  <int value="467269371" label="el-t-i0-und">Greek transliteration</int>
  <int value="469000663" label="xkb:es:cat:cat">Catalan keyboard</int>
  <int value="520692028" label="vkd_ta_itrans">Tamil keyboard (itrans)</int>
  <int value="601883646" label="vkd_th_tis">Thai keyboard (TIS 820-2531)</int>
  <int value="602570138" label="xkb:mk::mkd">Macedonian keyboard</int>
  <int value="629336408" label="vkd_ckb_ar">
    Sorani Kurdish Arabic-based keyboard
  </int>
  <int value="629711326" label="xkb:il::heb">Hebrew keyboard</int>
  <int value="683071754" label="xkb:hr::scr">Croatian keyboard</int>
  <int value="789603234" label="xkb:by::bel">Belarusian keyboard</int>
  <int value="822222165" label="xkb:ru:phonetic:rus">
    Russian Phonetic keyboard
  </int>
  <int value="825747412" label="xkb:latam::spa">Latin American keyboard</int>
  <int value="871656925" label="xkb:us::fil">US keyboard</int>
  <int value="1024422775" label="vkd_ml_phone">
    Malayalam keyboard (Phonetic)
  </int>
  <int value="1127372618" label="vkd_ta_tamil99">Tamil keyboard (Tamil99)</int>
  <int value="1194237527" label="bn-t-i0-und">Bengali transliteration</int>
  <int value="1196273343" label="vkd_te_phone">Telugu keyboard (Phonetic)</int>
  <int value="1201986464" label="pa-t-i0-und">Punjabi transliteration</int>
  <int value="1241606786" label="vkd_gu_phone">
    Gujarati keyboard (Phonetic)
  </int>
  <int value="1275989482" label="xkb:ee::est">Estonian keyboard</int>
  <int value="1342665179" label="or-t-i0-und">Oriya transliteration</int>
  <int value="1355267172" label="nacl_mozc_jp">
    Google Japanese Input (for Japanese keyboard)
  </int>
  <int value="1376109158" label="zh-hant-t-i0-pinyin">
    Traditional Pinyin input method
  </int>
  <int value="1391164751" label="vkd_ne_phone">Nepali keyboard (Phonetic)</int>
  <int value="1409029247" label="xkb:ca::fra">Canadian French keyboard</int>
  <int value="1486336701" label="zh-hant-t-i0-und">Zhuyin input method</int>
  <int value="1643737979" label="xkb:fr:bepo:fra">French Bepo keyboard</int>
  <int value="1683010298" label="xkb:is::ice">Icelandic keyboard</int>
  <int value="1698488657" label="ar-t-i0-und">Arabic transliteration</int>
  <int value="1718072990" label="xkb:us::eng">US keyboard</int>
  <int value="1756602568" label="zh-hant-t-i0-array-1992">
    Array input method
  </int>
  <int value="1763643144" label="xkb:lt::lit">Lithuanian keyboard</int>
  <int value="1772226972" label="ur-t-i0-und">Urdu transliteration</int>
  <int value="1847701260" label="xkb:pl::pol">Polish keyboard</int>
  <int value="1851658441" label="xkb:hu:qwerty:hun">
    Hungarian QWERTY keyboard
  </int>
  <int value="1882667893" label="xkb:us:colemak:eng">US Colemak keyboard</int>
  <int value="1925299009" label="xkb:br::por">Brazilian keyboard</int>
  <int value="1934249765" label="vkd_th_pattajoti">
    Thai keyboard (Pattachote)
  </int>
  <int value="1957701631" label="am-t-i0-und">Amharic transliteration</int>
  <int value="1970923579" label="xkb:us:intl:nld">Netherlands keyboard</int>
  <int value="1983264676" label="xkb:no::nob">Norwegian keyboard</int>
  <int value="2007323478" label="xkb:cz::cze">Czech keyboard</int>
  <int value="2014669693" label="xkb:kz::kaz">Kazakh keyboard</int>
  <int value="2024146574" label="vkd_lo">Lao keyboard</int>
  <int value="2029882285" label="vkd_kn_phone">Kannada keyboard (Phonetic)</int>
  <int value="2031967946" label="xkb:mt::mlt">Maltese keyboard</int>
  <int value="2051698871" label="nacl_mozc_us">
    Google Japanese Input (for US keyboard)
  </int>
  <int value="2060414855" label="braille">Braille Keyboard</int>
  <int value="2121258069" label="xkb:us:dvorak:eng">US Dvorak keyboard</int>
</enum>

<enum name="InsecureContentType" type="int">
  <int value="0" label="Displayed"/>
  <int value="1" label="Displayed by *.google.com (deprecated)"/>
  <int value="2" label="Displayed by www.google.com (deprecated)"/>
  <int value="3" label="Displayed due to an iframe"/>
  <int value="4" label="Ran"/>
  <int value="5" label="Ran by *.google.com (deprecated)"/>
  <int value="6" label="Ran by www.google.com (deprecated)"/>
  <int value="7" label="Ran from www.youtube.com (deprecated)"/>
  <int value="8" label="Ran due to script"/>
  <int value="9" label="Ran due to CSS"/>
  <int value="10" label="Ran due to a plug-in"/>
  <int value="11" label="Displayed by www.youtube.com (deprecated)"/>
  <int value="12" label="Ran by www.youtube.com (deprecated)"/>
  <int value="13" label="Ran by *.googleusercontent.com (deprecated)"/>
  <int value="14" label="Displayed by mail.google.com (deprecated)"/>
  <int value="15" label="Ran by mail.google.com (deprecated)"/>
  <int value="16" label="Displayed by plus.google.com (deprecated)"/>
  <int value="17" label="Ran by plus.google.com (deprecated)"/>
  <int value="18" label="Displayed by docs.google.com (deprecated)"/>
  <int value="19" label="Ran by docs.google.com (deprecated)"/>
  <int value="20" label="Displayed by sites.google.com (deprecated)"/>
  <int value="21" label="Ran by sites.google.com (deprecated)"/>
  <int value="22" label="Displayed by picasaweb.google.com (deprecated)"/>
  <int value="23" label="Ran by picasaweb.google.com (deprecated)"/>
  <int value="24" label="Displayed by google.com/reader/ (deprecated)"/>
  <int value="25" label="Ran by google.com/reader/ (deprecated)"/>
  <int value="26" label="Displayed by code.google.com (deprecated)"/>
  <int value="27" label="Ran by code.google.com (deprecated)"/>
  <int value="28" label="Displayed by groups.google.com (deprecated)"/>
  <int value="29" label="Ran by groups.google.com (deprecated)"/>
  <int value="30" label="Displayed by maps.google.com (deprecated)"/>
  <int value="31" label="Ran by maps.google.com (deprecated)"/>
  <int value="32" label="Displayed by google.com/support/ (deprecated)"/>
  <int value="33" label="Ran by google.com/support/ (deprecated)"/>
  <int value="34" label="Displayed by google.com/intl/ (deprecated)"/>
  <int value="35" label="Ran by google.com/intl/ (deprecated)"/>
</enum>

<enum name="InstallStatus" type="int">
  <int value="0" label="FIRST_INSTALL_SUCCESS"/>
  <int value="1" label="INSTALL_REPAIRED"/>
  <int value="2" label="NEW_VERSION_UPDATED"/>
  <int value="3" label="EXISTING_VERSION_LAUNCHED"/>
  <int value="4" label="HIGHER_VERSION_EXISTS"/>
  <int value="5" label="USER_LEVEL_INSTALL_EXISTS"/>
  <int value="6" label="SYSTEM_LEVEL_INSTALL_EXISTS"/>
  <int value="7" label="INSTALL_FAILED"/>
  <int value="8" label="SETUP_PATCH_FAILED"/>
  <int value="9" label="OS_NOT_SUPPORTED"/>
  <int value="10" label="OS_ERROR"/>
  <int value="11" label="TEMP_DIR_FAILED"/>
  <int value="12" label="UNCOMPRESSION_FAILED"/>
  <int value="13" label="INVALID_ARCHIVE"/>
  <int value="14" label="INSUFFICIENT_RIGHTS"/>
  <int value="15" label="CHROME_NOT_INSTALLED"/>
  <int value="16" label="CHROME_RUNNING"/>
  <int value="17" label="UNINSTALL_CONFIRMED"/>
  <int value="18" label="UNINSTALL_DELETE_PROFILE"/>
  <int value="19" label="UNINSTALL_SUCCESSFUL"/>
  <int value="20" label="UNINSTALL_FAILED"/>
  <int value="21" label="UNINSTALL_CANCELLED"/>
  <int value="22" label="UNKNOWN_STATUS"/>
  <int value="23" label="RENAME_SUCCESSFUL"/>
  <int value="24" label="RENAME_FAILED"/>
  <int value="25" label="EULA_REJECTED"/>
  <int value="26" label="EULA_ACCEPTED"/>
  <int value="27" label="EULA_ACCEPTED_OPT_IN"/>
  <int value="28" label="INSTALL_DIR_IN_USE"/>
  <int value="29" label="UNINSTALL_REQUIRES_REBOOT"/>
  <int value="30" label="IN_USE_UPDATED"/>
  <int value="31" label="SAME_VERSION_REPAIR_FAILED"/>
  <int value="32" label="REENTRY_SYS_UPDATE"/>
  <int value="33" label="SXS_OPTION_NOT_SUPPORTED"/>
  <int value="42" label="APPLY_DIFF_PATCH_FAILED"/>
  <int value="47" label="INVALID_STATE_FOR_OPTION"/>
  <int value="49" label="PATCH_INVALID_ARGUMENTS"/>
  <int value="50" label="DIFF_PATCH_SOURCE_MISSING"/>
  <int value="51" label="UNUSED_BINARIES"/>
  <int value="52" label="UNUSED_BINARIES_UNINSTALLED"/>
  <int value="53" label="UNSUPPORTED_OPTION"/>
  <int value="54" label="CPU_NOT_SUPPORTED"/>
  <int value="55" label="REENABLE_UPDATES_SUCCEEDED"/>
  <int value="56" label="REENABLE_UPDATES_FAILED"/>
  <int value="57" label="UNPACKING_FAILED"/>
  <int value="58" label="IN_USE_DOWNGRADE"/>
  <int value="59" label="OLD_VERSION_DOWNGRADE"/>
</enum>

<enum name="InstantControllerEvent" type="int">
  <int value="0" label="URL_ADDED_TO_BLACKLIST"/>
  <int value="1" label="URL_REMOVED_FROM_BLACKLIST"/>
  <int value="2" label="URL_BLOCKED_BY_BLACKLIST"/>
</enum>

<enum name="InstantExtended_CacheableNTPLoad" type="int">
  <int value="0" label="Failed to load"/>
  <int value="1" label="Loaded successfuly"/>
</enum>

<enum name="InstantExtended_FallbackCause" type="int">
  <int value="0" label="Fallback did not occur"/>
  <int value="1" label="Page not current: unknown"/>
  <int value="2" label="Page not current: empty instant url"/>
  <int value="3" label="Page not current: origin/path mismatch"/>
  <int value="4" label="Page not current: instant not supported"/>
  <int value="5" label="No overlay"/>
  <int value="6" label="Javascript disabled"/>
</enum>

<enum name="InstantExtended_InstantNavigation" type="int">
  <obsolete>
    Deprecated as of 10/2013.
  </obsolete>
  <int value="0" label="Local click"/>
  <int value="1" label="Local submit"/>
  <int value="2" label="Online click"/>
  <int value="3" label="Online submit"/>
  <int value="4" label="Non-extended navigation"/>
</enum>

<enum name="InstantExtended_NewOptInState" type="int">
  <int value="0" label="Default"/>
  <int value="1" label="Opted in"/>
  <int value="2" label="Opted out"/>
</enum>

<enum name="InstantExtended_OptInState" type="int">
  <obsolete>
    Deprecated 2013-06.
  </obsolete>
  <int value="0" label="Default"/>
  <int value="1" label="Opted in"/>
  <int value="2" label="Opted out"/>
  <int value="3" label="Opted in local"/>
  <int value="4" label="Opted out local"/>
  <int value="5" label="Opted out both"/>
</enum>

<enum name="InstantSearchClicks_PreviewScrollState" type="int">
  <obsolete>
    Deprecated as of 7/2015.
  </obsolete>
  <int value="0" label="No scroll"/>
  <int value="1" label="Scrolled but not to bottom"/>
  <int value="2" label="Scrolled to bottom."/>
</enum>

<enum name="InstantSearchClicks_ReasonForSwap" type="int">
  <obsolete>
    Deprecated as of 7/2015.
  </obsolete>
  <int value="0" label="Regular swap"/>
  <int value="1" label="Swapped on timeout"/>
  <int value="2" label="Swap aborted due to navigation"/>
  <int value="3" label="No swap as preview failed"/>
  <int value="4" label="Swapped as original failed"/>
</enum>

<enum name="InstantSessionStorageNamespace" type="int">
  <int value="0" label="different"/>
  <int value="1" label="identical"/>
</enum>

<enum name="IntelMaxMicroArchitecture" type="int">
  <int value="0" label="Pentium"/>
  <int value="1" label="SSE"/>
  <int value="2" label="SSE2"/>
  <int value="3" label="SSE3"/>
  <int value="4" label="SSSE3"/>
  <int value="5" label="SSE4.1"/>
  <int value="6" label="SSE4.2"/>
  <int value="7" label="AVX"/>
  <int value="8" label="AVX2"/>
</enum>

<enum name="InternalErrorLoadEvent" type="int">
  <summary>Internal Errors in the page_load_metrics system</summary>
  <int value="0" label="Invalid timing IPC sent from renderer"/>
  <int value="1"
      label="IPC received while not tracking a relevant committed load"/>
  <int value="2" label="IPC received from a frame we navigated away from"/>
  <int value="3" label="IPC received from a bad URL scheme"/>
  <int value="4" label="No IPCs received for this navigation"/>
  <int value="5" label="Abort reported before navigation start"/>
  <int value="6"
      label="Multiple aborted provisional loads at navigation start"/>
</enum>

<enum name="InterruptReason" type="int">
  <int value="0" label="NONE"/>
  <int value="1" label="FILE_FAILED"/>
  <int value="2" label="FILE_ACCESS_DENIED"/>
  <int value="3" label="FILE_NO_SPACE"/>
  <int value="5" label="FILE_NAME_TOO_LONG"/>
  <int value="6" label="FILE_TOO_LARGE"/>
  <int value="7" label="FILE_VIRUS_INFECTED"/>
  <int value="10" label="FILE_TRANSIENT_ERROR"/>
  <int value="11" label="FILE_BLOCKED"/>
  <int value="12" label="FILE_SECURITY_CHECK_FAILED"/>
  <int value="13" label="FILE_TOO_SHORT"/>
  <int value="20" label="NETWORK_FAILED"/>
  <int value="21" label="NETWORK_TIMEOUT"/>
  <int value="22" label="NETWORK_DISCONNECTED"/>
  <int value="23" label="NETWORK_SERVER_DOWN"/>
  <int value="24" label="NETWORK_INVALID_REQUEST"/>
  <int value="30" label="SERVER_FAILED"/>
  <int value="31" label="SERVER_NO_RANGE"/>
  <int value="32" label="SERVER_PRECONDITION (Deprecated)"/>
  <int value="33" label="SERVER_BAD_CONTENT"/>
  <int value="34" label="SERVER_UNAUTHORIZED"/>
  <int value="35" label="SERVER_CERT_PROBLEM"/>
  <int value="36" label="SERVER_FORBIDDEN"/>
  <int value="40" label="USER_CANCELED"/>
  <int value="41" label="USER_SHUTDOWN"/>
  <int value="50" label="CRASH"/>
</enum>

<enum name="InvalidationNetworkChannel" type="int">
  <int value="0" label="PushClientChannel"/>
  <int value="1" label="GCMNetworkChannel"/>
</enum>

<enum name="IOSExternalURLRequestStatus" type="int">
  <int value="0" label="MainFrameAllowed"/>
  <int value="1" label="SubframeAllowed"/>
  <int value="2" label="SubframeBlocked"/>
</enum>

<enum name="IOSShareExtensionReceivedEntryType" type="int">
  <int value="0" label="Invalid item"/>
  <int value="1" label="Cancelled item"/>
  <int value="2" label="Reading list item"/>
  <int value="3" label="Bookmark item"/>
</enum>

<enum name="IPCAttachmentBrokerPrivilegedBrokerAttachmentError" type="int">
  <int value="0" label="DESTINATION_FOUND">
    The brokerable attachment had a valid destination. This is the success case.
  </int>
  <int value="1" label="DESTINATION_NOT_FOUND">
    The brokerable attachment had a destination, but the broker did not have a
    channel of communication with that process.
  </int>
  <int value="2" label="NO_DESTINATION">
    The brokerable attachment did not have a destination process.
  </int>
  <int value="3" label="ERROR_MAKE_INTERMEDIATE">
    Error making an intermediate Mach port.
  </int>
  <int value="4" label="ERROR_PARSE_DUPLICATE_MACH_PORT_MESSAGE">
    Error parsing DuplicateMachPort message.
  </int>
  <int value="5" label="ERROR_TASK_FOR_PID">
    Couldn't get a task port for the process with a given pid.
  </int>
  <int value="6" label="ERROR_MAKE_RECEIVE_PORT">
    Couldn't make a port with receive rights in the destination process.
  </int>
  <int value="7" label="ERROR_SET_ATTRIBUTES">
    Couldn't change the attributes of a Mach port.
  </int>
  <int value="8" label="ERROR_EXTRACT_RIGHT_DEST">
    Couldn't extract a right from the destination process.
  </int>
  <int value="9" label="ERROR_SEND_MACH_PORT">
    Couldn't send a Mach port in a call to mach_msg().
  </int>
  <int value="10" label="ERROR_DECREASE_REF">
    Couldn't decrease the ref count on a Mach port.
  </int>
  <int value="11" label="ERROR_EXTRACT_RIGHT_SOURCE">
    Couldn't extract a right from the source process.
  </int>
  <int value="12" label="ERROR_SOURCE_NOT_FOUND">
    Broker didn't have a channel of communication with the source process.
  </int>
  <int value="13" label="ERROR_COULD_NOT_OPEN_SOURCE_OR_DEST">
    Broker could not open the source or destination process with extra
    privileges.
  </int>
  <int value="14" label="ERROR_INVALID_PERMISSIONS">
    Broker was asked to transfer a HANDLE with invalid permissions.
  </int>
  <int value="15" label="DELAYED">
    Broker was not immediately able to send an attachment.
  </int>
  <int value="16" label="DELAYED_SEND">
    Broker successfully sent a delayed attachment.
  </int>
</enum>

<enum name="IPCAttachmentBrokerUnprivilegedBrokerAttachmentError" type="int">
  <int value="0" label="SUCCESS">
    The brokerable attachment was successfully processed.
  </int>
  <int value="1" label="DESTINATION_NOT_FOUND">
    The brokerable attachment's destination was not the process that received
    the attachment.
  </int>
  <int value="2" label="ERR_RECEIVE_MACH_MESSAGE">
    An error occurred while trying to receive a Mach port with mach_msg().
  </int>
</enum>

<enum name="IPPermissionStatus" type="int">
  <int value="0" label="Unknown"/>
  <int value="1" label="Not requested"/>
  <int value="2" label="Requested but denied"/>
  <int value="3"
      label="Requested and granted after checking mic/camera permission"/>
  <int value="4" label="Requested and granted automatically"/>
</enum>

<enum name="IPv6ConnectivityStatus" type="int">
  <int value="0" label="Incomplete IPv6 Configuration"/>
  <int value="1" label="Complete IPv6 Configuration"/>
</enum>

<enum name="IPV6ProbeResult" type="int">
  <int value="0" label="IPV6_CANNOT_CREATE_SOCKETS"/>
  <int value="1" label="IPV6_CAN_CREATE_SOCKETS"/>
  <int value="2" label="IPV6_GETIFADDRS_FAILED">
    getifaddrs or GetAdaptersAddresses failed
  </int>
  <int value="3" label="IPV6_GLOBAL_ADDRESS_MISSING"/>
  <int value="4" label="IPV6_GLOBAL_ADDRESS_PRESENT"/>
  <int value="5" label="IPV6_INTERFACE_ARRAY_TOO_SHORT"/>
</enum>

<enum name="JavaScriptAPIName" type="int">
  <int value="0" label="GetUserMedia"/>
  <int value="1" label="PeerConnection00"/>
  <int value="2" label="DeprecatedPeerConnection"/>
  <int value="3" label="RTCPeerConnection"/>
  <int value="4" label="GetMediaDevices"/>
  <int value="5" label="MediaStreamRecorder"/>
  <int value="6" label="CanvasCaptureStream"/>
  <int value="7" label="VideoCaptureStream"/>
</enum>

<enum name="KeyboardControlEvent" type="int">
  <int value="0" label="Keyboard was shown."/>
  <int value="1" label="Keyboard was automatically hidden."/>
  <int value="2" label="Keyboard was hidden by the user."/>
</enum>

<enum name="KeychainMigrationStatus" type="int">
  <int value="0" label="Migration hasn't started"/>
  <int value="1" label="Migration succeeded"/>
  <int value="2" label="Migation failed once"/>
  <int value="3" label="Migration failed twice"/>
</enum>

<enum name="KioskLaunchType" type="int">
  <int value="0" label="Enterprise auto launch"/>
  <int value="1" label="Enterprise manual launch"/>
  <int value="2" label="Consumer auto launch"/>
  <int value="3" label="Consumer manual launch"/>
</enum>

<enum name="LanguageCode" type="int">
  <summary>ISO 639 Language Codes.</summary>
  <int value="24929" label="Afar"/>
  <int value="24930" label="Abkhazian"/>
  <int value="24933" label="Avestan"/>
  <int value="24934" label="Afrikaans"/>
  <int value="24939" label="Akan"/>
  <int value="24941" label="Amharic"/>
  <int value="24942" label="Aragonese"/>
  <int value="24946" label="Arabic"/>
  <int value="24947" label="Assamese"/>
  <int value="24950" label="Avaric"/>
  <int value="24953" label="Aymara"/>
  <int value="24954" label="Azerbaijani"/>
  <int value="25185" label="Bashkir"/>
  <int value="25189" label="Belarusian"/>
  <int value="25191" label="Bulgarian"/>
  <int value="25192" label="Bihari"/>
  <int value="25193" label="Bislama"/>
  <int value="25197" label="Bambara"/>
  <int value="25198" label="Bengali"/>
  <int value="25199" label="Tibetan"/>
  <int value="25202" label="Breton"/>
  <int value="25203" label="Bosnian"/>
  <int value="25441" label="Catalan"/>
  <int value="25445" label="Chechen"/>
  <int value="25448" label="Chamorro"/>
  <int value="25455" label="Corsican"/>
  <int value="25458" label="Cree"/>
  <int value="25459" label="Czech"/>
  <int value="25461" label="Church Slavic"/>
  <int value="25462" label="Chuvash"/>
  <int value="25465" label="Welsh"/>
  <int value="25697" label="Danish"/>
  <int value="25701" label="German"/>
  <int value="25718" label="Divehi"/>
  <int value="25722" label="Dzongkha"/>
  <int value="25957" label="Ewe"/>
  <int value="25964" label="Greek"/>
  <int value="25966" label="English"/>
  <int value="25967" label="Esperanto"/>
  <int value="25971" label="Spanish"/>
  <int value="25972" label="Estonian"/>
  <int value="25973" label="Basque"/>
  <int value="26209" label="Persian"/>
  <int value="26214" label="Fulah"/>
  <int value="26217" label="Finnish"/>
  <int value="26218" label="Fijian"/>
  <int value="26223" label="Faroese"/>
  <int value="26226" label="French"/>
  <int value="26233" label="Western Frisian"/>
  <int value="26465" label="Irish"/>
  <int value="26468" label="Scottish Gaelic"/>
  <int value="26476" label="Galician"/>
  <int value="26478" label="Guarani"/>
  <int value="26485" label="Gujarati"/>
  <int value="26486" label="Manx"/>
  <int value="26721" label="Hausa"/>
  <int value="26725" label="Hebrew"/>
  <int value="26729" label="Hindi"/>
  <int value="26735" label="Hiri Motu"/>
  <int value="26738" label="Croatian"/>
  <int value="26740" label="Haitian"/>
  <int value="26741" label="Hungarian"/>
  <int value="26745" label="Armenian"/>
  <int value="26746" label="Herero"/>
  <int value="26977" label="Interlingua"/>
  <int value="26980" label="Indonesian"/>
  <int value="26981" label="Interlingue"/>
  <int value="26983" label="Igbo"/>
  <int value="26985" label="Sichuan Yi"/>
  <int value="26987" label="Inupiaq"/>
  <int value="26991" label="Ido"/>
  <int value="26995" label="Icelandic"/>
  <int value="26996" label="Italian"/>
  <int value="26997" label="Inuktitut"/>
  <int value="27233" label="Japanese"/>
  <int value="27254" label="Javanese"/>
  <int value="27489" label="Georgian"/>
  <int value="27495" label="Kongo"/>
  <int value="27497" label="Kikuyu"/>
  <int value="27498" label="Kuanyama"/>
  <int value="27499" label="Kazakh"/>
  <int value="27500" label="Kalaallisut"/>
  <int value="27501" label="Khmer"/>
  <int value="27502" label="Kannada"/>
  <int value="27503" label="Korean"/>
  <int value="27506" label="Kanuri"/>
  <int value="27507" label="Kashmiri"/>
  <int value="27509" label="Kurdish"/>
  <int value="27510" label="Komi"/>
  <int value="27511" label="Cornish"/>
  <int value="27513" label="Kirghiz"/>
  <int value="27745" label="Latin"/>
  <int value="27746" label="Luxembourgish"/>
  <int value="27751" label="Ganda"/>
  <int value="27753" label="Limburgish"/>
  <int value="27758" label="Lingala"/>
  <int value="27759" label="Lao"/>
  <int value="27764" label="Lithuanian"/>
  <int value="27765" label="Luba-Katanga"/>
  <int value="27766" label="Latvian"/>
  <int value="28007" label="Malagasy"/>
  <int value="28008" label="Marshallese"/>
  <int value="28009" label="Maori"/>
  <int value="28011" label="Macedonian"/>
  <int value="28012" label="Malayalam"/>
  <int value="28014" label="Mongolian"/>
  <int value="28015" label="Moldavian"/>
  <int value="28018" label="Marathi"/>
  <int value="28019" label="Malay"/>
  <int value="28020" label="Maltese"/>
  <int value="28025" label="Burmese"/>
  <int value="28257" label="Nauru"/>
  <int value="28258" label="Norwegian Bokmal"/>
  <int value="28260" label="North Ndebele"/>
  <int value="28261" label="Nepali"/>
  <int value="28263" label="Ndonga"/>
  <int value="28268" label="Dutch"/>
  <int value="28270" label="Norwegian Nynorsk"/>
  <int value="28271" label="Norwegian"/>
  <int value="28274" label="South Ndebele"/>
  <int value="28278" label="Navajo"/>
  <int value="28281" label="Nyanja"/>
  <int value="28515" label="Occitan"/>
  <int value="28522" label="Ojibwa"/>
  <int value="28525" label="Oromo"/>
  <int value="28530" label="Oriya"/>
  <int value="28531" label="Ossetic"/>
  <int value="28769" label="Punjabi"/>
  <int value="28777" label="Pali"/>
  <int value="28780" label="Polish"/>
  <int value="28787" label="Pashto"/>
  <int value="28788" label="Portuguese"/>
  <int value="29045" label="Quechua"/>
  <int value="29293" label="Romansh"/>
  <int value="29294" label="Rundi"/>
  <int value="29295" label="Romanian"/>
  <int value="29301" label="Russian"/>
  <int value="29303" label="Kinyarwanda"/>
  <int value="29537" label="Sanskrit"/>
  <int value="29539" label="Sardinian"/>
  <int value="29540" label="Sindhi"/>
  <int value="29541" label="Northern Sami"/>
  <int value="29543" label="Sango"/>
  <int value="29544" label="Serbo-Croatian"/>
  <int value="29545" label="Sinhala"/>
  <int value="29547" label="Slovak"/>
  <int value="29548" label="Slovenian"/>
  <int value="29549" label="Samoan"/>
  <int value="29550" label="Shona"/>
  <int value="29551" label="Somali"/>
  <int value="29553" label="Albanian"/>
  <int value="29554" label="Serbian"/>
  <int value="29555" label="Swati"/>
  <int value="29556" label="Southern Sotho"/>
  <int value="29557" label="Sundanese"/>
  <int value="29558" label="Swedish"/>
  <int value="29559" label="Swahili"/>
  <int value="29793" label="Tamil"/>
  <int value="29797" label="Telugu"/>
  <int value="29799" label="Tajik"/>
  <int value="29800" label="Thai"/>
  <int value="29801" label="Tigrinya"/>
  <int value="29803" label="Turkmen"/>
  <int value="29804" label="Tagalog"/>
  <int value="29806" label="Tswana"/>
  <int value="29807" label="Tonga"/>
  <int value="29810" label="Turkish"/>
  <int value="29811" label="Tsonga"/>
  <int value="29812" label="Tatar"/>
  <int value="29815" label="Twi"/>
  <int value="29817" label="Tahitian"/>
  <int value="30055" label="Uighur"/>
  <int value="30059" label="Ukrainian"/>
  <int value="30066" label="Urdu"/>
  <int value="30074" label="Uzbek"/>
  <int value="30309" label="Venda"/>
  <int value="30313" label="Vietnamese"/>
  <int value="30319" label="Volapuk"/>
  <int value="30561" label="Walloon"/>
  <int value="30575" label="Wolof"/>
  <int value="30824" label="Xhosa"/>
  <int value="31081" label="Yiddish"/>
  <int value="31087" label="Yoruba"/>
  <int value="31329" label="Zhuang"/>
  <int value="31336" label="Chinese"/>
  <int value="31349" label="Zulu"/>
  <int value="6382437" label="Achinese"/>
  <int value="6382440" label="Acoli"/>
  <int value="6382689" label="Adangme"/>
  <int value="6382713" label="Adyghe"/>
  <int value="6383201" label="Afro-Asiatic Language"/>
  <int value="6383208" label="Afrihili"/>
  <int value="6383982" label="Ainu"/>
  <int value="6384491" label="Akkadian"/>
  <int value="6384741" label="Aleut"/>
  <int value="6384743" label="Algonquian Language"/>
  <int value="6384756" label="Southern Altai"/>
  <int value="6385255" label="Old English"/>
  <int value="6385264" label="Angika"/>
  <int value="6385761" label="Apache Language"/>
  <int value="6386275" label="Aramaic"/>
  <int value="6386286" label="Araucanian"/>
  <int value="6386288" label="Arapaho"/>
  <int value="6386292" label="Artificial Language"/>
  <int value="6386295" label="Arawak"/>
  <int value="6386529" label="Asu"/>
  <int value="6386548" label="Asturian"/>
  <int value="6386792" label="Athapascan Language"/>
  <int value="6387059" label="Australian Language"/>
  <int value="6387553" label="Awadhi"/>
  <int value="6447460" label="Banda"/>
  <int value="6447465" label="Bamileke Language"/>
  <int value="6447468" label="Baluchi"/>
  <int value="6447470" label="Balinese"/>
  <int value="6447475" label="Basa"/>
  <int value="6447476" label="Baltic Language"/>
  <int value="6448490" label="Beja"/>
  <int value="6448493" label="Bemba"/>
  <int value="6448498" label="Berber"/>
  <int value="6448506" label="Bena"/>
  <int value="6449263" label="Bhojpuri"/>
  <int value="6449515" label="Bikol"/>
  <int value="6449518" label="Bini"/>
  <int value="6450273" label="Siksika"/>
  <int value="6450804" label="Bantu"/>
  <int value="6451809" label="Braj"/>
  <int value="6451832" label="Bodo"/>
  <int value="6452331" label="Batak"/>
  <int value="6452577" label="Buriat"/>
  <int value="6452583" label="Buginese"/>
  <int value="6453614" label="Blin"/>
  <int value="6512996" label="Caddo"/>
  <int value="6513001" label="Central American Indian Language"/>
  <int value="6513010" label="Carib"/>
  <int value="6513013" label="Caucasian Language"/>
  <int value="6513017" label="Cayuga"/>
  <int value="6513512" label="Atsam"/>
  <int value="6514018" label="Cebuano"/>
  <int value="6514028" label="Celtic Language"/>
  <int value="6514535" label="Chiga"/>
  <int value="6514786" label="Chibcha"/>
  <int value="6514791" label="Chagatai"/>
  <int value="6514795" label="Chuukese"/>
  <int value="6514797" label="Mari"/>
  <int value="6514798" label="Chinook Jargon"/>
  <int value="6514799" label="Choctaw"/>
  <int value="6514800" label="Chipewyan"/>
  <int value="6514802" label="Cherokee"/>
  <int value="6514809" label="Cheyenne"/>
  <int value="6516067" label="Chamic Language"/>
  <int value="6516592" label="Coptic"/>
  <int value="6516837" label="English-based Creole or Pidgin"/>
  <int value="6516838" label="French-based Creole or Pidgin"/>
  <int value="6516848" label="Portuguese-based Creole or Pidgin"/>
  <int value="6517352" label="Crimean Turkish"/>
  <int value="6517360" label="Creole or Pidgin"/>
  <int value="6517602" label="Kashubian"/>
  <int value="6518131" label="Cushitic Language"/>
  <int value="6578539" label="Dakota"/>
  <int value="6578546" label="Dargwa"/>
  <int value="6578550" label="Taita"/>
  <int value="6578553" label="Dayak"/>
  <int value="6579564" label="Delaware"/>
  <int value="6579566" label="Slave"/>
  <int value="6580082" label="Dogrib"/>
  <int value="6580590" label="Dinka"/>
  <int value="6580837" label="Zarma"/>
  <int value="6582121" label="Dogri"/>
  <int value="6582881" label="Dravidian Language"/>
  <int value="6583138" label="Lower Sorbian"/>
  <int value="6583649" label="Duala"/>
  <int value="6583661" label="Middle Dutch"/>
  <int value="6584693" label="Dyula"/>
  <int value="6644341" label="Embu"/>
  <int value="6645353" label="Efik"/>
  <int value="6645625" label="Ancient Egyptian"/>
  <int value="6646625" label="Ekajuk"/>
  <int value="6646904" label="Elamite"/>
  <int value="6647405" label="Middle English"/>
  <int value="6649711" label="Ewondo"/>
  <int value="6709614" label="Fang"/>
  <int value="6709620" label="Fanti"/>
  <int value="6711660" label="Filipino"/>
  <int value="6711669" label="Finno-Ugrian Language"/>
  <int value="6713198" label="Fon"/>
  <int value="6713965" label="Middle French"/>
  <int value="6713967" label="Old French"/>
  <int value="6713970" label="Northern Frisian"/>
  <int value="6713971" label="Eastern Frisian"/>
  <int value="6714738" label="Friulian"/>
  <int value="6775137" label="Ga"/>
  <int value="6775161" label="Gayo"/>
  <int value="6775393" label="Gbaya"/>
  <int value="6776173" label="Germanic Language"/>
  <int value="6776186" label="Geez"/>
  <int value="6777196" label="Gilbertese"/>
  <int value="6778216" label="Middle High German"/>
  <int value="6778728" label="Old High German"/>
  <int value="6778734" label="Gondi"/>
  <int value="6778738" label="Gorontalo"/>
  <int value="6778740" label="Gothic"/>
  <int value="6779490" label="Grebo"/>
  <int value="6779491" label="Ancient Greek"/>
  <int value="6779767" label="Swiss German"/>
  <int value="6780282" label="Gusii"/>
  <int value="6780777" label="Gwich'in"/>
  <int value="6840681" label="Haida"/>
  <int value="6840695" label="Hawaiian"/>
  <int value="6842732" label="Hiligaynon"/>
  <int value="6842733" label="Himachali"/>
  <int value="6842740" label="Hittite"/>
  <int value="6843758" label="Hmong"/>
  <int value="6845282" label="Upper Sorbian"/>
  <int value="6845808" label="Hupa"/>
  <int value="6906465" label="Iban"/>
  <int value="6908527" label="Ijo"/>
  <int value="6909039" label="Iloko"/>
  <int value="6909539" label="Indic Language"/>
  <int value="6909541" label="Indo-European Language"/>
  <int value="6909544" label="Ingush"/>
  <int value="6910561" label="Iranian Language"/>
  <int value="6910575" label="Iroquoian Language"/>
  <int value="6972015" label="Lojban"/>
  <int value="6974819" label="Machame"/>
  <int value="6975602" label="Judeo-Persian"/>
  <int value="6976098" label="Judeo-Arabic"/>
  <int value="7037281" label="Kara-Kalpak"/>
  <int value="7037282" label="Kabyle"/>
  <int value="7037283" label="Kachin"/>
  <int value="7037290" label="Jju"/>
  <int value="7037293" label="Kamba"/>
  <int value="7037298" label="Karen"/>
  <int value="7037303" label="Kawi"/>
  <int value="7037540" label="Kabardian"/>
  <int value="7037799" label="Tyap"/>
  <int value="7038053" label="Makonde"/>
  <int value="7038305" label="Kabuverdianu"/>
  <int value="7038575" label="Koro"/>
  <int value="7039073" label="Khasi"/>
  <int value="7039081" label="Khoisan Language"/>
  <int value="7039087" label="Khotanese"/>
  <int value="7039089" label="Koyra Chiini"/>
  <int value="7040110" label="Kalenjin"/>
  <int value="7040354" label="Kimbundu"/>
  <int value="7040875" label="Konkani"/>
  <int value="7040883" label="Kosraean"/>
  <int value="7041125" label="Kpelle"/>
  <int value="7041635" label="Karachay-Balkar"/>
  <int value="7041644" label="Karelian"/>
  <int value="7041647" label="Kru"/>
  <int value="7041653" label="Kurukh"/>
  <int value="7041890" label="Shambala"/>
  <int value="7041896" label="Colognian"/>
  <int value="7042413" label="Kumyk"/>
  <int value="7042420" label="Kutenai"/>
  <int value="7102820" label="Ladino"/>
  <int value="7102823" label="Langi"/>
  <int value="7102824" label="Lahnda"/>
  <int value="7102829" label="Lamba"/>
  <int value="7103866" label="Lezghian"/>
  <int value="7106412" label="Mongo"/>
  <int value="7106426" label="Lozi"/>
  <int value="7107937" label="Luba-Lulua"/>
  <int value="7107945" label="Luiseno"/>
  <int value="7107950" label="Lunda"/>
  <int value="7107951" label="Luo"/>
  <int value="7107955" label="Lushai"/>
  <int value="7107961" label="Luyia"/>
  <int value="7168356" label="Madurese"/>
  <int value="7168359" label="Magahi"/>
  <int value="7168361" label="Maithili"/>
  <int value="7168363" label="Makasar"/>
  <int value="7168366" label="Mandingo"/>
  <int value="7168368" label="Austronesian Language"/>
  <int value="7168371" label="Masai"/>
  <int value="7169126" label="Moksha"/>
  <int value="7169138" label="Mandar"/>
  <int value="7169390" label="Mende"/>
  <int value="7169394" label="Meru"/>
  <int value="7169637" label="Morisyen"/>
  <int value="7169889" label="Middle Irish"/>
  <int value="7170403" label="Micmac"/>
  <int value="7170414" label="Minangkabau"/>
  <int value="7170419" label="Miscellaneous Language"/>
  <int value="7170920" label="Mon-Khmer Language"/>
  <int value="7171683" label="Manchu"/>
  <int value="7171689" label="Manipuri"/>
  <int value="7171695" label="Manobo Language"/>
  <int value="7171944" label="Mohawk"/>
  <int value="7171955" label="Mossi"/>
  <int value="7173484" label="Multiple Languages"/>
  <int value="7173486" label="Munda Language"/>
  <int value="7173491" label="Creek"/>
  <int value="7173996" label="Mirandese"/>
  <int value="7174002" label="Marwari"/>
  <int value="7174510" label="Mayan Language"/>
  <int value="7174518" label="Erzya"/>
  <int value="7233896" label="Nahuatl"/>
  <int value="7233897" label="North American Indian Language"/>
  <int value="7233904" label="Neapolitan"/>
  <int value="7233905" label="Nama"/>
  <int value="7234675" label="Low German"/>
  <int value="7234935" label="Newari"/>
  <int value="7235937" label="Nias"/>
  <int value="7235939" label="Niger-Kordofanian Language"/>
  <int value="7235957" label="Niuean"/>
  <int value="7237479" label="Nogai"/>
  <int value="7237486" label="Old Norse"/>
  <int value="7237999" label="N'Ko"/>
  <int value="7238511" label="Northern Sotho"/>
  <int value="7239010" label="Nubian Language"/>
  <int value="7239523" label="Classical Newari"/>
  <int value="7240045" label="Nyamwezi"/>
  <int value="7240046" label="Nyankole"/>
  <int value="7240047" label="Nyoro"/>
  <int value="7240297" label="Nzima"/>
  <int value="7304033" label="Osage"/>
  <int value="7304289" label="Ottoman Turkish"/>
  <int value="7304303" label="Otomian Language"/>
  <int value="7364961" label="Papuan Language"/>
  <int value="7364967" label="Pangasinan"/>
  <int value="7364972" label="Pahlavi"/>
  <int value="7364973" label="Pampanga"/>
  <int value="7364976" label="Papiamento"/>
  <int value="7364981" label="Palauan"/>
  <int value="7365999" label="Old Persian"/>
  <int value="7366761" label="Philippine Language"/>
  <int value="7366766" label="Phoenician"/>
  <int value="7368558" label="Pohnpeian"/>
  <int value="7369313" label="Prakrit Language"/>
  <int value="7369327" label="Old Provencal"/>
  <int value="7496042" label="Rajasthani"/>
  <int value="7496048" label="Rapanui"/>
  <int value="7496050" label="Rarotongan"/>
  <int value="7499617" label="Romance Language"/>
  <int value="7499622" label="Rombo"/>
  <int value="7499629" label="Romany"/>
  <int value="7501168" label="Aromanian"/>
  <int value="7501675" label="Rwa"/>
  <int value="7561572" label="Sandawe"/>
  <int value="7561576" label="Yakut"/>
  <int value="7561577" label="South American Indian Language"/>
  <int value="7561580" label="Salishan Language"/>
  <int value="7561581" label="Samaritan Aramaic"/>
  <int value="7561585" label="Samburu"/>
  <int value="7561587" label="Sasak"/>
  <int value="7561588" label="Santali"/>
  <int value="7562094" label="Sicilian"/>
  <int value="7562095" label="Scots"/>
  <int value="7562597" label="Seneca"/>
  <int value="7562600" label="Sena"/>
  <int value="7562604" label="Selkup"/>
  <int value="7562605" label="Semitic Language"/>
  <int value="7562611" label="Koyraboro Senni"/>
  <int value="7563105" label="Old Irish"/>
  <int value="7563118" label="Sign Language"/>
  <int value="7563369" label="Tachelhit"/>
  <int value="7563374" label="Shan"/>
  <int value="7563620" label="Sidamo"/>
  <int value="7563631" label="Siouan Language"/>
  <int value="7563636" label="Sino-Tibetan Language"/>
  <int value="7564385" label="Slavic Language"/>
  <int value="7564641" label="Southern Sami"/>
  <int value="7564649" label="Sami Language"/>
  <int value="7564650" label="Lule Sami"/>
  <int value="7564654" label="Inari Sami"/>
  <int value="7564659" label="Skolt Sami"/>
  <int value="7564907" label="Soninke"/>
  <int value="7565159" label="Sogdien"/>
  <int value="7565166" label="Songhai"/>
  <int value="7565934" label="Sranan Tongo"/>
  <int value="7565938" label="Serer"/>
  <int value="7566177" label="Nilo-Saharan Language"/>
  <int value="7566201" label="Saho"/>
  <int value="7566699" label="Sukuma"/>
  <int value="7566707" label="Susu"/>
  <int value="7566712" label="Sumerian"/>
  <int value="7567202" label="Comorian"/>
  <int value="7567715" label="Classical Syriac"/>
  <int value="7567730" label="Syriac"/>
  <int value="7627113" label="Tai Language"/>
  <int value="7628141" label="Timne"/>
  <int value="7628143" label="Teso"/>
  <int value="7628146" label="Tereno"/>
  <int value="7628148" label="Tetum"/>
  <int value="7629159" label="Tigre"/>
  <int value="7629174" label="Tiv"/>
  <int value="7629676" label="Tokelau"/>
  <int value="7629928" label="Klingon"/>
  <int value="7629929" label="Tlingit"/>
  <int value="7630184" label="Tamashek"/>
  <int value="7630695" label="Nyasa Tonga"/>
  <int value="7630953" label="Tok Pisin"/>
  <int value="7631478" label="Taroko"/>
  <int value="7631721" label="Tsimshian"/>
  <int value="7632237" label="Tumbuka"/>
  <int value="7632240" label="Tupi Language"/>
  <int value="7632244" label="Altaic Language"/>
  <int value="7632492" label="Tuvalu"/>
  <int value="7632753" label="Tasawaq"/>
  <int value="7633270" label="Tuvinian"/>
  <int value="7633517" label="Central Morocco Tamazight"/>
  <int value="7693421" label="Udmurt"/>
  <int value="7694177" label="Ugaritic"/>
  <int value="7695714" label="Umbundu"/>
  <int value="7695972" label="Unknown Language"/>
  <int value="7758185" label="Vai"/>
  <int value="7761780" label="Votic"/>
  <int value="7763310" label="Vunjo"/>
  <int value="7823723" label="Wakashan Language"/>
  <int value="7823724" label="Walamo"/>
  <int value="7823730" label="Waray"/>
  <int value="7823731" label="Washo"/>
  <int value="7824750" label="Sorbian Language"/>
  <int value="7889260" label="Kalmyk"/>
  <int value="7892839" label="Soga"/>
  <int value="7954799" label="Yao"/>
  <int value="7954800" label="Yapese"/>
  <int value="7958635" label="Yupik Language"/>
  <int value="7959909" label="Cantonese"/>
  <int value="8020336" label="Zapotec"/>
  <int value="8020588" label="Blissymbols"/>
  <int value="8021358" label="Zenaga"/>
  <int value="8023652" label="Zande"/>
  <int value="8025454" label="Zuni"/>
  <int value="8026232" label="No linguistic content"/>
  <int value="8026721" label="Zaza"/>
</enum>

<enum name="LastSettingParsed" type="int">
  <obsolete>
    Deprecated 2015-10-05 in Issue 433475. Histogram was used temorarily for
    diagnosing crash causes.
  </obsolete>
  <int value="0" label="Update Empty"/>
  <int value="1" label="Update Parsed"/>
  <int value="2" label="Update Invalid"/>
  <int value="3" label="UpdateOrigins Empty"/>
  <int value="4" label="UpdateOrigins Parsed"/>
  <int value="5" label="UpdateOrigins Invalid"/>
  <int value="6" label="HandleUpdateOrigins Empty"/>
  <int value="7" label="HandleUpdateOrigins Parsed"/>
  <int value="8" label="HandleUpdateOrigins Invalid"/>
</enum>

<enum name="LaunchErrorCodes" type="int">
  <int value="0" label="SBOX_ALL_OK"/>
  <int value="1" label="SBOX_ERROR_GENERIC"/>
  <int value="2" label="SBOX_ERROR_BAD_PARAMS"/>
  <int value="3" label="SBOX_ERROR_UNSUPPORTED"/>
  <int value="4" label="SBOX_ERROR_NO_SPACE"/>
  <int value="5" label="SBOX_ERROR_INVALID_IPC"/>
  <int value="6" label="SBOX_ERROR_FAILED_IPC"/>
  <int value="7" label="SBOX_ERROR_NO_HANDLE"/>
  <int value="8" label="SBOX_ERROR_UNEXPECTED_CALL"/>
  <int value="9" label="SBOX_ERROR_WAIT_ALREADY_CALLED"/>
  <int value="10" label="SBOX_ERROR_CHANNEL_ERROR"/>
  <int value="11" label="SBOX_ERROR_CANNOT_CREATE_DESKTOP"/>
  <int value="12" label="SBOX_ERROR_CANNOT_CREATE_WINSTATION"/>
  <int value="13" label="SBOX_ERROR_FAILED_TO_SWITCH_BACK_WINSTATION"/>
  <int value="14" label="SBOX_ERROR_INVALID_APP_CONTAINER"/>
  <int value="15" label="SBOX_ERROR_INVALID_CAPABILITY"/>
  <int value="16" label="SBOX_ERROR_CANNOT_INIT_APPCONTAINER"/>
  <int value="17" label="SBOX_ERROR_PROC_THREAD_ATTRIBUTES"/>
  <int value="18" label="SBOX_ERROR_CREATE_PROCESS"/>
  <int value="19" label="SBOX_ERROR_DELEGATE_PRE_SPAWN"/>
  <int value="20" label="SBOX_ERROR_ASSIGN_PROCESS_TO_JOB_OBJECT"/>
  <int value="21" label="SBOX_ERROR_SET_THREAD_TOKEN"/>
  <int value="22" label="SBOX_ERROR_GET_THREAD_CONTEXT"/>
  <int value="23" label="SBOX_ERROR_DUPLICATE_TARGET_INFO"/>
  <int value="24" label="SBOX_ERROR_SET_LOW_BOX_TOKEN"/>
  <int value="25" label="SBOX_ERROR_CREATE_FILE_MAPPING"/>
  <int value="26" label="SBOX_ERROR_DUPLICATE_SHARED_SECTION"/>
  <int value="27" label="SBOX_ERROR_MAP_VIEW_OF_SHARED_SECTION"/>
  <int value="28" label="SBOX_ERROR_APPLY_ASLR_MITIGATIONS"/>
  <int value="29" label="SBOX_ERROR_SETUP_BASIC_INTERCEPTIONS"/>
  <int value="30" label="SBOX_ERROR_SETUP_INTERCEPTION_SERVICE"/>
  <int value="31" label="SBOX_ERROR_INITIALIZE_INTERCEPTIONS"/>
  <int value="32" label="SBOX_ERROR_SETUP_NTDLL_IMPORTS"/>
  <int value="33" label="SBOX_ERROR_SETUP_HANDLE_CLOSER"/>
  <int value="34" label="SBOX_ERROR_CANNOT_GET_WINSTATION"/>
  <int value="35" label="SBOX_ERROR_CANNOT_QUERY_WINSTATION_SECURITY"/>
  <int value="36" label="SBOX_ERROR_CANNOT_GET_DESKTOP"/>
  <int value="37" label="SBOX_ERROR_CANNOT_QUERY_DESKTOP_SECURITY"/>
  <int value="38" label="SBOX_ERROR_CANNOT_SETUP_INTERCEPTION_CONFIG_BUFFER"/>
  <int value="39" label="SBOX_ERROR_CANNOT_COPY_DATA_TO_CHILD"/>
  <int value="40" label="SBOX_ERROR_CANNOT_SETUP_INTERCEPTION_THUNK"/>
  <int value="41" label="SBOX_ERROR_CANNOT_RESOLVE_INTERCEPTION_THUNK"/>
  <int value="42" label="SBOX_ERROR_CANNOT_WRITE_INTERCEPTION_THUNK"/>
  <int value="1002" label="LAUNCH_RESULT_SUCCESS"/>
  <int value="1003" label="LAUNCH_RESULT_FAILURE"/>
</enum>

<enum name="LaunchFromHomeScreen" type="int">
  <int value="0" label="Launched as standalone web app"/>
  <int value="1" label="Launched as a tab"/>
</enum>

<enum name="LaunchFromHomeScreenSource" type="int">
  <int value="0" label="Unknown"/>
  <int value="1" label="Menu item"/>
  <int value="2" label="App banner"/>
  <int value="3" label="Bookmark navigator widget"/>
  <int value="4" label="Bookmark shortcut widget"/>
  <int value="5" label="Notification"/>
</enum>

<enum name="LaunchIntentFlags" type="int">
  <int value="0" label="No flags"/>
  <int value="524288" label="NEW_DOCUMENT"/>
  <int value="268435456" label="NEW_TASK"/>
  <int value="268959744" label="NEW_TASK | NEW_DOCUMENT"/>
</enum>

<enum name="LevelDBCorruptionRestoreValue" type="int">
  <int value="0" label="Database Delete Success"/>
  <int value="1" label="Database Delete Failure"/>
  <int value="2" label="Database Repair Success"/>
</enum>

<enum name="LevelDBCorruptionTypes" type="int">
  <int value="0" label="other"/>
  <int value="1" label="missing files"/>
  <int value="2" label="log record too small"/>
  <int value="3" label="corrupted internal key"/>
  <int value="4" label="partial record"/>
  <int value="5" label="missing start of fragmented record"/>
  <int value="6" label="error in middle of record"/>
  <int value="7" label="unknown record type"/>
  <int value="8" label="truncated record at end"/>
  <int value="9" label="bad record length"/>
  <int value="10" label="VersionEdit"/>
  <int value="11" label="FileReader invoked with unexpected value"/>
  <int value="12" label="corrupted key"/>
  <int value="13" label="CURRENT file does not end with newline"/>
  <int value="14" label="no meta-nextfile entry"/>
  <int value="15" label="no meta-lognumber entry"/>
  <int value="16" label="no last-sequence-number entry"/>
  <int value="17" label="malformed WriteBatch"/>
  <int value="18" label="bad WriteBatch Put"/>
  <int value="19" label="bad WriteBatch Delete"/>
  <int value="20" label="unknown WriteBatch tag"/>
  <int value="21" label="WriteBatch has wrong count"/>
  <int value="22" label="bad entry in block"/>
  <int value="23" label="bad block contents"/>
  <int value="24" label="bad block handle"/>
  <int value="25" label="truncated block read"/>
  <int value="26" label="block checksum mismatch"/>
  <int value="27" label="checksum mismatch"/>
  <int value="28" label="corrupted compressed block contents"/>
  <int value="29" label="bad block type"/>
  <int value="30" label="bad magic number"/>
  <int value="31" label="file is too short"/>
</enum>

<enum name="LevelDBDatabaseCorruptionRestoreValue" type="int">
  <int value="0" label="Delete Success"/>
  <int value="1" label="Delete Failure"/>
  <int value="2" label="Repair Success"/>
</enum>

<enum name="LevelDBErrorCount" type="int">
  <int value="1" label="Failure"/>
</enum>

<enum name="LevelDBErrorTypes" type="int">
  <int value="0" label="NotFound"/>
  <int value="1" label="Corruption"/>
  <int value="2" label="IOError"/>
  <int value="3" label="Other"/>
</enum>

<enum name="LevelDBIOErrorMethods" type="int">
  <int value="0" label="SequentialFileRead"/>
  <int value="1" label="SequentialFileSkip"/>
  <int value="2" label="RandomAccessFileRead"/>
  <int value="3" label="WritableFileAppend"/>
  <int value="4" label="WritableFileClose"/>
  <int value="5" label="WritableFileFlush"/>
  <int value="6" label="WritableFileSync"/>
  <int value="7" label="NewSequentialFile"/>
  <int value="8" label="NewRandomAccessFile"/>
  <int value="9" label="NewWritableFile"/>
  <int value="10" label="DeleteFile"/>
  <int value="11" label="CreateDir"/>
  <int value="12" label="DeleteDir"/>
  <int value="13" label="GetFileSize"/>
  <int value="14" label="RenameFile"/>
  <int value="15" label="LockFile"/>
  <int value="16" label="UnlockFile"/>
  <int value="17" label="GetTestDirectory"/>
  <int value="18" label="NewLogger"/>
  <int value="19" label="SyncParent"/>
  <int value="20" label="GetChildren"/>
  <int value="21" label="NewAppendableFile"/>
</enum>

<enum name="LevelDBStatus" type="int">
  <int value="0" label="OK"/>
  <int value="1" label="Not Found"/>
  <int value="2" label="Corruption"/>
  <int value="3" label="Not Supported"/>
  <int value="4" label="Invalid Argument"/>
  <int value="5" label="IO Error"/>
</enum>

<enum name="LevelDBValueCorruptionDeleteValue" type="int">
  <int value="0" label="Delete Success"/>
  <int value="1" label="Delete Failure"/>
</enum>

<enum name="LibraryLoadFromApkStatus" type="int">
  <int value="0" label="Unknown"/>
  <int value="1" label="Not supported">obsolete</int>
  <int value="2" label="Supported">obsolete</int>
  <int value="3" label="Successful"/>
  <int value="4" label="Used unpack library fallback">obsolete</int>
  <int value="5" label="Used no map executable support fallback">obsolete</int>
</enum>

<enum name="LinkMonitorFailureType" type="int">
  <int value="0" label="Local MAC Address Not Found"/>
  <int value="1" label="Client Startup Failure"/>
  <int value="2" label="Transmission Failure"/>
  <int value="3" label="Failure Threshold Reached"/>
</enum>

<enum name="LinuxAudioIO" type="int">
  <int value="0" label="PulseAudio"/>
  <int value="1" label="ALSA"/>
  <int value="2" label="Cras"/>
</enum>

<enum name="LinuxBackendUsage" type="int">
  <int value="0" label="KDE_NOFLAG_PLAINTEXT"/>
  <int value="1" label="KDE_NOFLAG_KWALLET"/>
  <int value="2" label="KDE_KWALLETFLAG_PLAINTEXT"/>
  <int value="3" label="KDE_KWALLETFLAG_KWALLET"/>
  <int value="4" label="KDE_GNOMEFLAG_PLAINTEXT"/>
  <int value="5" label="KDE_GNOMEFLAG_KEYRING"/>
  <int value="6" label="KDE_GNOMEFLAG_LIBSECRET"/>
  <int value="7" label="KDE_BASICFLAG_PLAINTEXT"/>
  <int value="8" label="GNOME_NOFLAG_PLAINTEXT"/>
  <int value="9" label="GNOME_NOFLAG_KEYRING"/>
  <int value="10" label="GNOME_NOFLAG_LIBSECRET"/>
  <int value="11" label="GNOME_GNOMEFLAG_PLAINTEXT"/>
  <int value="12" label="GNOME_GNOMEFLAG_KEYRING"/>
  <int value="13" label="GNOME_GNOMEFLAG_LIBSECRET"/>
  <int value="14" label="GNOME_KWALLETFLAG_PLAINTEXT"/>
  <int value="15" label="GNOME_KWALLETFLAG_KWALLET"/>
  <int value="16" label="GNOME_BASICFLAG_PLAINTEXT"/>
  <int value="17" label="OTHER_PLAINTEXT"/>
  <int value="18" label="OTHER_KWALLET"/>
  <int value="19" label="OTHER_KEYRING"/>
  <int value="20" label="OTHER_LIBSECRET"/>
</enum>

<enum name="LinuxGlibcVersion" type="int">
  <int value="0" label="Not Parseable"/>
  <int value="1" label="Unknown"/>
  <int value="2" label="2.11"/>
  <int value="3" label="2.12"/>
  <int value="4" label="2.13"/>
  <int value="5" label="2.14"/>
  <int value="6" label="2.15"/>
  <int value="7" label="2.16"/>
  <int value="8" label="2.17"/>
  <int value="9" label="2.18"/>
  <int value="10" label="2.19"/>
  <int value="11" label="2.20"/>
  <int value="12" label="2.21"/>
  <int value="13" label="2.22"/>
  <int value="14" label="2.23"/>
  <int value="15" label="2.24"/>
  <int value="16" label="2.25"/>
  <int value="17" label="2.26"/>
  <int value="18" label="2.27"/>
  <int value="19" label="2.28"/>
  <int value="20" label="2.29"/>
</enum>

<enum name="LinuxSandboxStatus" type="int">
  <int value="0" label="none"/>
  <int value="1" label="suid"/>
  <int value="2" label="pidns"/>
  <int value="3" label="suid, pidns"/>
  <int value="4" label="netns"/>
  <int value="5" label="suid, netns"/>
  <int value="6" label="pidns, netns"/>
  <int value="7" label="suid, pidns, netns"/>
  <int value="8" label="seccomp-bpf"/>
  <int value="9" label="suid, seccomp-bpf"/>
  <int value="10" label="pidns, seccomp-bpf"/>
  <int value="11" label="suid, pidns, seccomp-bpf"/>
  <int value="12" label="netns, seccomp-bpf"/>
  <int value="13" label="suid, netns, seccomp-bpf"/>
  <int value="14" label="pidns, netns, seccomp-bpf"/>
  <int value="15" label="suid, pidns, netns, seccomp-bpf"/>
  <int value="16" label="yama"/>
  <int value="17" label="suid, yama"/>
  <int value="18" label="pidns, yama"/>
  <int value="19" label="suid, pidns, yama"/>
  <int value="20" label="netns, yama"/>
  <int value="21" label="suid, netns, yama"/>
  <int value="22" label="pidns, netns, yama"/>
  <int value="23" label="suid, pidns, netns, yama"/>
  <int value="24" label="seccomp-bpf, yama"/>
  <int value="25" label="suid, seccomp-bpf, yama"/>
  <int value="26" label="pidns, seccomp-bpf, yama"/>
  <int value="27" label="suid, pidns, seccomp-bpf, yama"/>
  <int value="28" label="netns, seccomp-bpf, yama"/>
  <int value="29" label="suid, netns, seccomp-bpf, yama"/>
  <int value="30" label="pidns, netns, seccomp-bpf, yama"/>
  <int value="31" label="suid, pidns, netns, seccomp-bpf, yama"/>
  <int value="32" label="seccomp-tsync"/>
  <int value="33" label="suid, seccomp-tsync"/>
  <int value="34" label="pidns, seccomp-tsync"/>
  <int value="35" label="suid, pidns, seccomp-tsync"/>
  <int value="36" label="netns, seccomp-tsync"/>
  <int value="37" label="suid, netns, seccomp-tsync"/>
  <int value="38" label="pidns, netns, seccomp-tsync"/>
  <int value="39" label="suid, pidns, netns, seccomp-tsync"/>
  <int value="40" label="seccomp-bpf, seccomp-tsync"/>
  <int value="41" label="suid, seccomp-bpf, seccomp-tsync"/>
  <int value="42" label="pidns, seccomp-bpf, seccomp-tsync"/>
  <int value="43" label="suid, pidns, seccomp-bpf, seccomp-tsync"/>
  <int value="44" label="netns, seccomp-bpf, seccomp-tsync"/>
  <int value="45" label="suid, netns, seccomp-bpf, seccomp-tsync"/>
  <int value="46" label="pidns, netns, seccomp-bpf, seccomp-tsync"/>
  <int value="47" label="suid, pidns, netns, seccomp-bpf, seccomp-tsync"/>
  <int value="48" label="yama, seccomp-tsync"/>
  <int value="49" label="suid, yama, seccomp-tsync"/>
  <int value="50" label="pidns, yama, seccomp-tsync"/>
  <int value="51" label="suid, pidns, yama, seccomp-tsync"/>
  <int value="52" label="netns, yama, seccomp-tsync"/>
  <int value="53" label="suid, netns, yama, seccomp-tsync"/>
  <int value="54" label="pidns, netns, yama, seccomp-tsync"/>
  <int value="55" label="suid, pidns, netns, yama, seccomp-tsync"/>
  <int value="56" label="seccomp-bpf, yama, seccomp-tsync"/>
  <int value="57" label="suid, seccomp-bpf, yama, seccomp-tsync"/>
  <int value="58" label="pidns, seccomp-bpf, yama, seccomp-tsync"/>
  <int value="59" label="suid, pidns, seccomp-bpf, yama, seccomp-tsync"/>
  <int value="60" label="netns, seccomp-bpf, yama, seccomp-tsync"/>
  <int value="61" label="suid, netns, seccomp-bpf, yama, seccomp-tsync"/>
  <int value="62" label="pidns, netns, seccomp-bpf, yama, seccomp-tsync"/>
  <int value="63" label="suid, pidns, netns, seccomp-bpf, yama, seccomp-tsync"/>
  <int value="64" label="userns"/>
  <int value="65" label="suid, userns"/>
  <int value="66" label="userns, pidns"/>
  <int value="67" label="suid, userns, pidns"/>
  <int value="68" label="userns, netns"/>
  <int value="69" label="suid, userns, netns"/>
  <int value="70" label="userns, pidns, netns"/>
  <int value="71" label="suid, userns, pidns, netns"/>
  <int value="72" label="userns, seccomp-bpf"/>
  <int value="73" label="suid, userns, seccomp-bpf"/>
  <int value="74" label="userns, pidns, seccomp-bpf"/>
  <int value="75" label="suid, userns, pidns, seccomp-bpf"/>
  <int value="76" label="userns, netns, seccomp-bpf"/>
  <int value="77" label="suid, userns, netns, seccomp-bpf"/>
  <int value="78" label="userns, pidns, netns, seccomp-bpf"/>
  <int value="79" label="suid, userns, pidns, netns, seccomp-bpf"/>
  <int value="80" label="userns, yama"/>
  <int value="81" label="suid, userns, yama"/>
  <int value="82" label="userns, pidns, yama"/>
  <int value="83" label="suid, userns, pidns, yama"/>
  <int value="84" label="userns, netns, yama"/>
  <int value="85" label="suid, userns, netns, yama"/>
  <int value="86" label="userns, pidns, netns, yama"/>
  <int value="87" label="suid, userns, pidns, netns, yama"/>
  <int value="88" label="userns, seccomp-bpf, yama"/>
  <int value="89" label="suid, userns, seccomp-bpf, yama"/>
  <int value="90" label="userns, pidns, seccomp-bpf, yama"/>
  <int value="91" label="suid, userns, pidns, seccomp-bpf, yama"/>
  <int value="92" label="userns, netns, seccomp-bpf, yama"/>
  <int value="93" label="suid, userns, netns, seccomp-bpf, yama"/>
  <int value="94" label="userns, pidns, netns, seccomp-bpf, yama"/>
  <int value="95" label="suid, userns, pidns, netns, seccomp-bpf, yama"/>
  <int value="96" label="userns, seccomp-tsync"/>
  <int value="97" label="suid, userns, seccomp-tsync"/>
  <int value="98" label="userns, pidns, seccomp-tsync"/>
  <int value="99" label="suid, userns, pidns, seccomp-tsync"/>
  <int value="100" label="userns, netns, seccomp-tsync"/>
  <int value="101" label="suid, userns, netns, seccomp-tsync"/>
  <int value="102" label="userns, pidns, netns, seccomp-tsync"/>
  <int value="103" label="suid, userns, pidns, netns, seccomp-tsync"/>
  <int value="104" label="userns, seccomp-bpf, seccomp-tsync"/>
  <int value="105" label="suid, userns, seccomp-bpf, seccomp-tsync"/>
  <int value="106" label="userns, pidns, seccomp-bpf, seccomp-tsync"/>
  <int value="107" label="suid, userns, pidns, seccomp-bpf, seccomp-tsync"/>
  <int value="108" label="userns, netns, seccomp-bpf, seccomp-tsync"/>
  <int value="109" label="suid, userns, netns, seccomp-bpf, seccomp-tsync"/>
  <int value="110" label="userns, pidns, netns, seccomp-bpf, seccomp-tsync"/>
  <int value="111"
      label="suid, userns, pidns, netns, seccomp-bpf, seccomp-tsync"/>
  <int value="112" label="userns, yama, seccomp-tsync"/>
  <int value="113" label="suid, userns, yama, seccomp-tsync"/>
  <int value="114" label="userns, pidns, yama, seccomp-tsync"/>
  <int value="115" label="suid, userns, pidns, yama, seccomp-tsync"/>
  <int value="116" label="userns, netns, yama, seccomp-tsync"/>
  <int value="117" label="suid, userns, netns, yama, seccomp-tsync"/>
  <int value="118" label="userns, pidns, netns, yama, seccomp-tsync"/>
  <int value="119" label="suid, userns, pidns, netns, yama, seccomp-tsync"/>
  <int value="120" label="userns, seccomp-bpf, yama, seccomp-tsync"/>
  <int value="121" label="suid, userns, seccomp-bpf, yama, seccomp-tsync"/>
  <int value="122" label="userns, pidns, seccomp-bpf, yama, seccomp-tsync"/>
  <int value="123"
      label="suid, userns, pidns, seccomp-bpf, yama, seccomp-tsync"/>
  <int value="124" label="userns, netns, seccomp-bpf, yama, seccomp-tsync"/>
  <int value="125"
      label="suid, userns, netns, seccomp-bpf, yama, seccomp-tsync"/>
  <int value="126"
      label="userns, pidns, netns, seccomp-bpf, yama, seccomp-tsync"/>
  <int value="127"
      label="suid, userns, pidns, netns, seccomp-bpf, yama, seccomp-tsync"/>
  <int value="2147483648" label="Invalid"/>
</enum>

<enum name="LinuxWindowManagerName" type="int">
  <int value="0" label="Other"/>
  <int value="1" label="Blackbox"/>
  <int value="2" label="Chrome OS"/>
  <int value="3" label="Compiz"/>
  <int value="4" label="Enlightment"/>
  <int value="5" label="IceWM"/>
  <int value="6" label="KWin"/>
  <int value="7" label="Metacity"/>
  <int value="8" label="Muffin"/>
  <int value="9" label="Mutter"/>
  <int value="10" label="Openbox"/>
  <int value="11" label="Xfwm4"/>
  <int value="12" label="Awesome"/>
  <int value="13" label="i3"/>
  <int value="14" label="Ion3"/>
  <int value="15" label="Matchbox"/>
  <int value="16" label="Notion"/>
  <int value="17" label="Qtile"/>
  <int value="18" label="Ratpoison"/>
  <int value="19" label="StumpWM"/>
  <int value="20" label="wmii"/>
  <int value="21" label="Fluxbox"/>
</enum>

<enum name="LoadType" type="int">
  <int value="0" label="UNDEFINED_LOAD">Not yet initialized</int>
  <int value="1" label="RELOAD">User pressed reload</int>
  <int value="2" label="HISTORY_LOAD">Back or forward</int>
  <int value="3" label="NORMAL_LOAD">User entered URL, or omnibox search</int>
  <int value="4" label="LINK_LOAD">(deprecated) Included next 4 categories</int>
  <int value="5" label="LINK_LOAD_NORMAL">Commonly following of link</int>
  <int value="6" label="LINK_LOAD_RELOAD">JS/link directed reload</int>
  <int value="7" label="LINK_LOAD_CACHE_STALE_OK">
    back/forward or encoding change
  </int>
  <int value="8" label="LINK_LOAD_CACHE_ONLY">
    Allow stale data (avoid doing a re-post)
  </int>
  <int value="9" label="PRERENDER_LOAD">Speculative prerendering of a page</int>
</enum>

<enum name="LocalRendererSinkStates" type="int">
  <int value="0" label="SinkStarted"/>
  <int value="1" label="SinkNeverStarted"/>
</enum>

<enum name="LoginConsumerWhitelist" type="int">
  <int value="0" label="ANY_USER_ALLOWED">Any user can sign in</int>
  <int value="1" label="ONLY_WHITELISTED_ALLOWED">Whitelisted users only</int>
</enum>

<enum name="LoginCustomFlags" type="int">
<!--
Values in LoginCustomFlags are:  value=(uint32_t)MD5(label).
This enum is verified by AboutFlagsHistogramTest unit test.
To add a new entry, add it with any value and run test to compute valid value.
-->

  <summary>Chrome flags that lead to chrome restart on ChromeOS.</summary>
  <int value="-2143328006"
      label="enable-fill-on-account-select-no-highlighting"/>
  <int value="-2143113994" label="enable-ephemeral-apps-in-webstore"/>
  <int value="-2132591642" label="enable-input-view"/>
  <int value="-2119827860" label="ash-disable-maximize-mode-window-backdrop"/>
  <int value="-2119530966" label="enable-webrtc-dtls12"/>
  <int value="-2119493239" label="enable-app-info-dialog-mac"/>
  <int value="-2117201726" label="disable-gpu-rasterization"/>
  <int value="-2114831248" label="disable-new-ntp"/>
  <int value="-2099035488" label="enable-data-reduction-proxy-bypass-warning"/>
  <int value="-2098610409" label="disable-lcd-text"/>
  <int value="-2097515669" label="disable-cast"/>
  <int value="-2083195884" label="enable-firewall-hole-punching"/>
  <int value="-2077268643" label="disable-device-enumeration"/>
  <int value="-2075807193" label="enable-webusb-on-any-origin"/>
  <int value="-2075725205" label="disable-new-zip-unpacker"/>
  <int value="-2067166422" label="enable-slimming-paint-v2"/>
  <int value="-2063352474" label="enable-new-task-manager"/>
  <int value="-2063014275" label="enable-web-bluetooth"/>
  <int value="-2062872298" label="market-url-for-testing"/>
  <int value="-2048732429" label="enable-alternative-services"/>
  <int value="-2047832738" label="enable-system-timezone-automatic-detection"/>
  <int value="-2047822258" label="enable-avfoundation"/>
  <int value="-2043128632" label="enable-tab-switcher-in-document-mode"/>
  <int value="-2025367104" label="enable-material-design-ntp"/>
  <int value="-2020721975" label="smart-virtual-keyboard"/>
  <int value="-2020024440" label="scroll-end-effect"/>
  <int value="-2017953534" label="enable-hosted-app-shim-creation"/>
  <int value="-2008272679" label="disable-webrtc-hw-encoding"/>
  <int value="-2003354337"
      label="enable-search-button-in-omnibox-for-str-or-iip"/>
  <int value="-1999892428" label="force-ui-direction"/>
  <int value="-1998927516" label="enable-md-settings"/>
  <int value="-1985025593" label="file-manager-enable-new-gallery"/>
  <int value="-1980328793" label="trace-upload-url"/>
  <int value="-1972383451" label="disable-pinch"/>
  <int value="-1963402827" label="enable-topchrome-md"/>
  <int value="-1961648833" label="show_summary"/>
  <int value="-1956349722" label="disable-smooth-scrolling"/>
  <int value="-1946595906" label="enable-push-api-background-mode"/>
  <int value="-1943507605" label="enable-new-video-renderer"/>
  <int value="-1941852572" label="floating-virtual-keyboard"/>
  <int value="-1940806558" label="enable-syncfs-directory-operation"/>
  <int value="-1938263248" label="enable-extension-info-dialog"/>
  <int value="-1930720286" label="nacl-debug-mask"/>
  <int value="-1928198763" label="enable-async-dns"/>
  <int value="-1925117279" label="disable-quic-https"/>
  <int value="-1915854488" label="enable-offline-pages"/>
  <int value="-1911153473" label="enable-easy-signin"/>
  <int value="-1892555086" label="disable-compositor-animation-timelines"/>
  <int value="-1888273969" label="tab-capture-upscale-quality"/>
  <int value="-1887053262"
      label="enable-zero-suggest-most-visited-without-serp"/>
  <int value="-1880355454" label="disable-topchrome-md"/>
  <int value="-1876881908"
      label="disable-infobar-for-protected-media-identifier"/>
  <int value="-1874908826" label="enable-instant-search-clicks"/>
  <int value="-1872989945" label="enable-webview-based-signin"/>
  <int value="-1870961970" label="enable-filemanager-mtp"/>
  <int value="-1869845022" label="force-show-update-menu-item"/>
  <int value="-1847835522" label="disable-touch-adjustment"/>
  <int value="-1838482444" label="disable-settings-window"/>
  <int value="-1835975804" label="disable-offline-auto-reload"/>
  <int value="-1833149810" label="enable-accessibility-tab-switcher"/>
  <int value="-1832575380" label="show-saved-copy"/>
  <int value="-1832221649" label="disable-out-of-process-pac"/>
  <int value="-1821058653" label="enable-delay-agnostic-aec"/>
  <int value="-1798337879" label="enable-md-downloads"/>
  <int value="-1772172557" label="enable-osk-overscroll"/>
  <int value="-1767470652" label="out-of-process-pdf"/>
  <int value="-1751928267" label="disable-icon-ntp"/>
  <int value="-1746767834" label="ssl-interstitial-v2-gray"/>
  <int value="-1740519217" label="disable-software-rasterizer"/>
  <int value="-1735643253" label="enable-display-list-2d-canvas"/>
  <int value="-1729926412" label="enable-webusb-notifications"/>
  <int value="-1725507605" label="enable-web-midi"/>
  <int value="-1719833926" label="disable-answers-in-suggest"/>
  <int value="-1716654100" label="tab-capture-downscale-quality"/>
  <int value="-1714128884" label="disable-launcher-search-provider-api"/>
  <int value="-1711751318" label="enable-data-reduction-proxy-lo-fi-preview"/>
  <int value="-1703709912" label="enable-new-ntp"/>
  <int value="-1703308540" label="disable-webaudio"/>
  <int value="-1696366449" label="disable-permissions-bubbles"/>
  <int value="-1692384483" label="disambiguate-autofill-server-name-types"/>
  <int value="-1691668194" label="enable-new-bookmark-apps"/>
  <int value="-1691281364" label="enable-notification-action-icons"/>
  <int value="-1663410466" label="top-document-isolation"/>
  <int value="-1662447331" label="wake-on-packets"/>
  <int value="-1660972490" label="gpu-rasterization-msaa-sample-count"/>
  <int value="-1654344175" label="disable-extension-info-dialog"/>
  <int value="-1649778035" label="disable-clear-browsing-data-counters"/>
  <int value="-1630419335" label="enable-download-notification"/>
  <int value="-1619757314" label="touch-scrolling-mode"/>
  <int value="-1618707999" label="enable-webfonts-intervention-v2"/>
  <int value="-1614912400" label="enable-link-disambiguation-popup"/>
  <int value="-1605567628" label="disable-overlay-scrollbar"/>
  <int value="-1599538279" label="enable-md-policy-page"/>
  <int value="-1596559650" label="max-tiles-for-interest-area"/>
  <int value="-1572010356" label="enable-privet-v3"/>
  <int value="-1571841513" label="enable-devtools-experiments"/>
  <int value="-1553477903" label="ash-disable-text-filtering-in-overview-mode"/>
  <int value="-1546903171" label="enable-touch-drag-drop"/>
  <int value="-1514943439" label="ash-enable-swipe-to-close-in-overview-mode"/>
  <int value="-1514611301" label="enable-data-reduction-proxy-bypass-warnings"/>
  <int value="-1510839574" label="disable-sync-synced-notifications"/>
  <int value="-1497338981" label="disable-accelerated-overflow-scroll"/>
  <int value="-1490298774" label="enable-captive-portal-bypass-proxy-option"/>
  <int value="-1482685863" label="enable-request-tablet-site"/>
  <int value="-1467332609" label="tab-management-experiment-type-anise"/>
  <int value="-1460462432" label="disable-media-source"/>
  <int value="-1440152291" label="disable-gesture-typing"/>
  <int value="-1433719718" label="enable-webrtc-stun-origin"/>
  <int value="-1433087548" label="enable-app-install-alerts"/>
  <int value="-1419788257" label="enable-experimental-hotwording"/>
  <int value="-1416754663" label="enable-mac-views-native-app-windows"/>
  <int value="-1411003295" label="disable-encrypted-media"/>
  <int value="-1409643943" label="enable-child-account-detection"/>
  <int value="-1408288176" label="enable-account-consistency"/>
  <int value="-1399753480" label="disable-harfbuzz-rendertext"/>
  <int value="-1399419572" label="enable-app-list"/>
  <int value="-1392562498" label="disable-origin-chip"/>
  <int value="-1386966873" label="disable-mac-views-native-app-windows"/>
  <int value="-1375111024" label="enable-fixed-position-compositing"/>
  <int value="-1365503870" label="enable-simplified-fullscreen-ui"/>
  <int value="-1358669137" label="enable-supervised-user-blacklist"/>
  <int value="-1357655121" label="enable-iframe-based-signin"/>
  <int value="-1349872906"
      label="disallow-autofill-sync-credential-for-reauth"/>
  <int value="-1349532167" label="enable-wifi-credential-sync"/>
  <int value="-1346722635" label="gesture-selection"/>
  <int value="-1341092934" label="enable-accelerated-overflow-scroll"/>
  <int value="-1340055960" label="enable-streamlined-hosted-apps"/>
  <int value="-1337185440" label="enable-webvr"/>
  <int value="-1334327410" label="ash-enable-touch-view-testing"/>
  <int value="-1327676774" label="disable-accelerated-mjpeg-decode"/>
  <int value="-1322882747" label="disable-datasaver-prompt"/>
  <int value="-1319688939" label="ignore-gpu-blacklist"/>
  <int value="-1302904242" label="enable-navigation-tracing"/>
  <int value="-1285021473" label="save-page-as-mhtml"/>
  <int value="-1271563519" label="enable-appcontainer"/>
  <int value="-1269084216" label="ash-md"/>
  <int value="-1268836676" label="disable-out-of-process-pdf"/>
  <int value="-1267958145" label="disable-pdf-material-ui"/>
  <int value="-1251411236" label="disable-new-md-input-view"/>
  <int value="-1241747717" label="enable-android-password-link"/>
  <int value="-1235586511" label="enable-datasaver-prompt"/>
  <int value="-1218608640" label="disable-offline-load-stale-cache"/>
  <int value="-1216837777" label="clear-data-reduction-proxy-data-savings"/>
  <int value="-1212855900" label="enable-all-bookmarks-view"/>
  <int value="-1212273428" label="enable-experimental-app-list"/>
  <int value="-1212167260" label="disable-app-window-cycling"/>
  <int value="-1203742042" label="enable-gesture-selection"/>
  <int value="-1201183153" label="enable-centered-app-list"/>
  <int value="-1184904651" label="enable-npapi"/>
  <int value="-1177802205" label="enable-hosted-app-quit-notification"/>
  <int value="-1176493523" label="enable-md-extensions"/>
  <int value="-1172204005" label="enable-offline-auto-reload-visible-only"/>
  <int value="-1160026273" label="enable-web-notification-custom-layouts"/>
  <int value="-1159563774" label="enable-accessibility-script-injection"/>
  <int value="-1151766565" label="enable-fullscreen-tab-detaching"/>
  <int value="-1137442543" label="enable-slimming-paint"/>
  <int value="-1136627751" label="ignore-autocomplete-off-autofill"/>
  <int value="-1136509631" label="ssl-interstitial-v1"/>
  <int value="-1127996427" label="enable-files-details-panel"/>
  <int value="-1125133283" label="disable-threaded-scrolling"/>
  <int value="-1107762575" label="enable-data-reduction-proxy-config-client"/>
  <int value="-1102212525" label="enable-tcp-fastopen"/>
  <int value="-1084055006" label="disable-web-notification-custom-layouts"/>
  <int value="-1078093206" label="ash-debug-shortcuts"/>
  <int value="-1077752943" label="enable-password-generation"/>
  <int value="-1075156797" label="enable-brotli"/>
  <int value="-1075089382" label="enable-physical-web"/>
  <int value="-1062119671" label="enable-password-force-saving"/>
  <int value="-1056310158" label="disable-memory-pressure-chromeos"/>
  <int value="-1052782474" label="enable-cloud-devices"/>
  <int value="-1052415111" label="malware-interstitial-v2"/>
  <int value="-1052219252" label="disable-captive-portal-bypass-proxy"/>
  <int value="-1041650038" label="enable-forced-migration-to-tabbed-mode"/>
  <int value="-1033738911" label="enable-mac-views-dialogs"/>
  <int value="-1022971520" label="enable-search-button-in-omnibox-for-str"/>
  <int value="-1020450980" label="gesture-deletion"/>
  <int value="-1016202433" label="disable-add-to-shelf"/>
  <int value="-996673716" label="enable-web-app-frame"/>
  <int value="-979313250" label="enable-google-branded-context-menu"/>
  <int value="-979057409" label="enable-seccomp-filter-sandbox"/>
  <int value="-979034258" label="disable-ntp-other-sessions-menu"/>
  <int value="-978700508" label="disable-simplified-fullscreen-ui"/>
  <int value="-972425050" label="gesture-editing"/>
  <int value="-964676765" label="enable-accelerated-mjpeg-decode"/>
  <int value="-951394314" label="top-chrome-md"/>
  <int value="-949178861" label="enable-new-avatar-menu"/>
  <int value="-938178614" label="enable-suggestions-with-substring-match"/>
  <int value="-933316841" label="enable-permissions-blacklist"/>
  <int value="-926422468" label="disable-embedded-shared-worker"/>
  <int value="-918618075" label="enable-service-worker"/>
  <int value="-914210146" label="enable-web-based-signin"/>
  <int value="-899334103" label="disable-fast-text-autosizing"/>
  <int value="-898594349" label="ash-enable-stable-overview-order"/>
  <int value="-898005938" label="disable-pinch-virtual-viewport"/>
  <int value="-885601782" label="enable-contextual-search"/>
  <int value="-867087281" label="enable-virtual-keyboard"/>
  <int value="-864266073" label="cros-regions-mode"/>
  <int value="-864205629" label="enable-offline-load-stale-cache"/>
  <int value="-861678473" label="disable-offer-upload-credit-cards"/>
  <int value="-853594220" label="disable-new-avatar-menu"/>
  <int value="-842438090" label="enable-md-feedback"/>
  <int value="-836123854" label="wallet-service-use-sandbox"/>
  <int value="-825942229" label="tab-management-experiment-type-elderberry"/>
  <int value="-820041355" label="enable-transition-compositing"/>
  <int value="-814097014" label="disable-session-crashed-bubble"/>
  <int value="-813474479" label="site-per-process"/>
  <int value="-802348444" label="disable-site-engagement-service"/>
  <int value="-798187384" label="try-supported-channel-layouts"/>
  <int value="-795600188" label="disable-async-dns"/>
  <int value="-780798969" label="disable-single-click-autofill"/>
  <int value="-770319039" label="enable-touch-editing"/>
  <int value="-763759697" label="enable-audio-support-for-desktop-share"/>
  <int value="-759830869" label="enable-tab-discarding"/>
  <int value="-749048160" label="enable-panels"/>
  <int value="-744159181" label="disable-spdy-proxy-dev-auth-origin"/>
  <int value="-743103250" label="enable-linkable-ephemeral-apps"/>
  <int value="-716953514" label="disable-password-separated-signin-flow"/>
  <int value="-711890895" label="enable-website-settings-manager"/>
  <int value="-699767107" label="enable-sync-app-list"/>
  <int value="-697751423" label="disable-quickoffice-component-app"/>
  <int value="-684900739" label="disable-merge-key-char-events"/>
  <int value="-667517406" label="overscroll-history-navigation"/>
  <int value="-661978438" label="enable-data-reduction-proxy-lo-fi"/>
  <int value="-660160292" label="enable-apps-show-on-first-paint"/>
  <int value="-649956990" label="enable-harfbuzz-rendertext"/>
  <int value="-641719457" label="disable-compositor-touch-hit-testing"/>
  <int value="-631740127" label="inert-visual-viewport"/>
  <int value="-622685174" label="enable-pdf-material-ui"/>
  <int value="-617452890" label="media-router"/>
  <int value="-610411643" label="enable-printer-app-search"/>
  <int value="-604814313" label="enable-pinch"/>
  <int value="-604068396" label="disable-input-ime-api"/>
  <int value="-601384286" label="disable-contextual-search"/>
  <int value="-589096918" label="ash-enable-fullscreen-app-list"/>
  <int value="-579192400" label="disable-input-view"/>
  <int value="-567920515" label="disable-experimental-hotwording"/>
  <int value="-563980787" label="disable-webrtc"/>
  <int value="-562274241" label="enable-extension-action-redesign"/>
  <int value="-560551550" label="use-memory-pressure-chromeos"/>
  <int value="-536289234" label="ssl-interstitial-v2-colorful"/>
  <int value="-535208779" label="enable-native-cups"/>
  <int value="-519960638" label="enable-site-engagement-service"/>
  <int value="-516845951" label="enable-embedded-extension-options"/>
  <int value="-512971943" label="disable-one-copy"/>
  <int value="-510488450" label="disable-pnacl"/>
  <int value="-508143738" label="disable-accelerated-fixed-root-background"/>
  <int value="-506706655" label="respect-autocomplete-off-autofill"/>
  <int value="-495585885" label="enable-spdy-proxy-dev-auth-origin"/>
  <int value="-488779992" label="blink-settings"/>
  <int value="-478462945" label="enable-ephemeral-apps"/>
  <int value="-462205750" label="enable-service-worker-sync"/>
  <int value="-455203267" label="use_new_features_summary"/>
  <int value="-430360431" label="disable-password-generation"/>
  <int value="-418868128" label="enable-experimental-web-platform-features"/>
  <int value="-385337473" label="enable-fast-unload"/>
  <int value="-384589459" label="disable-supervised-user-safesites"/>
  <int value="-378180863" label="disable-panels"/>
  <int value="-378033324" label="disable-win32k-renderer-lockdown"/>
  <int value="-362022976" label="disable-quirks-client"/>
  <int value="-360038744" label="invert-viewport-scroll-order"/>
  <int value="-351552989" label="disable-hosted-apps-in-windows"/>
  <int value="-351127770" label="enable-offline-pages-as-bookmarks"/>
  <int value="-349057743" label="extensions-on-chrome-urls"/>
  <int value="-345838366" label="enable-hosted-apps-in-windows"/>
  <int value="-345324571" label="enable-quirks-client"/>
  <int value="-344343842" label="disable-experimental-app-list"/>
  <int value="-340622848" label="disable-javascript-harmony-shipping"/>
  <int value="-340255045" label="allow-nacl-socket-api"/>
  <int value="-328361990" label="enable-experimental-extension-apis"/>
  <int value="-322827131" label="tab-management-experiment-type-basil"/>
  <int value="-320820051" label="enable-zero-copy"/>
  <int value="-314910380" label="disable-distance-field-text"/>
  <int value="-311148335" label="v8-pac-mojo-out-of-process"/>
  <int value="-300018686" label="disable-cloud-import"/>
  <int value="-288316828" label="enable-delegated-renderer"/>
  <int value="-278347667" label="default-tile-height"/>
  <int value="-277144896" label="enable-viewport-meta"/>
  <int value="-254887599" label="google-profile-info"/>
  <int value="-231922000" label="enable-renderer-mojo-channel"/>
  <int value="-206393363" label="enable-scroll-prediction"/>
  <int value="-204355195" label="secondary-ui-md"/>
  <int value="-183246373" label="enable-multilingual-spellchecker"/>
  <int value="-165756594" label="enable-touch-feedback"/>
  <int value="-158549277" label="enable-embeddedsearch-api"/>
  <int value="-158197254" label="enable-credential-manager-api"/>
  <int value="-147283486" label="enable-network-portal-notification"/>
  <int value="-146552997" label="enable-affiliation-based-matching"/>
  <int value="-102537270" label="extension-content-verification"/>
  <int value="-99781021" label="disable-roboto-font-ui"/>
  <int value="-88822940" label="ssl-version-min"/>
  <int value="-86788587" label="allow-autofill-sync-credential"/>
  <int value="-80353187" label="disable-display-color-calibration"/>
  <int value="-78035185" label="custom_summary"/>
  <int value="-76631048" label="disable-offline-auto-reload-visible-only"/>
  <int value="-70595606" label="ash-enable-unified-desktop"/>
  <int value="-68225452" label="enable-translate-new-ux"/>
  <int value="-58242474" label="ash-disable-swipe-to-close-in-overview-mode"/>
  <int value="-55944747" label="disable-child-account-detection"/>
  <int value="-52483823" label="disable-new-video-renderer"/>
  <int value="-52241456" label="enable-single-click-autofill"/>
  <int value="-48920737" label="enable-smooth-scrolling"/>
  <int value="-23090520" label="disable-search-button-in-omnibox"/>
  <int value="-22544408" label="enable-video-player-chromecast-support"/>
  <int value="-13918890" label="disable-download-notification"/>
  <int value="-11260186" label="enable-offline-pages-as-saved-pages"/>
  <int value="-5052940" label="enable-simplified-fullscreen"/>
  <int value="-2371418" label="disable-display-list-2d-canvas"/>
  <int value="0" label="BAD_FLAG_FORMAT">
    Command-line flag doesn't start with two dashes.
  </int>
  <int value="7533886" label="disable-offer-store-unmasked-wallet-cards"/>
  <int value="10458238" label="disable-print-preview-simplify"/>
  <int value="11698808" label="enable-dom-distiller-button-animation"/>
  <int value="27507364" label="apps-keep-chrome-alive"/>
  <int value="37024318" label="disable-affiliation-based-matching"/>
  <int value="48159177" label="reduced-referrer-granularity"/>
  <int value="56723110" label="enable-webfonts-intervention"/>
  <int value="61205887" label="enable-text-input-focus-manager"/>
  <int value="75747474" label="disable-webview-signin-flow"/>
  <int value="78998551" label="disable-hosted-app-shim-creation"/>
  <int value="79503461" label="disable-account-consistency"/>
  <int value="91938915" label="enable-suggestions-service"/>
  <int value="98134240" label="material-design-ink-drop-animation-speed"/>
  <int value="103932290" label="show-autofill-type-predictions"/>
  <int value="118991027" label="enable-accelerated-fixed-root-background"/>
  <int value="120429808" label="disable-new-profile-management"/>
  <int value="121858954" label="enable-supervised-user-safesites"/>
  <int value="125934378" label="enable-password-link"/>
  <int value="147373243" label="enable-deferred-image-decoding"/>
  <int value="157217034" label="enable-tab-for-desktop-share"/>
  <int value="178337215" label="enable-md-history"/>
  <int value="180074362" label="memory-pressure-thresholds"/>
  <int value="194895489" label="passive-listeners-default"/>
  <int value="203776499" label="enable-virtual-keyboard-overscroll"/>
  <int value="244697230" label="enable-theme-color-in-tabbed-mode"/>
  <int value="266702296" label="disable-plugin-power-saver"/>
  <int value="270267831" label="enable-scripts-require-action"/>
  <int value="274103741" label="enable-ntp-popular-sites"/>
  <int value="278756320" label="disable-app-list-app-info"/>
  <int value="280322118" label="enable-unsafe-es3-apis"/>
  <int value="323605372" label="ui-disable-compositor-animation-timelines"/>
  <int value="324631366" label="enable-drive-search-in-app-launcher"/>
  <int value="330138076" label="enable-clear-browsing-data-counters"/>
  <int value="346711293" label="enable-save-password-bubble"/>
  <int value="348854923" label="v8-cache-strategies-for-cache-storage"/>
  <int value="358399482" label="enable-high-dpi-fixed-position-compositing"/>
  <int value="360599302" label="enable-gpu-rasterization"/>
  <int value="365467768" label="prefetch-search-results"/>
  <int value="368854020" label="ash-screen-rotation-animation"/>
  <int value="370486304" label="enable-origin-chip-on-srp"/>
  <int value="379326303" label="enable-add-to-shelf"/>
  <int value="400322063" label="ash-disable-screen-orientation-lock"/>
  <int value="401983950" label="enable-spdy4"/>
  <int value="402143634" label="enable-search-button-in-omnibox-always"/>
  <int value="412957264" label="tab-close-buttons-hidden-with-touch"/>
  <int value="413081240" label="enable-new-md-input-view"/>
  <int value="415154056" label="enable-physical-keyboard-autocorrect"/>
  <int value="416887895" label="enable-password-change-support"/>
  <int value="423615350" label="enable-tab-audio-muting"/>
  <int value="446316019" label="enable-threaded-compositing"/>
  <int value="451196246" label="disable-impl-side-painting"/>
  <int value="455698038"
      label="disable-gesture-requirement-for-media-playback"/>
  <int value="458410433" label="disable-views-rect-based-targeting"/>
  <int value="460475728" label="wake-on-wifi-packet"/>
  <int value="466248382" label="disable-push-api-background-mode"/>
  <int value="468959230"
      label="enable-non-validating-reload-on-refresh-content"/>
  <int value="474743272" label="material-design-ink-drop"/>
  <int value="477967119" label="enable-unified-media-pipeline"/>
  <int value="493903641" label="disable-appcontainer"/>
  <int value="494733611" label="disable-drop-sync-credential"/>
  <int value="503245473" label="disable-translate-new-ux"/>
  <int value="535976218" label="enable-plugin-power-saver"/>
  <int value="546710806" label="disable-easy-signin"/>
  <int value="550378029" label="reset-app-list-install-state"/>
  <int value="567368307" label="enable-experimental-canvas-features"/>
  <int value="592050831" label="disable-slimming-paint"/>
  <int value="593707592" label="disable-network-portal-notification"/>
  <int value="598827460" label="enable-roboto-font-ui"/>
  <int value="606288133" label="enable-print-preview-register-promos"/>
  <int value="609112512" label="touch-selection-strategy"/>
  <int value="610545308" label="enable-potentially-annoying-security-features"/>
  <int value="625273056" label="disable-boot-animation"/>
  <int value="630947363" label="touch-events"/>
  <int value="643725031" label="disable-touch-feedback"/>
  <int value="646738320" label="disable-gesture-editing"/>
  <int value="650602639" label="enable-autofill-keyboard-accessory-view"/>
  <int value="683410401"
      label="enable-proximity-auth-bluetooth-low-energy-discovery"/>
  <int value="689489984" label="disable-zero-suggest"/>
  <int value="709850261" label="disable-touch-editing"/>
  <int value="711424932" label="enable-cloud-print-xps"/>
  <int value="716080990" label="restrict-iframe-permissions"/>
  <int value="730024226" label="enable-out-of-process-pdf"/>
  <int value="732703958" label="enable-gesture-tap-highlight"/>
  <int value="752194066" label="enable-app-window-cycling"/>
  <int value="752939691" label="disable-tab-for-desktop-share"/>
  <int value="773919225" label="disable-office-editing-component-extension"/>
  <int value="779086132" label="enable-data-reduction-proxy-alt"/>
  <int value="782167080" label="enable-new-qp-input-view"/>
  <int value="807734471" label="tab-management-experiment-type-disabled"/>
  <int value="811374216" label="disable-new-bookmark-apps"/>
  <int value="820650704" label="disable-ntp-popular-sites"/>
  <int value="821192723" label="show-fps-counter"/>
  <int value="824961931" label="use-simple-cache-backend"/>
  <int value="834033186" label="enable-data-reduction-proxy-dev"/>
  <int value="834326277" label="enable-answers-in-suggest"/>
  <int value="835018878" label="disable-quic"/>
  <int value="838887742" label="manual-enhanced-bookmarks"/>
  <int value="841343322" label="disable-new-korean-ime"/>
  <int value="851085848" label="enable-settings-window"/>
  <int value="854730848" label="disable-app-info-dialog-mac"/>
  <int value="855746780" label="disable-physical-keyboard-autocorrect"/>
  <int value="857445869" label="enable-captive-portal-bypass-proxy"/>
  <int value="867512869" label="mark-non-secure-as"/>
  <int value="869531646" label="enable-session-crashed-bubble"/>
  <int value="879699575" label="disable-gesture-tap-highlight"/>
  <int value="879992337" label="disable-pull-to-refresh-effect"/>
  <int value="880510010" label="enable-permissions-bubbles"/>
  <int value="884106779" label="supervised-user-safesites"/>
  <int value="887011602" label="enable-spelling-auto-correct"/>
  <int value="903267263" label="disable-offline-pages"/>
  <int value="909439558" label="disable-device-discovery"/>
  <int value="916316159" label="disable-new-app-list-mixer"/>
  <int value="929462705" label="disable-link-disambiguation-popup"/>
  <int value="936919953" label="bypass-app-banner-engagement-checks"/>
  <int value="939554480" label="enable-credit-card-scan"/>
  <int value="952558794" label="enable-remote-assistance"/>
  <int value="980396200" label="enable-new-korean-ime"/>
  <int value="983311394" label="tab-management-experiment-type"/>
  <int value="1002585107" label="emphasize-titles-in-omnibox-dropdown"/>
  <int value="1007444341" label="enable-prefixed-encrypted-media"/>
  <int value="1019857902"
      label="disable-hide-inactive-stacked-tab-close-buttons"/>
  <int value="1022992701" label="enable-origin-chip-always"/>
  <int value="1033597574" label="disable-layer-squashing"/>
  <int value="1050321458" label="new-profile-management"/>
  <int value="1054910800" label="enable-timezone-tracking-option"/>
  <int value="1060319397" label="enable-data-reduction-proxy-carrier-test"/>
  <int value="1062357243" label="remember-cert-error-decisions"/>
  <int value="1067618884" label="enable-experimental-input-view-features"/>
  <int value="1070300488" label="disable-webgl"/>
  <int value="1087235172" label="file-manager-enable-new-audio-player"/>
  <int value="1090377940" label="enable-quic-https"/>
  <int value="1095061640" label="enable-prominent-url-app-flow"/>
  <int value="1104948452" label="manual-enhanced-bookmarks-optout"/>
  <int value="1105439588" label="enable-swipe-selection"/>
  <int value="1107543566" label="enable-one-copy"/>
  <int value="1108663108" label="disable-device-discovery-notifications"/>
  <int value="1113365156" label="tab-management-experiment-type-chive"/>
  <int value="1114629582" label="enable-floating-virtual-keyboard"/>
  <int value="1118109174" label="enable-launcher-search-provider-api"/>
  <int value="1129888794" label="ash-touch-hud"/>
  <int value="1133635187" label="force-gpu-rasterization"/>
  <int value="1139226452" label="enable-nacl-debug"/>
  <int value="1139363314" label="disable-supervised-user-blacklist"/>
  <int value="1142515376" label="enable-nacl"/>
  <int value="1149823105" label="enable-input-ime-api"/>
  <int value="1150622273" label="enable-apps-file-associations"/>
  <int value="1163255347" label="ash-enable-touch-view-touch-feedback"/>
  <int value="1166169237" label="disable-delay-agnostic-aec"/>
  <int value="1174088940" label="enable-wasm"/>
  <int value="1181056275" label="enable-cloud-backup"/>
  <int value="1183431946" label="v8-cache-options"/>
  <int value="1185424279" label="enable-media-router"/>
  <int value="1192302892" label="gesture-typing"/>
  <int value="1196644408" label="performance-monitor-gathering"/>
  <int value="1196834473" label="disable-smart-virtual-keyboard"/>
  <int value="1205849612" label="enable-sync-synced-notifications"/>
  <int value="1209221384" label="enable-experimental-accessibility-features"/>
  <int value="1210343926" label="enable-drop-sync-credential"/>
  <int value="1220464509" label="enable-first-run-ui-transitions"/>
  <int value="1221559505" label="enable-spelling-feedback-field-trial"/>
  <int value="1237297772" label="no-pings"/>
  <int value="1245889469" label="enable-surface-worker"/>
  <int value="1247293682" label="topchrome-md"/>
  <int value="1250071868" label="disable-timezone-tracking-option"/>
  <int value="1253698118" label="ash-disable-stable-overview-order"/>
  <int value="1257980502" label="disable-accelerated-video-decode"/>
  <int value="1268470658" label="disable-android-password-link"/>
  <int value="1272699563" label="enable-hosted-mode"/>
  <int value="1276209777" label="ntp-switch-to-existing-tab"/>
  <int value="1279584261" label="enable-carrier-switching"/>
  <int value="1283960113" label="disable-fixed-position-compositing"/>
  <int value="1298981651" label="disable-new-task-manager"/>
  <int value="1308537004" label="force-pnacl-subzero"/>
  <int value="1319725131" label="enable-distance-field-text"/>
  <int value="1320201920" label="enable-touchpad-three-finger-click"/>
  <int value="1351830811" label="do-not-ignore-autocomplete-off"/>
  <int value="1352447982" label="enable-lcd-text"/>
  <int value="1359972809" label="enable-gesture-deletion"/>
  <int value="1361047396" label="disable-click-delay"/>
  <int value="1367671275" label="enable-proximity-auth-proximity-detection"/>
  <int value="1371092708" label="disable-desktop-capture-picker-old-ui"/>
  <int value="1371907429" label="enable-wallet-card-import"/>
  <int value="1372680885" label="enable-mtp-write-support"/>
  <int value="1373777956" label="disable-threaded-gpu-rasterization"/>
  <int value="1378310092" label="disable-suggestions-service"/>
  <int value="1381746642" label="enable-automatic-password-saving"/>
  <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="1389729816" label="data-reduction-proxy-lo-fi"/>
  <int value="1405459667" label="enable-fast-text-autosizing"/>
  <int value="1407625309"
      label="disable-minimize-on-second-launcher-item-click"/>
  <int value="1408331660" label="enhanced-bookmarks-experiment"/>
  <int value="1410697724" label="mediadrm-enable-non-compositing"/>
  <int value="1416592483" label="ash-enable-mirrored-screen"/>
  <int value="1421620678" label="simple-clear-browsing-data-support-string"/>
  <int value="1442798825" label="enable-quic"/>
  <int value="1459529277" label="disable-text-input-focus-manager"/>
  <int value="1465624446" label="disable-zero-copy"/>
  <int value="1466380480" label="enable-device-discovery-notifications"/>
  <int value="1469407485" label="disable-accelerated-2d-canvas"/>
  <int value="1479248574" label="disable-voice-input"/>
  <int value="1481562816" label="disable-password-link"/>
  <int value="1486171015" label="disable-fill-on-account-select"/>
  <int value="1489915799" label="disable-permissions-blacklist"/>
  <int value="1490043732" label="enable-fill-on-account-select"/>
  <int value="1490255042" label="enable-overlay-scrollbar"/>
  <int value="1495341532" label="disable-mtp-write-support"/>
  <int value="1497924954" label="js-flags"/>
  <int value="1505194447" label="disable-transition-compositing"/>
  <int value="1509901380" label="disable-drive-search-in-app-launcher"/>
  <int value="1510476448" label="disable-prefixed-encrypted-media"/>
  <int value="1515196403" label="fast-user-switching"/>
  <int value="1560188739" label="reader-mode-heuristics"/>
  <int value="1589341623" label="disable-easy-unlock"/>
  <int value="1612974229" label="allow-insecure-localhost"/>
  <int value="1622131033" label="ozone-test-single-overlay-support"/>
  <int value="1636962093" label="disable-material-design-ntp"/>
  <int value="1657713458" label="disable-virtual-keyboard-overscroll"/>
  <int value="1658644418" label="disable-app-list-voice-search"/>
  <int value="1661925474" label="silent-debugger-extension-api"/>
  <int value="1668611601" label="enable-encrypted-media"/>
  <int value="1689123607" label="enable-app-link"/>
  <int value="1689183477" label="enable-merge-key-char-events"/>
  <int value="1694854500" label="disable-save-password-bubble"/>
  <int value="1696139514" label="enable-ble-advertising-in-apps"/>
  <int value="1705724232" label="use-android-midi-api"/>
  <int value="1723601083" label="enable-app-window-controls"/>
  <int value="1730236697" label="force-device-scale-factor"/>
  <int value="1731522433" label="enable-offer-store-unmasked-wallet-cards"/>
  <int value="1747279677" label="disable-delegated-renderer"/>
  <int value="1752168018" label="enable-stale-while-revalidate"/>
  <int value="1775475563" label="malware-interstitial-v3"/>
  <int value="1776475705" label="show-composited-layer-borders"/>
  <int value="1777059507" label="trust-autofill-server-name-types"/>
  <int value="1783293530" label="disallow-autofill-sync-credential"/>
  <int value="1783837132" label="enable-threaded-gpu-rasterization"/>
  <int value="1786229999" label="disable-md-downloads"/>
  <int value="1791904609" label="disable-autofill-keyboard-accessory-view"/>
  <int value="1803465156" label="enable-zero-suggest-most-visited"/>
  <int value="1812368073" label="enable-new-app-list-mixer"/>
  <int value="1814671708" label="disable-password-manager-reauthentication"/>
  <int value="1817312143" label="num-raster-threads"/>
  <int value="1819256299" label="disable-webrtc-hw-decoding"/>
  <int value="1819536169" label="disable-cast-streaming-hw-encoding"/>
  <int value="1820451991" label="enable-offline-auto-reload"/>
  <int value="1821723343" label="disable-saml-signin"/>
  <int value="1828660283" label="enable-webfonts-intervention-trigger"/>
  <int value="1844110073" label="enable-app-view"/>
  <int value="1847024354" label="enable-hotword-hardware"/>
  <int value="1855524566" label="allow-insecure-websocket-from-https-origin"/>
  <int value="1861251313"
      label="enable-message-center-always-scroll-up-upon-notification-removal"/>
  <int value="1862207743" label="enable-android-spellchecker"/>
  <int value="1865068568" label="disable-audio-support-for-desktop-share"/>
  <int value="1865799183" label="javascript-harmony"/>
  <int value="1881036528" label="disable-multilingual-spellchecker"/>
  <int value="1881174782" label="disable-brotli"/>
  <int value="1889076955" label="disable-app-link"/>
  <int value="1891210939" label="enable-blink-features"/>
  <int value="1892201400" label="enable-password-separated-signin-flow"/>
  <int value="1896456311" label="enable-password-save-in-page-navigation"/>
  <int value="1898231011" label="enable-native-notifications"/>
  <int value="1900529524" label="disable-touch-drag-drop"/>
  <int value="1906942630" label="enable-easy-unlock"/>
  <int value="1915178511" label="disable-blink-features"/>
  <int value="1930901873" label="disable-sync-app-list"/>
  <int value="1939413645" label="enable-invalid-cert-collection"/>
  <int value="1942911276" label="enable-grouped-history"/>
  <int value="1944156526" label="sync-url"/>
  <int value="1955677113" label="trace-export-events-to-etw"/>
  <int value="1961425320" label="force-qtkit"/>
  <int value="1966730288" label="disable-threaded-compositing"/>
  <int value="1969604362" label="enable-pinch-virtual-viewport"/>
  <int value="1980011075" label="debug-packed-apps"/>
  <int value="1993258379" label="enable-icon-ntp"/>
  <int value="2000091128" label="enable-touch-hover"/>
  <int value="2004829262" label="enable-webgl-draft-extensions"/>
  <int value="2005614493" label="tab-management-experiment-type-dill"/>
  <int value="2037756154" label="enable-impl-side-painting"/>
  <int value="2059322877" label="new-avatar-menu"/>
  <int value="2071461362" label="disable-credit-card-scan"/>
  <int value="2076903744" label="progress-bar-animation"/>
  <int value="2077917024"
      label="enable-supervised-user-managed-bookmarks-folder"/>
  <int value="2093235103" label="default-tile-width"/>
  <int value="2097048479" label="disable-auto-hiding-toolbar-threshold"/>
  <int value="2101151142" label="disable-direct-write"/>
  <int value="2119964154" label="enable-download-resumption"/>
  <int value="2121776031" label="auto-virtual-keyboard"/>
  <int value="2122023503" label="enable-win32k-lockdown-mimetypes"/>
  <int value="2122876605" label="enable-bleeding-edge-rendering-fast-paths"/>
  <int value="2126203058" label="force-show-update-menu-badge"/>
  <int value="2129929643" label="enable-use-zoom-for-dsf"/>
  <int value="2137347307" label="enable-drive-apps-in-app-list"/>
  <int value="2137599770" label="enable-win32k-renderer-lockdown"/>
  <int value="2141463681" label="enable-offer-upload-credit-cards"/>
</enum>

<enum name="LoginDatabaseInitError" type="int">
  <int value="0" label="Init success"/>
  <int value="1" label="Can't open file"/>
  <int value="2" label="Start transaction error"/>
  <int value="3" label="Meta table failed initialization"/>
  <int value="4" label="Incompatible current version"/>
  <int value="5" label="Logins table failed initialization"/>
  <int value="6" label="Stats table failed initialization"/>
  <int value="7" label="Migration error"/>
  <int value="8" label="Commit transaction error"/>
</enum>

<enum name="LoginFailureReason" type="int">
  <int value="0" label="NONE">None</int>
  <int value="1" label="COULD_NOT_MOUNT_CRYPTOHOME">
    Could not mount cryptohome
  </int>
  <int value="2" label="COULD_NOT_MOUNT_TMPFS">Could not mount tmpfs</int>
  <int value="3" label="COULD_NOT_UNMOUNT_CRYPTOHOME">
    Could not unmount cryptohome
  </int>
  <int value="4" label="DATA_REMOVAL_FAILED">Data removal failed</int>
  <int value="5" label="LOGIN_TIMED_OUT">Login timed out</int>
  <int value="6" label="UNLOCK_FAILED">Unlock failed</int>
  <int value="7" label="NETWORK_AUTH_FAILED">Network auth failed</int>
</enum>

<enum name="LoginIsKnownUser" type="int">
  <int value="0" label="Unknown user"/>
  <int value="1" label="Known user"/>
</enum>

<enum name="LoginPasswordChangeFlow" type="int">
  <int value="0" label="Password change"/>
  <int value="1" label="Cryptohome failure"/>
</enum>

<enum name="LoginPolicyFilesState" type="int">
  <summary>Policy/owner key file state.</summary>
  <int value="0" label="HEALTHY_R11">Healthy, pre-R11</int>
  <int value="1" label="UNUSED">Unused</int>
  <int value="2" label="HEALTHY">Healthy</int>
  <int value="3" label="RESERVED">Reserved</int>
  <int value="4" label="BAD_POLICY_R11">Key OK, policy bad, pre-R11</int>
  <int value="5" label="UNUSED">Unused</int>
  <int value="6" label="BAD_POLICY">Key OK, policy bad</int>
  <int value="7" label="RESERVED">Reserved</int>
  <int value="8" label="KEY_OK_NO_POLICY_R11">
    Key OK, no policy, pre-R11 user (http://crosbug.com/24916)
  </int>
  <int value="9" label="UNUSED">Unused</int>
  <int value="10" label="KEY_OK_NO_POLICY">Key OK, no policy</int>
  <int value="11" label="RESERVED">Reserved</int>
  <int value="12" label="RESERVED">Reserved</int>
  <int value="13" label="RESERVED">Reserved</int>
  <int value="14" label="RESERVED">Reserved</int>
  <int value="15" label="RESERVED">Reserved</int>
  <int value="16" label="BAD_KEY_R11">Key bad, policy OK, pre-R11</int>
  <int value="17" label="UNUSED">Unused</int>
  <int value="18" label="BAD_KEY">Key bad, policy OK</int>
  <int value="19" label="RESERVED">Reserved</int>
  <int value="20" label="BAD_KEY_BAD_POLICY_R11">
    Key bad, policy bad, pre-R11
  </int>
  <int value="21" label="UNUSED">Unused</int>
  <int value="22" label="BAD_KEY_BAD_POLICY">Key bad, policy bad</int>
  <int value="23" label="RESERVED">Reserved</int>
  <int value="24" label="BAD_KEY_NO_POLICY_R11">
    Key bad, policy bad, pre-R11
  </int>
  <int value="25" label="UNUSED">Unused</int>
  <int value="26" label="BAD_KEY_BAD_POLICY">Key bad, policy bad</int>
  <int value="27" label="RESERVED">Reserved</int>
  <int value="28" label="RESERVED">Reserved</int>
  <int value="29" label="RESERVED">Reserved</int>
  <int value="30" label="RESERVED">Reserved</int>
  <int value="31" label="RESERVED">Reserved</int>
  <int value="32" label="NO_KEY_R11">No key, policy OK, pre-R11</int>
  <int value="33" label="UNUSED">Unused</int>
  <int value="34" label="NO_KEY">No key, policy OK</int>
  <int value="35" label="RESERVED">RESERVED</int>
  <int value="36" label="NO_KEY_BAD_POLICY_R11">
    No key, policy bad, pre-R11
  </int>
  <int value="37" label="UNUSED">Unused</int>
  <int value="38" label="NO_KEY_BAD_POLICY">No key, bad policy</int>
  <int value="39" label="RESERVED">Reserved</int>
  <int value="40" label="NO_KEY_NO_POLICY_R11">Un-owned, pre-R11</int>
  <int value="41" label="UNUSED">Unused</int>
  <int value="42" label="NO_KEY_NO_POLICY">Un-owned</int>
  <int value="43" label="RESERVED">Reserved</int>
</enum>

<enum name="LoginReauthReasons" type="int">
  <int value="0" label="None">
    No reason recorded so far, nothing to report. This value should never be
    reported in histogram.
  </int>
  <int value="1" label="Other">Legacy profile holders.</int>
  <int value="2" label="InvalidTokenHandle">
    Password changed, revoked credentials, account deleted.
  </int>
  <int value="3" label="IncorrectPwdEntered">
    Incorrect password entered 3 times at the pod.
  </int>
  <int value="4" label="IncorrectSAMLPwdEntered">
    Incorrect password entered by a SAML user once. OS would show a tooltip
    offering user to complete the online sign-in.
  </int>
  <int value="5" label="SAMLReauthPolicy">
    Company policy required re-auth for SAML users.
  </int>
  <int value="6" label="MissingCryptohome">
    Cryptohome is missing, most likely due to deletion during garbage
    collection.
  </int>
  <int value="7" label="SyncFailed">
    After prior login, OS failed to connect to the sync with the existing RT.
    This could be due to a deleted account, password changed, account revoked,
    etc.
  </int>
  <int value="8" label="PwdUpdateSkipped">
    User cancelled the password change prompt. Chrome OS has to continue to send
    the user through the online flow until user updates their cryptohome
    password or agrees to start the new cryptohome.
  </int>
</enum>

<enum name="LoginStateKeyGenerationStatus" type="int">
  <summary>The result of a state key generation operation.</summary>
  <int value="0" label="GENERATION_METHOD_IDENTIFIER_HASH">
    Successfully generated state keys from machine identifiers.
  </int>
  <int value="1" label="GENERATION_METHOD_HMAC_DEVICE_SECRET">
    Successfully generated state keys from stable device secret.
  </int>
  <int value="2" label="MISSING_IDENTIFIERS">
    Failed due to missing machine IDs.
  </int>
  <int value="3" label="BAD_DEVICE_SECRET">
    Failed due to invalid device secret input.
  </int>
  <int value="4" label="HMAC_INIT_FAILURE">HMAC initialization failed.</int>
  <int value="5" label="HMAC_SIGN_FAILURE">HMAC computation failed.</int>
</enum>

<enum name="LoginSuccessReason" type="int">
  <int value="0" label="OFFLINE_AND_ONLINE">
    Login success offline and online
  </int>
  <int value="1" label="OFFLINE_ONLY">Login success offline only</int>
</enum>

<enum name="LoginUserType" type="int">
  <int value="0" label="INCOGNITO_NORMAL">Incognito Normal</int>
  <int value="1" label="OWNER_NORMAL">Owner Normal</int>
  <int value="2" label="OTHER_NORMAL">Other Normal</int>
  <int value="3" label="INCOGNITO_DEVELOPER">Incognito Dev</int>
  <int value="4" label="OWNER_DEVELOPER">Owner Dev</int>
  <int value="5" label="OTHER_DEVELOPER">Other Dev</int>
</enum>

<enum name="MacBookVersions" type="int">
  <int value="0" label="Other"/>
  <int value="1" label="MacBook5,X"/>
  <int value="2" label="MacBook6,X"/>
  <int value="3" label="MacBook7,X"/>
  <int value="4" label="MacBook8,X"/>
  <int value="5" label="MacBookPro11,X"/>
  <int value="6" label="MacBookPro12,X"/>
  <int value="7" label="MacBookPro13,X"/>
  <int value="8" label="MacBookAir5,X"/>
  <int value="9" label="MacBookAir6,X"/>
  <int value="10" label="MacBookAir7,X"/>
  <int value="11" label="MacBookAir8,X"/>
  <int value="12" label="MacBookAir3,X"/>
  <int value="13" label="MacBookAir4,X"/>
  <int value="14" label="MacBook4,X"/>
  <int value="15" label="MacBook9,X"/>
  <int value="16" label="MacBook10,X"/>
  <int value="17" label="MacBookPro10,X"/>
  <int value="18" label="MacBookPro9,X"/>
  <int value="19" label="MacBookPro8,X"/>
  <int value="20" label="MacBookPro7,X"/>
  <int value="21" label="MacBookPro6,X"/>
  <int value="22" label="MacBookPro5,X"/>
</enum>

<enum name="MainFrameStorable" type="int">
  <int value="0" label="Storable"/>
  <int value="1" label="cache-control: no-store"/>
</enum>

<enum name="MainThreadScrollingReason" type="int">
  <int value="0" label="Not scrolling on main"/>
  <int value="1" label="Background attachment fixed"/>
  <int value="2" label="Non layer viewport constrained"/>
  <int value="3" label="Threaded scrolling disabled"/>
  <int value="4" label="Scrollbar scrolling"/>
  <int value="5" label="Page overlay"/>
  <int value="6" label="Non-fast scrollable region"/>
  <int value="7" label="Event handlers"/>
  <int value="8" label="Failed hit test"/>
  <int value="9" label="No scrolling layer"/>
  <int value="10" label="Not scrollable"/>
  <int value="11" label="Continuing main thread scroll"/>
  <int value="12" label="Non-invertible transform"/>
  <int value="13" label="Page based scrolling"/>
  <int value="14" label="Animating scroll on main thread"/>
  <int value="15" label="Has sticky position objects"/>
</enum>

<enum name="MakeChromeDefaultResult" type="int">
  <int value="0" label="Chrome made default"/>
  <int value="1" label="Dialog closed without explicit choice"/>
  <int value="2" label="Other browser selected"/>
  <int value="3" label="Chrome made default + Relaunch in Metro (obsolete)"/>
</enum>

<enum name="ManagedUserPasswordChange" type="int">
  <int value="0" label="OK_MANAGER">Changed in manager session</int>
  <int value="1" label="OK_MANGED">Changed in supervised user session</int>
  <int value="2" label="FAILED_NO_MASTER_KEY">Master key not found</int>
  <int value="3" label="FAILED_NO_SIGNATURE_KEY">
    Signature or encryption key not found
  </int>
  <int value="4" label="FAILED_NO_PASSWORD_DATA">Password data not found</int>
  <int value="5" label="FAILED_MASTER_KEY_FAILURE">
    Manager key authorization failed
  </int>
  <int value="6" label="FAILED_LOAD_DATA_FAILURE">
    Could not load new password data upon supervised user signin
  </int>
  <int value="7" label="FAILED_INCOMPLETE_DATA_FAILURE">
    Incomplete password data loaded upon supervised user signin.
  </int>
  <int value="8" label="FAILED_AUTHENTICATION_FAILURE">
    Authentication failure while changing password during supervised user
    signin.
  </int>
  <int value="9" label="FAILED_STORE_DATA">
    Could not store new password data for supervised user.
  </int>
</enum>

<enum name="ManifestFetchResultType" type="int">
  <int value="0" label="Fetch succeeded"/>
  <int value="1" label="Fetch failed because of empty URL"/>
  <int value="2" label="Fetch failed (unspecified reason)"/>
</enum>

<enum name="MappedCSSProperties" type="int">
<!-- Generated from third_party/WebKit/Source/core/frame/UseCounter.cpp -->

<!-- See http://src.chromium.org/viewvc/blink/trunk/Source/core/page/UseCounter.cpp -->

  <int value="1" label="Total Pages Measured"/>
  <int value="2" label="color"/>
  <int value="3" label="direction"/>
  <int value="4" label="display"/>
  <int value="5" label="font"/>
  <int value="6" label="font-family"/>
  <int value="7" label="font-size"/>
  <int value="8" label="font-style"/>
  <int value="9" label="font-variant"/>
  <int value="10" label="font-weight"/>
  <int value="11" label="text-rendering"/>
  <int value="12" label="alias-webkit-font-feature-settings"/>
  <int value="13" label="font-kerning"/>
  <int value="14" label="webkit-font-smoothing"/>
  <int value="15" label="font-variant-ligatures"/>
  <int value="16" label="webkit-locale"/>
  <int value="17" label="webkit-text-orientation"/>
  <int value="18" label="webkit-writing-mode"/>
  <int value="19" label="zoom"/>
  <int value="20" label="line-height"/>
  <int value="21" label="background"/>
  <int value="22" label="background-attachment"/>
  <int value="23" label="background-clip"/>
  <int value="24" label="background-color"/>
  <int value="25" label="background-image"/>
  <int value="26" label="background-origin"/>
  <int value="27" label="background-position"/>
  <int value="28" label="background-position-x"/>
  <int value="29" label="background-position-y"/>
  <int value="30" label="background-repeat"/>
  <int value="31" label="background-repeat-x"/>
  <int value="32" label="background-repeat-y"/>
  <int value="33" label="background-size"/>
  <int value="34" label="border"/>
  <int value="35" label="border-bottom"/>
  <int value="36" label="border-bottom-color"/>
  <int value="37" label="border-bottom-left-radius"/>
  <int value="38" label="border-bottom-right-radius"/>
  <int value="39" label="border-bottom-style"/>
  <int value="40" label="border-bottom-width"/>
  <int value="41" label="border-collapse"/>
  <int value="42" label="border-color"/>
  <int value="43" label="border-image"/>
  <int value="44" label="border-image-outset"/>
  <int value="45" label="border-image-repeat"/>
  <int value="46" label="border-image-slice"/>
  <int value="47" label="border-image-source"/>
  <int value="48" label="border-image-width"/>
  <int value="49" label="border-left"/>
  <int value="50" label="border-left-color"/>
  <int value="51" label="border-left-style"/>
  <int value="52" label="border-left-width"/>
  <int value="53" label="border-radius"/>
  <int value="54" label="border-right"/>
  <int value="55" label="border-right-color"/>
  <int value="56" label="border-right-style"/>
  <int value="57" label="border-right-width"/>
  <int value="58" label="border-spacing"/>
  <int value="59" label="border-style"/>
  <int value="60" label="border-top"/>
  <int value="61" label="border-top-color"/>
  <int value="62" label="border-top-left-radius"/>
  <int value="63" label="border-top-right-radius"/>
  <int value="64" label="border-top-style"/>
  <int value="65" label="border-top-width"/>
  <int value="66" label="border-width"/>
  <int value="67" label="bottom"/>
  <int value="68" label="box-shadow"/>
  <int value="69" label="box-sizing"/>
  <int value="70" label="caption-side"/>
  <int value="71" label="clear"/>
  <int value="72" label="clip"/>
  <int value="73" label="webkit-clip-path"/>
  <int value="74" label="content"/>
  <int value="75" label="counter-increment"/>
  <int value="76" label="counter-reset"/>
  <int value="77" label="cursor"/>
  <int value="78" label="empty-cells"/>
  <int value="79" label="float"/>
  <int value="80" label="font-stretch"/>
  <int value="81" label="height"/>
  <int value="82" label="image-rendering"/>
  <int value="83" label="left"/>
  <int value="84" label="letter-spacing"/>
  <int value="85" label="list-style"/>
  <int value="86" label="list-style-image"/>
  <int value="87" label="list-style-position"/>
  <int value="88" label="list-style-type"/>
  <int value="89" label="margin"/>
  <int value="90" label="margin-bottom"/>
  <int value="91" label="margin-left"/>
  <int value="92" label="margin-right"/>
  <int value="93" label="margin-top"/>
  <int value="94" label="max-height"/>
  <int value="95" label="max-width"/>
  <int value="96" label="min-height"/>
  <int value="97" label="min-width"/>
  <int value="98" label="opacity"/>
  <int value="99" label="orphans"/>
  <int value="100" label="outline"/>
  <int value="101" label="outline-color"/>
  <int value="102" label="outline-offset"/>
  <int value="103" label="outline-style"/>
  <int value="104" label="outline-width"/>
  <int value="105" label="overflow"/>
  <int value="106" label="overflow-wrap"/>
  <int value="107" label="overflow-x"/>
  <int value="108" label="overflow-y"/>
  <int value="109" label="padding"/>
  <int value="110" label="padding-bottom"/>
  <int value="111" label="padding-left"/>
  <int value="112" label="padding-right"/>
  <int value="113" label="padding-top"/>
  <int value="114" label="page"/>
  <int value="115" label="page-break-after"/>
  <int value="116" label="page-break-before"/>
  <int value="117" label="page-break-inside"/>
  <int value="118" label="pointer-events"/>
  <int value="119" label="position"/>
  <int value="120" label="quotes"/>
  <int value="121" label="resize"/>
  <int value="122" label="right"/>
  <int value="123" label="size"/>
  <int value="124" label="src"/>
  <int value="125" label="speak"/>
  <int value="126" label="table-layout"/>
  <int value="127" label="tab-size"/>
  <int value="128" label="text-align"/>
  <int value="129" label="text-decoration"/>
  <int value="130" label="text-indent"/>
  <int value="131" label="text-line-through"/>
  <int value="132" label="text-line-through-color"/>
  <int value="133" label="text-line-through-mode"/>
  <int value="134" label="text-line-through-style"/>
  <int value="135" label="text-line-through-width"/>
  <int value="136" label="text-overflow"/>
  <int value="137" label="text-overline"/>
  <int value="138" label="text-overline-color"/>
  <int value="139" label="text-overline-mode"/>
  <int value="140" label="text-overline-style"/>
  <int value="141" label="text-overline-width"/>
  <int value="142" label="text-shadow"/>
  <int value="143" label="text-transform"/>
  <int value="144" label="text-underline"/>
  <int value="145" label="text-underline-color"/>
  <int value="146" label="text-underline-mode"/>
  <int value="147" label="text-underline-style"/>
  <int value="148" label="text-underline-width"/>
  <int value="149" label="top"/>
  <int value="150" label="transition"/>
  <int value="151" label="transition-delay"/>
  <int value="152" label="transition-duration"/>
  <int value="153" label="transition-property"/>
  <int value="154" label="transition-timing-function"/>
  <int value="155" label="unicode-bidi"/>
  <int value="156" label="unicode-range"/>
  <int value="157" label="vertical-align"/>
  <int value="158" label="visibility"/>
  <int value="159" label="white-space"/>
  <int value="160" label="widows"/>
  <int value="161" label="width"/>
  <int value="162" label="word-break"/>
  <int value="163" label="word-spacing"/>
  <int value="164" label="word-wrap"/>
  <int value="165" label="z-index"/>
  <int value="166" label="alias-webkit-animation"/>
  <int value="167" label="alias-webkit-animation-delay"/>
  <int value="168" label="alias-webkit-animation-direction"/>
  <int value="169" label="alias-webkit-animation-duration"/>
  <int value="170" label="alias-webkit-animation-fill-mode"/>
  <int value="171" label="alias-webkit-animation-iteration-count"/>
  <int value="172" label="alias-webkit-animation-name"/>
  <int value="173" label="alias-webkit-animation-play-state"/>
  <int value="174" label="alias-webkit-animation-timing-function"/>
  <int value="175" label="webkit-appearance"/>
  <int value="176" label="webkit-aspect-ratio"/>
  <int value="177" label="alias-webkit-backface-visibility"/>
  <int value="178" label="webkit-background-clip"/>
  <int value="179" label="webkit-background-composite"/>
  <int value="180" label="webkit-background-origin"/>
  <int value="181" label="alias-webkit-background-size"/>
  <int value="182" label="webkit-border-after"/>
  <int value="183" label="webkit-border-after-color"/>
  <int value="184" label="webkit-border-after-style"/>
  <int value="185" label="webkit-border-after-width"/>
  <int value="186" label="webkit-border-before"/>
  <int value="187" label="webkit-border-before-color"/>
  <int value="188" label="webkit-border-before-style"/>
  <int value="189" label="webkit-border-before-width"/>
  <int value="190" label="webkit-border-end"/>
  <int value="191" label="webkit-border-end-color"/>
  <int value="192" label="webkit-border-end-style"/>
  <int value="193" label="webkit-border-end-width"/>
  <int value="194" label="webkit-border-fit"/>
  <int value="195" label="webkit-border-horizontal-spacing"/>
  <int value="196" label="webkit-border-image"/>
  <int value="197" label="alias-webkit-border-radius"/>
  <int value="198" label="webkit-border-start"/>
  <int value="199" label="webkit-border-start-color"/>
  <int value="200" label="webkit-border-start-style"/>
  <int value="201" label="webkit-border-start-width"/>
  <int value="202" label="webkit-border-vertical-spacing"/>
  <int value="203" label="webkit-box-align"/>
  <int value="204" label="webkit-box-direction"/>
  <int value="205" label="webkit-box-flex"/>
  <int value="206" label="webkit-box-flex-group"/>
  <int value="207" label="webkit-box-lines"/>
  <int value="208" label="webkit-box-ordinal-group"/>
  <int value="209" label="webkit-box-orient"/>
  <int value="210" label="webkit-box-pack"/>
  <int value="211" label="webkit-box-reflect"/>
  <int value="212" label="alias-webkit-box-shadow"/>
  <int value="213" label="webkit-color-correction"/>
  <int value="214" label="webkit-column-axis"/>
  <int value="215" label="webkit-column-break-after"/>
  <int value="216" label="webkit-column-break-before"/>
  <int value="217" label="webkit-column-break-inside"/>
  <int value="218" label="alias-webkit-column-count"/>
  <int value="219" label="alias-webkit-column-gap"/>
  <int value="220" label="webkit-column-progression"/>
  <int value="221" label="alias-webkit-column-rule"/>
  <int value="222" label="alias-webkit-column-rule-color"/>
  <int value="223" label="alias-webkit-column-rule-style"/>
  <int value="224" label="alias-webkit-column-rule-width"/>
  <int value="225" label="alias-webkit-column-span"/>
  <int value="226" label="alias-webkit-column-width"/>
  <int value="227" label="alias-webkit-columns"/>
  <int value="228" label="webkit-box-decoration-break"/>
  <int value="229" label="webkit-filter"/>
  <int value="230" label="align-content"/>
  <int value="231" label="align-items"/>
  <int value="232" label="align-self"/>
  <int value="233" label="flex"/>
  <int value="234" label="flex-basis"/>
  <int value="235" label="flex-direction"/>
  <int value="236" label="flex-flow"/>
  <int value="237" label="flex-grow"/>
  <int value="238" label="flex-shrink"/>
  <int value="239" label="flex-wrap"/>
  <int value="240" label="justify-content"/>
  <int value="241" label="webkit-font-size-delta"/>
  <int value="242" label="grid-template-columns"/>
  <int value="243" label="grid-template-rows"/>
  <int value="244" label="grid-column-start"/>
  <int value="245" label="grid-column-end"/>
  <int value="246" label="grid-row-start"/>
  <int value="247" label="grid-row-end"/>
  <int value="248" label="grid-column"/>
  <int value="249" label="grid-row"/>
  <int value="250" label="grid-auto-flow"/>
  <int value="251" label="webkit-highlight"/>
  <int value="252" label="webkit-hyphenate-character"/>
  <int value="253" label="webkit-hyphenate-limit-after"/>
  <int value="254" label="webkit-hyphenate-limit-before"/>
  <int value="255" label="webkit-hyphenate-limit-lines"/>
  <int value="256" label="webkit-hyphens"/>
  <int value="257" label="webkit-line-box-contain"/>
  <int value="258" label="webkit-line-align"/>
  <int value="259" label="webkit-line-break"/>
  <int value="260" label="webkit-line-clamp"/>
  <int value="261" label="webkit-line-grid"/>
  <int value="262" label="webkit-line-snap"/>
  <int value="263" label="webkit-logical-width"/>
  <int value="264" label="webkit-logical-height"/>
  <int value="265" label="webkit-margin-after-collapse"/>
  <int value="266" label="webkit-margin-before-collapse"/>
  <int value="267" label="webkit-margin-bottom-collapse"/>
  <int value="268" label="webkit-margin-top-collapse"/>
  <int value="269" label="webkit-margin-collapse"/>
  <int value="270" label="webkit-margin-after"/>
  <int value="271" label="webkit-margin-before"/>
  <int value="272" label="webkit-margin-end"/>
  <int value="273" label="webkit-margin-start"/>
  <int value="274" label="webkit-marquee"/>
  <int value="275" label="webkit-marquee-direction"/>
  <int value="276" label="webkit-marquee-increment"/>
  <int value="277" label="webkit-marquee-repetition"/>
  <int value="278" label="webkit-marquee-speed"/>
  <int value="279" label="webkit-marquee-style"/>
  <int value="280" label="webkit-mask"/>
  <int value="281" label="webkit-mask-box-image"/>
  <int value="282" label="webkit-mask-box-image-outset"/>
  <int value="283" label="webkit-mask-box-image-repeat"/>
  <int value="284" label="webkit-mask-box-image-slice"/>
  <int value="285" label="webkit-mask-box-image-source"/>
  <int value="286" label="webkit-mask-box-image-width"/>
  <int value="287" label="webkit-mask-clip"/>
  <int value="288" label="webkit-mask-composite"/>
  <int value="289" label="webkit-mask-image"/>
  <int value="290" label="webkit-mask-origin"/>
  <int value="291" label="webkit-mask-position"/>
  <int value="292" label="webkit-mask-position-x"/>
  <int value="293" label="webkit-mask-position-y"/>
  <int value="294" label="webkit-mask-repeat"/>
  <int value="295" label="webkit-mask-repeat-x"/>
  <int value="296" label="webkit-mask-repeat-y"/>
  <int value="297" label="webkit-mask-size"/>
  <int value="298" label="webkit-max-logical-width"/>
  <int value="299" label="webkit-max-logical-height"/>
  <int value="300" label="webkit-min-logical-width"/>
  <int value="301" label="webkit-min-logical-height"/>
  <int value="302" label="webkit-nbsp-mode"/>
  <int value="303" label="order"/>
  <int value="304" label="webkit-padding-after"/>
  <int value="305" label="webkit-padding-before"/>
  <int value="306" label="webkit-padding-end"/>
  <int value="307" label="webkit-padding-start"/>
  <int value="308" label="alias-webkit-perspective"/>
  <int value="309" label="alias-webkit-perspective-origin"/>
  <int value="310" label="webkit-perspective-origin-x"/>
  <int value="311" label="webkit-perspective-origin-y"/>
  <int value="312" label="webkit-print-color-adjust"/>
  <int value="313" label="webkit-rtl-ordering"/>
  <int value="314" label="webkit-ruby-position"/>
  <int value="315" label="webkit-text-combine"/>
  <int value="316" label="webkit-text-decorations-in-effect"/>
  <int value="317" label="webkit-text-emphasis"/>
  <int value="318" label="webkit-text-emphasis-color"/>
  <int value="319" label="webkit-text-emphasis-position"/>
  <int value="320" label="webkit-text-emphasis-style"/>
  <int value="321" label="webkit-text-fill-color"/>
  <int value="322" label="webkit-text-security"/>
  <int value="323" label="webkit-text-stroke"/>
  <int value="324" label="webkit-text-stroke-color"/>
  <int value="325" label="webkit-text-stroke-width"/>
  <int value="326" label="alias-webkit-transform"/>
  <int value="327" label="alias-webkit-transform-origin"/>
  <int value="328" label="webkit-transform-origin-x"/>
  <int value="329" label="webkit-transform-origin-y"/>
  <int value="330" label="webkit-transform-origin-z"/>
  <int value="331" label="alias-webkit-transform-style"/>
  <int value="332" label="alias-webkit-transition"/>
  <int value="333" label="alias-webkit-transition-delay"/>
  <int value="334" label="alias-webkit-transition-duration"/>
  <int value="335" label="alias-webkit-transition-property"/>
  <int value="336" label="alias-webkit-transition-timing-function"/>
  <int value="337" label="webkit-user-drag"/>
  <int value="338" label="webkit-user-modify"/>
  <int value="339" label="webkit-user-select"/>
  <int value="340" label="webkit-flow-into"/>
  <int value="341" label="webkit-flow-from"/>
  <int value="342" label="webkit-region-fragment"/>
  <int value="343" label="webkit-region-break-after"/>
  <int value="344" label="webkit-region-break-before"/>
  <int value="345" label="webkit-region-break-inside"/>
  <int value="346" label="shape-inside"/>
  <int value="347" label="shape-outside"/>
  <int value="348" label="shape-margin"/>
  <int value="349" label="shape-padding"/>
  <int value="350" label="webkit-wrap-flow"/>
  <int value="351" label="webkit-wrap-through"/>
  <int value="352" label="webkit-wrap"/>
  <int value="353" label="webkit-tap-highlight-color"/>
  <int value="354" label="webkit-app-region"/>
  <int value="355" label="clip-path"/>
  <int value="356" label="clip-rule"/>
  <int value="357" label="mask"/>
  <int value="358" label="enable-background"/>
  <int value="359" label="filter"/>
  <int value="360" label="flood-color"/>
  <int value="361" label="flood-opacity"/>
  <int value="362" label="lighting-color"/>
  <int value="363" label="stop-color"/>
  <int value="364" label="stop-opacity"/>
  <int value="365" label="color-interpolation"/>
  <int value="366" label="color-interpolation-filters"/>
  <int value="367" label="color-profile"/>
  <int value="368" label="color-rendering"/>
  <int value="369" label="fill"/>
  <int value="370" label="fill-opacity"/>
  <int value="371" label="fill-rule"/>
  <int value="372" label="marker"/>
  <int value="373" label="marker-end"/>
  <int value="374" label="marker-mid"/>
  <int value="375" label="marker-start"/>
  <int value="376" label="mask-type"/>
  <int value="377" label="shape-rendering"/>
  <int value="378" label="stroke"/>
  <int value="379" label="stroke-dasharray"/>
  <int value="380" label="stroke-dashoffset"/>
  <int value="381" label="stroke-linecap"/>
  <int value="382" label="stroke-linejoin"/>
  <int value="383" label="stroke-miterlimit"/>
  <int value="384" label="stroke-opacity"/>
  <int value="385" label="stroke-width"/>
  <int value="386" label="alignment-baseline"/>
  <int value="387" label="baseline-shift"/>
  <int value="388" label="dominant-baseline"/>
  <int value="389" label="glyph-orientation-horizontal"/>
  <int value="390" label="glyph-orientation-vertical"/>
  <int value="391" label="kerning"/>
  <int value="392" label="text-anchor"/>
  <int value="393" label="vector-effect"/>
  <int value="394" label="writing-mode"/>
  <int value="395" label="webkit-svg-shadow"/>
  <int value="396" label="webkit-cursor-visibility"/>
  <int value="397" label="image-orientation"/>
  <int value="398" label="image-resolution"/>
  <int value="399" label="webkit-blend-mode"/>
  <int value="400" label="webkit-background-blend-mode"/>
  <int value="401" label="text-decoration-line"/>
  <int value="402" label="text-decoration-style"/>
  <int value="403" label="text-decoration-color"/>
  <int value="404" label="text-align-last"/>
  <int value="405" label="text-underline-position"/>
  <int value="406" label="max-zoom"/>
  <int value="407" label="min-zoom"/>
  <int value="408" label="orientation"/>
  <int value="409" label="user-zoom"/>
  <int value="410" label="webkit-dashboard-region"/>
  <int value="411" label="webkit-overflow-scrolling"/>
  <int value="412" label="webkit-app-region"/>
  <int value="413" label="webkit-filter"/>
  <int value="414" label="webkit-box-decoration-break"/>
  <int value="415" label="webkit-tap-highlight-color"/>
  <int value="416" label="buffered-rendering"/>
  <int value="417" label="grid-auto-rows"/>
  <int value="418" label="grid-auto-columns"/>
  <int value="419" label="background-blend-mode"/>
  <int value="420" label="mix-blend-mode"/>
  <int value="421" label="touch-action"/>
  <int value="422" label="grid-area"/>
  <int value="423" label="grid-template-areas"/>
  <int value="424" label="animation"/>
  <int value="425" label="animation-delay"/>
  <int value="426" label="animation-direction"/>
  <int value="427" label="animation-duration"/>
  <int value="428" label="animation-fill-mode"/>
  <int value="429" label="animation-iteration-count"/>
  <int value="430" label="animation-name"/>
  <int value="431" label="animation-play-state"/>
  <int value="432" label="animation-timing-function"/>
  <int value="433" label="object-fit"/>
  <int value="434" label="paint-order"/>
  <int value="435" label="mask-source-type"/>
  <int value="436" label="isolation"/>
  <int value="437" label="object-position"/>
  <int value="438" label="internal-callback"/>
  <int value="439" label="shape-image-threshold"/>
  <int value="440" label="column-fill"/>
  <int value="441" label="text-justify"/>
  <int value="442" label="touch-action-delay"/>
  <int value="443" label="justify-self"/>
  <int value="444" label="scroll-behavior"/>
  <int value="445" label="will-change"/>
  <int value="446" label="transform"/>
  <int value="447" label="transform-origin"/>
  <int value="448" label="transform-style"/>
  <int value="449" label="perspective"/>
  <int value="450" label="perspective-origin"/>
  <int value="451" label="backface-visibility"/>
  <int value="452" label="grid-template"/>
  <int value="453" label="grid"/>
  <int value="454" label="all"/>
  <int value="455" label="justify-items"/>
  <int value="456" label="scroll-blocks-on"/>
  <int value="457" label="motion-path"/>
  <int value="458" label="motion-offset"/>
  <int value="459" label="motion-rotation"/>
  <int value="460" label="motion"/>
  <int value="461" label="x"/>
  <int value="462" label="y"/>
  <int value="463" label="rx"/>
  <int value="464" label="ry"/>
  <int value="465" label="font-size-adjust"/>
  <int value="466" label="cx"/>
  <int value="467" label="cy"/>
  <int value="468" label="r"/>
  <int value="469" label="alias-epub-caption-side"/>
  <int value="470" label="alias-epub-text-combine"/>
  <int value="471" label="alias-epub-text-emphasis"/>
  <int value="472" label="alias-epub-text-emphasis-color"/>
  <int value="473" label="alias-epub-text-emphasis-style"/>
  <int value="474" label="alias-epub-text-orientation"/>
  <int value="475" label="alias-epub-text-transform"/>
  <int value="476" label="alias-epub-word-break"/>
  <int value="477" label="alias-epub-writing-mode"/>
  <int value="478" label="alias-webkit-align-content"/>
  <int value="479" label="alias-webkit-align-items"/>
  <int value="480" label="alias-webkit-align-self"/>
  <int value="481" label="alias-webkit-border-bottom-left-radius"/>
  <int value="482" label="alias-webkit-border-bottom-right-radius"/>
  <int value="483" label="alias-webkit-border-top-left-radius"/>
  <int value="484" label="alias-webkit-border-top-right-radius"/>
  <int value="485" label="alias-webkit-box-sizing"/>
  <int value="486" label="alias-webkit-flex"/>
  <int value="487" label="alias-webkit-flex-basis"/>
  <int value="488" label="alias-webkit-flex-direction"/>
  <int value="489" label="alias-webkit-flex-flow"/>
  <int value="490" label="alias-webkit-flex-grow"/>
  <int value="491" label="alias-webkit-flex-shrink"/>
  <int value="492" label="alias-webkit-flex-wrap"/>
  <int value="493" label="alias-webkit-justify-content"/>
  <int value="494" label="alias-webkit-opacity"/>
  <int value="495" label="alias-webkit-order"/>
  <int value="496" label="alias-webkit-shape-image-threshold"/>
  <int value="497" label="alias-webkit-shape-margin"/>
  <int value="498" label="alias-webkit-shape-outside"/>
  <int value="499" label="scroll-snap-type"/>
  <int value="500" label="scroll-snap-points-x"/>
  <int value="501" label="scroll-snap-points-y"/>
  <int value="502" label="scroll-snap-coordinate"/>
  <int value="503" label="scroll-snap-destination"/>
  <int value="504" label="translate"/>
  <int value="505" label="rotate"/>
  <int value="506" label="scale"/>
  <int value="507" label="image-orientation"/>
  <int value="508" label="backdrop-filter"/>
  <int value="509" label="text-combine-upright"/>
  <int value="510" label="text-orientation"/>
  <int value="511" label="grid-column-gap"/>
  <int value="512" label="grid-row-gap"/>
  <int value="513" label="grid-gap"/>
  <int value="514" label="font-feature-settings"/>
  <int value="515" label="variable"/>
  <int value="516" label="font-display"/>
  <int value="517" label="contain"/>
  <int value="518" label="d"/>
  <int value="519" label="snap-height"/>
  <int value="520" label="break-after"/>
  <int value="521" label="break-before"/>
  <int value="522" label="break-inside"/>
  <int value="523" label="column-count"/>
  <int value="524" label="column-gap"/>
  <int value="525" label="column-rule"/>
  <int value="526" label="column-rule-color"/>
  <int value="527" label="column-rule-style"/>
  <int value="528" label="column-rule-width"/>
  <int value="529" label="column-span"/>
  <int value="530" label="column-width"/>
  <int value="531" label="columns"/>
  <int value="532" label="apply-at-rule"/>
  <int value="533" label="font-variant-caps"/>
  <int value="534" label="hyphens"/>
  <int value="535" label="font-variant-numeric"/>
</enum>

<enum name="MappedEditingCommands" type="int">
<!-- Generated from third_party/WebKit/Source/core/editing/EditorCommand.cpp -->

  <int value="1" label="AlignJustified"/>
  <int value="2" label="AlignLeft"/>
  <int value="3" label="AlignRight"/>
  <int value="4" label="BackColor"/>
  <int value="5" label="BackwardDelete"/>
  <int value="6" label="Bold"/>
  <int value="7" label="Copy"/>
  <int value="8" label="CreateLink"/>
  <int value="9" label="Cut"/>
  <int value="10" label="DefaultParagraphSeparator"/>
  <int value="11" label="Delete"/>
  <int value="12" label="DeleteBackward"/>
  <int value="13" label="DeleteBackwardByDecomposingPreviousCharacter"/>
  <int value="14" label="DeleteForward"/>
  <int value="15" label="DeleteToBeginningOfLine"/>
  <int value="16" label="DeleteToBeginningOfParagraph"/>
  <int value="17" label="DeleteToEndOfLine"/>
  <int value="18" label="DeleteToEndOfParagraph"/>
  <int value="19" label="DeleteToMark"/>
  <int value="20" label="DeleteWordBackward"/>
  <int value="21" label="DeleteWordForward"/>
  <int value="22" label="FindString"/>
  <int value="23" label="FontName"/>
  <int value="24" label="FontSize"/>
  <int value="25" label="FontSizeDelta"/>
  <int value="26" label="ForeColor"/>
  <int value="27" label="FormatBlock"/>
  <int value="28" label="ForwardDelete"/>
  <int value="29" label="HiliteColor"/>
  <int value="30" label="IgnoreSpelling"/>
  <int value="31" label="Indent"/>
  <int value="32" label="InsertBacktab"/>
  <int value="33" label="InsertHTML"/>
  <int value="34" label="InsertHorizontalRule"/>
  <int value="35" label="InsertImage"/>
  <int value="36" label="InsertLineBreak"/>
  <int value="37" label="InsertNewline"/>
  <int value="38" label="InsertNewlineInQuotedContent"/>
  <int value="39" label="InsertOrderedList"/>
  <int value="40" label="InsertParagraph"/>
  <int value="41" label="InsertTab"/>
  <int value="42" label="InsertText"/>
  <int value="43" label="InsertUnorderedList"/>
  <int value="44" label="Italic"/>
  <int value="45" label="JustifyCenter"/>
  <int value="46" label="JustifyFull"/>
  <int value="47" label="JustifyLeft"/>
  <int value="48" label="JustifyNone"/>
  <int value="49" label="JustifyRight"/>
  <int value="50" label="MakeTextWritingDirectionLeftToRight"/>
  <int value="51" label="MakeTextWritingDirectionNatural"/>
  <int value="52" label="MakeTextWritingDirectionRightToLeft"/>
  <int value="53" label="MoveBackward"/>
  <int value="54" label="MoveBackwardAndModifySelection"/>
  <int value="55" label="MoveDown"/>
  <int value="56" label="MoveDownAndModifySelection"/>
  <int value="57" label="MoveForward"/>
  <int value="58" label="MoveForwardAndModifySelection"/>
  <int value="59" label="MoveLeft"/>
  <int value="60" label="MoveLeftAndModifySelection"/>
  <int value="61" label="MovePageDown"/>
  <int value="62" label="MovePageDownAndModifySelection"/>
  <int value="63" label="MovePageUp"/>
  <int value="64" label="MovePageUpAndModifySelection"/>
  <int value="65" label="MoveParagraphBackward"/>
  <int value="66" label="MoveParagraphBackwardAndModifySelection"/>
  <int value="67" label="MoveParagraphForward"/>
  <int value="68" label="MoveParagraphForwardAndModifySelection"/>
  <int value="69" label="MoveRight"/>
  <int value="70" label="MoveRightAndModifySelection"/>
  <int value="71" label="MoveToBeginningOfDocument"/>
  <int value="72" label="MoveToBeginningOfDocumentAndModifySelection"/>
  <int value="73" label="MoveToBeginningOfLine"/>
  <int value="74" label="MoveToBeginningOfLineAndModifySelection"/>
  <int value="75" label="MoveToBeginningOfParagraph"/>
  <int value="76" label="MoveToBeginningOfParagraphAndModifySelection"/>
  <int value="77" label="MoveToBeginningOfSentence"/>
  <int value="78" label="MoveToBeginningOfSentenceAndModifySelection"/>
  <int value="79" label="MoveToEndOfDocument"/>
  <int value="80" label="MoveToEndOfDocumentAndModifySelection"/>
  <int value="81" label="MoveToEndOfLine"/>
  <int value="82" label="MoveToEndOfLineAndModifySelection"/>
  <int value="83" label="MoveToEndOfParagraph"/>
  <int value="84" label="MoveToEndOfParagraphAndModifySelection"/>
  <int value="85" label="MoveToEndOfSentence"/>
  <int value="86" label="MoveToEndOfSentenceAndModifySelection"/>
  <int value="87" label="MoveToLeftEndOfLine"/>
  <int value="88" label="MoveToLeftEndOfLineAndModifySelection"/>
  <int value="89" label="MoveToRightEndOfLine"/>
  <int value="90" label="MoveToRightEndOfLineAndModifySelection"/>
  <int value="91" label="MoveUp"/>
  <int value="92" label="MoveUpAndModifySelection"/>
  <int value="93" label="MoveWordBackward"/>
  <int value="94" label="MoveWordBackwardAndModifySelection"/>
  <int value="95" label="MoveWordForward"/>
  <int value="96" label="MoveWordForwardAndModifySelection"/>
  <int value="97" label="MoveWordLeft"/>
  <int value="98" label="MoveWordLeftAndModifySelection"/>
  <int value="99" label="MoveWordRight"/>
  <int value="100" label="MoveWordRightAndModifySelection"/>
  <int value="101" label="Outdent"/>
  <int value="102" label="OverWrite"/>
  <int value="103" label="Paste"/>
  <int value="104" label="PasteAndMatchStyle"/>
  <int value="105" label="PasteGlobalSelection"/>
  <int value="106" label="Print"/>
  <int value="107" label="Redo"/>
  <int value="108" label="RemoveFormat"/>
  <int value="109" label="ScrollPageBackward"/>
  <int value="110" label="ScrollPageForward"/>
  <int value="111" label="ScrollLineUp"/>
  <int value="112" label="ScrollLineDown"/>
  <int value="113" label="ScrollToBeginningOfDocument"/>
  <int value="114" label="ScrollToEndOfDocument"/>
  <int value="115" label="SelectAll"/>
  <int value="116" label="SelectLine"/>
  <int value="117" label="SelectParagraph"/>
  <int value="118" label="SelectSentence"/>
  <int value="119" label="SelectToMark"/>
  <int value="120" label="SelectWord"/>
  <int value="121" label="SetMark"/>
  <int value="122" label="Strikethrough"/>
  <int value="123" label="StyleWithCSS"/>
  <int value="124" label="Subscript"/>
  <int value="125" label="Superscript"/>
  <int value="126" label="SwapWithMark"/>
  <int value="127" label="ToggleBold"/>
  <int value="128" label="ToggleItalic"/>
  <int value="129" label="ToggleUnderline"/>
  <int value="130" label="Transpose"/>
  <int value="131" label="Underline"/>
  <int value="132" label="Undo"/>
  <int value="133" label="Unlink"/>
  <int value="134" label="Unscript"/>
  <int value="135" label="Unselect"/>
  <int value="136" label="UseCSS"/>
  <int value="137" label="Yank"/>
  <int value="138" label="YankAndSelect"/>
  <int value="139" label="AlignCenter"/>
</enum>

<enum name="MarkNonSecureAsStatus" type="int">
  <int value="0" label="Neutral"/>
  <int value="1" label="Dubious (deprecated August 2015)"/>
  <int value="2" label="Non-Secure"/>
</enum>

<enum name="MediaCommand" type="int">
  <int value="0" label="Resume"/>
  <int value="1" label="Pause"/>
  <int value="2" label="Seek"/>
</enum>

<enum name="MediaContainers" type="int">
  <int value="0" label="Unknown"/>
  <int value="1" label="AAC (Advanced Audio Coding)"/>
  <int value="2" label="AC-3"/>
  <int value="3" label="AIFF (Audio Interchange File Format)"/>
  <int value="4" label="AMR (Adaptive Multi-Rate Audio)"/>
  <int value="5" label="APE (Monkey's Audio)"/>
  <int value="6" label="ASF (Advanced / Active Streaming Format)"/>
  <int value="7" label="SSA (SubStation Alpha) subtitle"/>
  <int value="8" label="AVI (Audio Video Interleaved)"/>
  <int value="9" label="Bink"/>
  <int value="10" label="CAF (Apple Core Audio Format)"/>
  <int value="11" label="DTS"/>
  <int value="12" label="DTS-HD"/>
  <int value="13" label="DV (Digital Video)"/>
  <int value="14" label="DXA"/>
  <int value="15" label="Enhanced AC-3"/>
  <int value="16" label="FLAC (Free Lossless Audio Codec)"/>
  <int value="17" label="FLV (Flash Video)"/>
  <int value="18" label="GSM (Global System for Mobile Audio)"/>
  <int value="19" label="H.261"/>
  <int value="20" label="H.263"/>
  <int value="21" label="H.264"/>
  <int value="22" label="HLS (Apple HTTP Live Streaming PlayList)"/>
  <int value="23" label="Berkeley/IRCAM/CARL Sound Format"/>
  <int value="24" label="MJPEG video"/>
  <int value="25" label="QuickTime / MOV / MPEG4"/>
  <int value="26" label="MP3 (MPEG audio layer 2/3)"/>
  <int value="27" label="MPEG-2 Program Stream"/>
  <int value="28" label="MPEG-2 Transport Stream"/>
  <int value="29" label="MPEG-4 Bitstream"/>
  <int value="30" label="Ogg"/>
  <int value="31" label="RM (RealMedia)"/>
  <int value="32" label="SRT (SubRip subtitle)"/>
  <int value="33" label="SWF (ShockWave Flash)"/>
  <int value="34" label="VC-1"/>
  <int value="35" label="WAV / WAVE (Waveform Audio)"/>
  <int value="36" label="Matroska / WebM"/>
  <int value="37" label="WTV (Windows Television)"/>
  <int value="38" label="DASH"/>
  <int value="39" label="SmoothStream"/>
</enum>

<enum name="MediaControlsShowReason" type="int">
  <int value="0" label="Attribute"/>
  <int value="1" label="Fullscreen"/>
  <int value="2" label="No scripts allowed"/>
  <int value="3" label="Not shown"/>
</enum>

<enum name="MediaDocumentDownloadButtonType" type="int">
  <int value="0" label="Shown"/>
  <int value="1" label="Clicked"/>
</enum>

<enum name="MediaElementAutoPlay" type="int">
  <int value="0" label="Media element with autoplay seen"/>
  <int value="1"
      label="Autoplay enabled and user stopped media play at any point"/>
  <int value="2"
      label="Autoplay enabled but user bailed out on media play early"/>
  <int value="3" label="Autoplay disabled but user manually started media"/>
  <int value="4"
      label="Autoplay enabled through a user-gesture triggered load() call."/>
  <int value="5" label="Autoplay disabled by sandbox flags."/>
  <int value="6" label="Gesture requirement overridden during initial load."/>
  <int value="7" label="Gesture requirement overridden in play()."/>
  <int value="8"
      label="Gesture req. overridden after scroll for deferred attribute."/>
  <int value="9"
      label="Gesture req. overridden after scroll for deferred play()."/>
  <int value="10" label="play() call failed due to gesture requirement."/>
  <int value="11" label="Any playback started."/>
  <int value="12" label="Any playback paused."/>
  <int value="13" label="Any playback bailed out."/>
  <int value="14" label="Any playback completed."/>
  <int value="15" label="Any audio element encountered."/>
  <int value="16" label="Any video element encountered."/>
  <int value="17" label="Autoplayed media complete."/>
  <int value="18" label="Gestureless playback started due to load()."/>
  <int value="19" label="Gesture requirement overridden for media stream."/>
  <int value="20" label="Gesture requirement overridden, unknown reason."/>
  <int value="21" label="Gesture requirement overridden by play method."/>
</enum>

<enum name="MediaGalleriesUsageType" type="int">
  <int value="0" label="Gallery added from permission dialog"/>
  <int value="1" label="Gallery permission added from permission dialog"/>
  <int value="2" label="Gallery permission removed from permission dialog"/>
  <int value="3" label="GetMediaFileSystems API invocations"/>
  <int value="4" label="Profiles With API Usage (corrected in M35)"/>
  <int value="5" label="Dialog shown"/>
  <int value="6" label="Dialog permissions saved"/>
  <int value="7" label="Gallery added from WebUI"/>
  <int value="8" label="Gallery removed from WebUI"/>
  <int value="9" label="Preferences initialized"/>
  <int value="10" label="Preferences initialization failed"/>
  <int value="11"
      label="GetAllMediaFileSystemMetadata API invocations (obsolete)"/>
  <int value="12" label="GetMetadata API invocations"/>
  <int value="13" label="AddUserSelectedFolder API invocations"/>
  <int value="14" label="StartMediaScan API invocations (obsolete)"/>
  <int value="15" label="CancelMediaScan API invocations (obsolete)"/>
  <int value="16" label="AddScanResults API invocations (obsolete)"/>
  <int value="17" label="A media scan completed (obsolete)"/>
  <int value="18" label="AddScanResults dialog cancelled (obsolete)"/>
  <int value="19" label="AddScanResults dialog accepted (obsolete)"/>
  <int value="20"
      label="Gallery removed from AddScanResults dialog (obsolete)"/>
  <int value="21" label="Gallery removed from permission dialog"/>
  <int value="22"
      label="DropPermissionForMediaFileSystem API invocations (obsolete)"/>
  <int value="23" label="GetAllGalleryWatch API invocations (obsolete)"/>
  <int value="24" label="RemoveAllGalleryWatch API invocations (obsolete)"/>
  <int value="25" label="iTunes file system used this session"/>
  <int value="26" label="Picasa file system used this session"/>
  <int value="27" label="iPhoto file system used this session (obsolete)"/>
</enum>

<enum name="MediaKeyError" type="int">
  <int value="1" label="kUnknownError"/>
  <int value="2" label="kClientError"/>
  <int value="4" label="kOutputError"/>
</enum>

<enum name="MediaKeyException" type="int">
  <int value="0" label="kUnknownResultId"/>
  <int value="1" label="kSuccess"/>
  <int value="2" label="kKeySystemNotSupported"/>
  <int value="3" label="kInvalidPlayerState"/>
</enum>

<enum name="MediaKeySystemSupportStatus" type="int">
  <int value="0" label="Queried"/>
  <int value="1" label="Supported"/>
  <int value="2" label="Queried with type"/>
  <int value="3" label="Supported with type"/>
</enum>

<enum name="MediaLoadType" type="int">
  <int value="0" label="URL"/>
  <int value="1" label="MediaSource"/>
  <int value="2" label="MediaStream"/>
</enum>

<enum name="MediaNotificationClickSource" type="int">
  <int value="0" label="Media"/>
  <int value="1" label="Presentation"/>
  <int value="2" label="MediaFling"/>
</enum>

<enum name="MediaOutputProtectionStatus" type="int">
  <int value="0" label="Queried"/>
  <int value="1" label="No external link"/>
  <int value="2" label="All external links protected"/>
</enum>

<enum name="MediaPlayerExitStatus" type="int">
  <int value="0" label="No errors"/>
  <int value="1" label="Has errors"/>
</enum>

<enum name="MediaRouteProviderVersion" type="int">
  <int value="0" label="Unknown"/>
  <int value="1" label="SameVersionAsChrome"/>
  <int value="2" label="OneVersionBehindChrome"/>
  <int value="3" label="MultipleVersionsBehindChrome"/>
</enum>

<enum name="MediaRouteProviderWakeReason" type="int">
  <int value="0" label="CreateRoute"/>
  <int value="1" label="JoinRoute"/>
  <int value="2" label="TerminateRoute"/>
  <int value="3" label="SendSessionMessage"/>
  <int value="4" label="SendSessionBinaryMessage"/>
  <int value="5" label="DetachRoute"/>
  <int value="6" label="StartObservingMediaSinks"/>
  <int value="7" label="StopObservingMediaSinks"/>
  <int value="8" label="StartObservingMediaRoutes"/>
  <int value="9" label="StopObservingMediaRoutes"/>
  <int value="10" label="ListenForRouteMessages"/>
  <int value="11" label="StopListeningForRouteMessages"/>
  <int value="12" label="ConnectionError"/>
  <int value="13" label="RegisterMediaRouteProvider"/>
  <int value="14" label="ConnectRouteByRouteId"/>
  <int value="15" label="EnableMdnsDiscovery"/>
  <int value="16" label="UpdateMediaSinks"/>
  <int value="17" label="SearchSinks"/>
</enum>

<enum name="MediaRouteProviderWakeup" type="int">
  <int value="0" label="Success"/>
  <int value="1" label="ErrorUnknown"/>
  <int value="2" label="ErrorTooManyRetries"/>
</enum>

<enum name="MediaRouterCreateRouteOutcome" type="int">
  <int value="0" label="Success"/>
  <int value="1" label="Failure No Route"/>
  <int value="2" label="Failure Invalid Sink"/>
</enum>

<enum name="MediaRouterDialogOpenOrigin" type="int">
  <int value="0" label="Toolbar"/>
  <int value="1" label="Overflow Menu"/>
  <int value="2" label="Contextual Menu"/>
  <int value="3" label="Page"/>
</enum>

<enum name="MediaRouterInitialViews" type="int">
  <int value="0" label="Route Details"/>
  <int value="1" label="Sink List"/>
</enum>

<enum name="MediaRouterSinkPositionLabel" type="int">
  <int value="100" label="100+"/>
</enum>

<enum name="MediaRouterSourceTypes" type="int">
  <int value="1" label="App"/>
  <int value="2" label="Tab"/>
  <int value="4" label="Desktop"/>
</enum>

<enum name="MediaRouterUserAction" type="int">
  <int value="0" label="Change Mode"/>
  <int value="1" label="Start Local"/>
  <int value="2" label="Stop Local"/>
  <int value="3" label="Close"/>
  <int value="4" label="Status Remote"/>
</enum>

<enum name="MediaRouteType" type="int">
  <int value="0" label="Local"/>
  <int value="1" label="Remote"/>
</enum>

<enum name="MediaSessionActionSource" type="int">
  <int value="0" label="Media Notification"/>
  <int value="1" label="MediaSession (Android)"/>
  <int value="2" label="Headset Unplugged"/>
</enum>

<enum name="MediaSessionSuspendedSource" type="int">
  <int value="0" label="System Transient"/>
  <int value="1" label="System Permanent"/>
  <int value="2" label="UI"/>
  <int value="3" label="CONTENT"/>
  <int value="4" label="System Transient Duck"/>
</enum>

<enum name="MediaStreamRequestResult" type="int">
  <int value="0" label="Ok"/>
  <int value="1" label="Permission Denied"/>
  <int value="2" label="Permission Dismissed"/>
  <int value="3" label="Invalid State"/>
  <int value="4" label="No Hardware"/>
  <int value="5" label="Invalid Security Origin"/>
  <int value="6" label="Tab Capture Failure"/>
  <int value="7" label="Screen Capture Failure"/>
  <int value="8" label="Capture Failure"/>
  <int value="9" label="Constraint Not Satisfied"/>
  <int value="10" label="Track Start Failure"/>
  <int value="11" label="Not Supported"/>
  <int value="12" label="Failed due to shutdown"/>
</enum>

<enum name="MediaStreamRequestState" type="int">
  <int value="0" label="Explicitly Cancelled"/>
  <int value="1" label="Stream Not Generated"/>
  <int value="2" label="Pending Media Tracks"/>
</enum>

<enum name="MediaTypePredictionResult" type="int">
  <int value="0" label="All correct"/>
  <int value="1" label="All incorrect"/>
  <int value="2" label="Path-based was better"/>
  <int value="3" label="URL-based was better"/>
</enum>

<enum name="MediaUrlType" type="int">
  <int value="0" label="Non Http Live Stream Type"/>
  <int value="1" label="Http Live Stream Type"/>
</enum>

<enum name="MemoryPressureLevel" type="int">
  <int value="0" label="No memory pressure"/>
  <int value="1" label="Moderate memory pressure"/>
  <int value="2" label="Critical memory pressure"/>
</enum>

<enum name="MemoryPressureLevelChanges" type="int">
  <int value="0" label="No pressure to moderate pressure"/>
  <int value="1" label="No pressure to critical pressure"/>
  <int value="2" label="Moderate pressure to critical pressure"/>
  <int value="3" label="Critical pressure to moderate pressure"/>
  <int value="4" label="Critical pressure to no pressure"/>
  <int value="5" label="Moderate pressure to no pressure"/>
</enum>

<enum name="MetadataReadResult" type="int">
  <int value="0" label="Success"/>
  <int value="1" label="Open failure"/>
  <int value="2" label="Not found"/>
  <int value="3" label="Get info failure"/>
  <int value="4" label="File too big"/>
  <int value="5" label="Read failure"/>
  <int value="6" label="Parse failure"/>
  <int value="7" label="Malformed data"/>
</enum>

<enum name="MetadataWriteResult" type="int">
  <int value="0" label="Success"/>
  <int value="1" label="Serialization failure"/>
  <int value="2" label="Write failure"/>
</enum>

<enum name="MetaTagTypeEnum" type="int">
  <int value="0" label="No viewport tag"/>
  <int value="1" label="Viewport meta with device width"/>
  <int value="2" label="Viewport meta with constant width"/>
  <int value="3" label="Viewport meta other"/>
  <int value="4" label="HandheldFriendly meta"/>
  <int value="5" label="MobileOptimized meta"/>
  <int value="6" label="XHTML-MP document type"/>
</enum>

<enum name="MetricsReportingChange" type="int">
  <int value="0" label="Error">
    Error occurred while updating MetricsReporting
  </int>
  <int value="1" label="Disabled successfully"/>
  <int value="2" label="Enabled successfully"/>
</enum>

<enum name="MicrophoneMuteResult" type="int">
  <int value="0" label="Muted"/>
  <int value="1" label="Not muted"/>
</enum>

<enum name="MidiResult" type="int">
  <int value="0" label="Not initialized"/>
  <int value="1" label="Successfully initialized"/>
  <int value="2" label="Not supported"/>
  <int value="3" label="Generic initialization error"/>
</enum>

<enum name="MidiUsage" type="int">
  <int value="0" label="Instantiated"/>
  <int value="1" label="Instantiated on unsupported platforms"/>
  <int value="2" label="Session is started"/>
  <int value="3" label="Session is ended"/>
  <int value="4" label="Initialized"/>
  <int value="5" label="Input port is added"/>
  <int value="6" label="Output port is added"/>
</enum>

<enum name="MigrationNssToPemNetworkTypes" type="int">
  <int value="0" label="EAP"/>
  <int value="1" label="OpenVPN"/>
  <int value="2" label="IPsec"/>
</enum>

<enum name="MissingStartType" type="int">
  <int value="0" label="Nothing missing"/>
  <int value="1" label="Start missing"/>
  <int value="2" label="Commit missing"/>
  <int value="3" label="Start+Commit missing"/>
  <int value="4" label="NavStart missing"/>
  <int value="5" label="NavStart+Start missing"/>
  <int value="6" label="NavStart+Commit missing"/>
  <int value="7" label="NavStart+Start+Commit missing"/>
</enum>

<enum name="MistSwitchResult" type="int">
  <int value="0" label="Success"/>
  <int value="1" label="Failure"/>
</enum>

<enum name="MobileDownloadInterceptFailureReason" type="int">
  <int value="0" label="No failure"/>
  <int value="1" label="Empty url"/>
  <int value="2" label="Non http or https"/>
  <int value="3" label="Non GET method"/>
  <int value="4" label="No request headers"/>
  <int value="5" label="Use http auth"/>
  <int value="6" label="Use channel bound cookies"/>
</enum>

<enum name="MobileDownloadResumption" type="int">
  <int value="0" label="Resumption button shown after manual pause"/>
  <int value="1" label="Resumption button shown after browser is killed"/>
  <int value="2" label="Resumption button clicked"/>
  <int value="3" label="Resumption failed"/>
  <int value="4" label="Resumption auto started"/>
</enum>

<enum name="MobileFreSignInChoice" type="int">
  <summary>
    These values are defined inside the MobileFreSignInChoice enum
    chrome/browser/android/metrics/uma_bridge.cc and reference possible ways of
    completing the sign-in part of the First Run Experience.
  </summary>
  <int value="0" label="Settings default account"/>
  <int value="1" label="Settings another account"/>
  <int value="2" label="Accept default account"/>
  <int value="3" label="Accept another account"/>
  <int value="4" label="No thanks"/>
</enum>

<enum name="MobileHungRendererInfoBarEvent" type="int">
  <int value="0" label="Clicked the 'Wait' button"/>
  <int value="1" label="Clicked the 'Kill' button"/>
  <int value="2" label="Clicked the 'X' (close) button)"/>
  <int value="3" label="Infobar dismissed after renderer became responsive"/>
  <int value="4" label="Infobar dismissed after tab closed"/>
</enum>

<enum name="MobileSessionShutdownType" type="int">
  <int value="0" label="Shutdown in background"/>
  <int value="1" label="Shutdown in foreground; no log; no memory warning"/>
  <int value="2" label="Shutdown in foreground; with log; no memory warning"/>
  <int value="3" label="Shutdown in foreground; no log; with memory warning"/>
  <int value="4" label="Shutdown in foreground; with log; with memory warning"/>
  <int value="5" label="First launch after upgrade"/>
</enum>

<enum name="MobileStartingAction" type="int">
  <int value="0" label="No activity"/>
  <int value="1" label="Open new tab"/>
  <int value="2" label="Focus omnibox"/>
  <int value="3" label="Open bookmarks"/>
  <int value="4" label="Open recents"/>
  <int value="5" label="Open history"/>
  <int value="6" label="Open tab switcher"/>
</enum>

<enum name="ModuleIndex" type="int">
  <int value="0" label="chrome.dll"/>
  <int value="1" label="chrome_elf.dll"/>
  <int value="2" label="ntdll.dll"/>
</enum>

<enum name="MojoMachPortRelayBrokerError" type="int">
  <int value="0" label="SUCCESS">
    The Mach port was successfully sent or received.
  </int>
  <int value="1" label="ERROR_TASK_FOR_PID">
    Couldn't get a task port for the process with a given pid.
  </int>
  <int value="2" label="ERROR_MAKE_RECEIVE_PORT">
    Couldn't make a port with receive rights in the destination process.
  </int>
  <int value="3" label="ERROR_SET_ATTRIBUTES">
    Couldn't change the attributes of a Mach port.
  </int>
  <int value="4" label="ERROR_EXTRACT_DEST_RIGHT">
    Couldn't extract a right from the destination.
  </int>
  <int value="5" label="ERROR_SEND_MACH_PORT">
    Couldn't send a Mach port in a call to mach_msg().
  </int>
  <int value="6" label="ERROR_EXTRACT_SOURCE_RIGHT">
    Couldn't extract a right from the source.
  </int>
</enum>

<enum name="MojoMachPortRelayChildError" type="int">
  <int value="0" label="SUCCESS">The Mach port was successfully received.</int>
  <int value="1" label="ERROR_RECEIVE_MACH_MESSAGE">
    An error occurred while trying to receive a Mach port with mach_msg().
  </int>
</enum>

<enum name="MostVisitedTileIndex" type="int">
  <summary>
    Index of a tile on the new tab page. This is only an enum so that the
    dashboard won't produce misleading statistics like averages.
  </summary>
  <int value="0" label="0"/>
  <int value="1" label="1"/>
  <int value="2" label="2"/>
  <int value="3" label="3"/>
  <int value="4" label="4"/>
  <int value="5" label="5"/>
  <int value="6" label="6"/>
  <int value="7" label="7"/>
  <int value="8" label="8"/>
  <int value="9" label="9"/>
  <int value="10" label="10"/>
  <int value="11" label="11"/>
</enum>

<enum name="MostVisitedTileType" type="int">
  <summary>The visual type of a most visited tile on the new tab page.</summary>
  <int value="0" label="None">The icon or thumbnail hasn't loaded yet.</int>
  <int value="1" label="IconReal">
    The item displays a site's actual favicon or touch icon.
  </int>
  <int value="2" label="IconColor">
    The item displays a color derived from the site's favicon or touch icon.
  </int>
  <int value="3" label="IconDefault">
    The item displays a default gray box in place of an icon.
  </int>
  <int value="4" label="ThumbnailLocal">
    The item displays a locally-captured thumbnail of the site content.
  </int>
  <int value="5" label="ThumbnailServer">
    The item displays a server-provided thumbnail of the site content.
  </int>
  <int value="6" label="ThumbnailDefault">
    The item displays a default graphic in place of a thumbnail.
  </int>
</enum>

<enum name="MouseEventFollowedByClick" type="int">
  <int value="0" label="Missed event before click"/>
  <int value="1" label="Caught event before click"/>
</enum>

<enum name="MSECodec" type="int">
  <int value="0" label="(Unknown)"/>
  <int value="1" label="VP8"/>
  <int value="2" label="VP9"/>
  <int value="3" label="Vorbis"/>
  <int value="4" label="H.264"/>
  <int value="5" label="MPEG2 AAC"/>
  <int value="6" label="MPEG4 AAC"/>
  <int value="7" label="EAC3"/>
  <int value="8" label="MP3"/>
  <int value="9" label="OPUS"/>
  <int value="10" label="HEVC"/>
  <int value="11" label="AC3"/>
</enum>

<enum name="MultiAccountUpdateBubbleUserAction" type="int">
  <int value="0" label="DEFAULT_ACCOUNT_MATCHED_BY_PASSWORD_USER_CHANGED"/>
  <int value="1" label="DEFAULT_ACCOUNT_MATCHED_BY_PASSWORD_USER_NOT_CHANGED"/>
  <int value="2"
      label="DEFAULT_ACCOUNT_MATCHED_BY_PASSWORD_USER_REJECTED_UPDATE"/>
  <int value="3" label="DEFAULT_ACCOUNT_PREFERRED_USER_CHANGED"/>
  <int value="4" label="DEFAULT_ACCOUNT_PREFERRED_USER_NOT_CHANGED"/>
  <int value="5" label="DEFAULT_ACCOUNT_PREFERRED_USER_REJECTED_UPDATE"/>
  <int value="6" label="DEFAULT_ACCOUNT_FIRST_USER_CHANGED"/>
  <int value="7" label="DEFAULT_ACCOUNT_FIRST_USER_NOT_CHANGED"/>
  <int value="8" label="DEFAULT_ACCOUNT_FIRST_USER_REJECTED_UPDATE"/>
</enum>

<enum name="MultiProfileSessionMode" type="int">
  <int value="0" label="Single user mode"/>
  <int value="1" label="Side by side mode"/>
  <int value="2" label="Separate desktop mode"/>
</enum>

<enum name="MultiProfileSigninUserAction" type="int">
  <int value="0" label="System tray"/>
  <int value="1" label="Browser frame"/>
</enum>

<enum name="MultiProfileSwitchActiveUserAction" type="int">
  <int value="0" label="System tray"/>
  <int value="1" label="Keyboard accelerator"/>
</enum>

<enum name="MultiProfileTeleportWindowAction" type="int">
  <int value="0" label="Drag and drop"/>
  <int value="1" label="Caption context menu"/>
  <int value="2" label="Return by minimize"/>
  <int value="3" label="Return by launcher"/>
</enum>

<enum name="MultiProfileTeleportWindowType" type="int">
  <int value="0" label="Tabbed browser"/>
  <int value="1" label="Tabbed incognito browser"/>
  <int value="2" label="V1 app"/>
  <int value="3" label="V2 app"/>
  <int value="4" label="Panel"/>
  <int value="5" label="Popup"/>
  <int value="6" label="Unknown"/>
</enum>

<enum name="NaClHelperStatus" type="int">
  <int value="0" label="Helper not initialized"/>
  <int value="1" label="Helper executable missing"/>
  <int value="2" label="Helper bootstrap executable missing"/>
  <int value="3" label="Browser running under Valgrind"/>
  <int value="4" label="Helper failed to launch"/>
  <int value="5" label="Helper failed to ACK"/>
  <int value="6" label="Helper started correctly"/>
</enum>

<enum name="NaClHttpStatusCodeClass" type="int">
  <int value="0" label="0XX"/>
  <int value="1" label="1XX"/>
  <int value="2" label="2XX"/>
  <int value="3" label="3XX"/>
  <int value="4" label="4XX"/>
  <int value="5" label="5XX"/>
  <int value="6" label="No status"/>
</enum>

<enum name="NaClManifestType" type="int">
  <int value="0" label="File"/>
  <int value="1" label="DataURI"/>
</enum>

<enum name="NaClOSArchEnum" type="int">
  <int value="0" label="Linux x86-32"/>
  <int value="1" label="Linux x86-64"/>
  <int value="2" label="Linux ARM"/>
  <int value="3" label="Mac x86-32"/>
  <int value="4" label="Mac x86-64"/>
  <int value="5" label="Mac ARM"/>
  <int value="6" label="Windows x86-32"/>
  <int value="7" label="Windows x86-64"/>
  <int value="8" label="Windows ARM"/>
  <int value="9" label="Linux Mips32"/>
</enum>

<enum name="NaClPluginErrorCode" type="int">
  <int value="0" label="ERROR_LOAD_SUCCESS"/>
  <int value="1" label="ERROR_LOAD_ABORTED"/>
  <int value="2" label="ERROR_UNKNOWN"/>
  <int value="3" label="ERROR_MANIFEST_RESOLVE_URL"/>
  <int value="4" label="ERROR_MANIFEST_LOAD_URL"/>
  <int value="5" label="ERROR_MANIFEST_STAT"/>
  <int value="6" label="ERROR_MANIFEST_TOO_LARGE"/>
  <int value="7" label="ERROR_MANIFEST_OPEN"/>
  <int value="8" label="ERROR_MANIFEST_MEMORY_ALLOC"/>
  <int value="9" label="ERROR_MANIFEST_READ"/>
  <int value="10" label="ERROR_MANIFEST_PARSING"/>
  <int value="11" label="ERROR_MANIFEST_SCHEMA_VALIDATE"/>
  <int value="12" label="ERROR_MANIFEST_GET_NEXE_URL"/>
  <int value="13" label="ERROR_NEXE_LOAD_URL"/>
  <int value="14" label="ERROR_NEXE_ORIGIN_PROTOCOL"/>
  <int value="15" label="ERROR_NEXE_FH_DUP"/>
  <int value="16" label="ERROR_NEXE_STAT"/>
  <int value="17" label="ERROR_ELF_CHECK_IO"/>
  <int value="18" label="ERROR_ELF_CHECK_FAIL"/>
  <int value="19" label="ERROR_SEL_LDR_INIT"/>
  <int value="20" label="ERROR_SEL_LDR_CREATE_LAUNCHER"/>
  <int value="21" label="ERROR_SEL_LDR_FD"/>
  <int value="22" label="ERROR_SEL_LDR_LAUNCH"/>
  <int value="23" label="ERROR_SEL_LDR_COMMUNICATION"/>
  <int value="24" label="ERROR_SEL_LDR_SEND_NEXE"/>
  <int value="25" label="ERROR_SEL_LDR_HANDLE_PASSING"/>
  <int value="26" label="ERROR_SEL_LDR_START_MODULE"/>
  <int value="27" label="ERROR_SEL_LDR_START_STATUS"/>
  <int value="28" label="ERROR_SRPC_CONNECTION_FAIL"/>
  <int value="29" label="ERROR_START_PROXY_CHECK_PPP"/>
  <int value="30" label="ERROR_START_PROXY_ALLOC"/>
  <int value="31" label="ERROR_START_PROXY_MODULE"/>
  <int value="32" label="ERROR_START_PROXY_INSTANCE"/>
  <int value="33" label="ERROR_SEL_LDR_COMMUNICATION_CMD_CHANNEL"/>
  <int value="34" label="ERROR_SEL_LDR_COMMUNICATION_REV_SETUP"/>
  <int value="35" label="ERROR_SEL_LDR_COMMUNICATION_WRAPPER"/>
  <int value="36" label="ERROR_SEL_LDR_COMMUNICATION_REV_SERVICE"/>
  <int value="37" label="ERROR_START_PROXY_CRASH"/>
  <int value="38" label="ERROR_MANIFEST_PROGRAM_MISSING_ARCH"/>
  <int value="39" label="ERROR_PNACL_CACHE_OPEN_INPROGRESS"/>
  <int value="40" label="ERROR_PNACL_CACHE_OPEN_NOACCESS"/>
  <int value="41" label="ERROR_PNACL_CACHE_OPEN_NOQUOTA"/>
  <int value="42" label="ERROR_PNACL_CACHE_OPEN_NOSPACE"/>
  <int value="43" label="ERROR_PNACL_CACHE_OPEN_OTHER"/>
  <int value="44" label="ERROR_PNACL_CACHE_DIRECTORY_CREATE"/>
  <int value="45" label="ERROR_PNACL_CACHE_FILEOPEN_NOACCESS"/>
  <int value="46" label="ERROR_PNACL_CACHE_FILEOPEN_NOQUOTA"/>
  <int value="47" label="ERROR_PNACL_CACHE_FILEOPEN_NOSPACE"/>
  <int value="48" label="ERROR_PNACL_CACHE_FILEOPEN_NOTAFILE"/>
  <int value="49" label="ERROR_PNACL_CACHE_FILEOPEN_OTHER"/>
  <int value="50" label="ERROR_PNACL_CACHE_FETCH_NOACCESS"/>
  <int value="51" label="ERROR_PNACL_CACHE_FETCH_NOTFOUND"/>
  <int value="52" label="ERROR_PNACL_CACHE_FETCH_OTHER"/>
  <int value="53" label="ERROR_PNACL_CACHE_FINALIZE_COPY_NOQUOTA"/>
  <int value="54" label="ERROR_PNACL_CACHE_FINALIZE_COPY_NOSPACE"/>
  <int value="55" label="ERROR_PNACL_CACHE_FINALIZE_COPY_OTHER"/>
  <int value="56" label="ERROR_PNACL_CACHE_FINALIZE_RENAME_NOACCESS"/>
  <int value="57" label="ERROR_PNACL_CACHE_FINALIZE_RENAME_OTHER"/>
  <int value="58" label="ERROR_PNACL_RESOURCE_FETCH"/>
  <int value="59" label="ERROR_PNACL_PEXE_FETCH_ABORTED"/>
  <int value="60" label="ERROR_PNACL_PEXE_FETCH_NOACCESS"/>
  <int value="61" label="ERROR_PNACL_PEXE_FETCH_OTHER"/>
  <int value="62" label="ERROR_PNACL_THREAD_CREATE"/>
  <int value="63" label="ERROR_PNACL_LLC_SETUP"/>
  <int value="64" label="ERROR_PNACL_LD_SETUP"/>
  <int value="65" label="ERROR_PNACL_LLC_INTERNAL"/>
  <int value="66" label="ERROR_PNACL_LD_INTERNAL"/>
  <int value="67" label="ERROR_PNACL_CREATE_TEMP"/>
  <int value="68" label="ERROR_PNACL_NOT_ENABLED"/>
  <int value="69" label="ERROR_MANIFEST_NOACCESS_URL"/>
  <int value="70" label="ERROR_NEXE_NOACCESS_URL"/>
</enum>

<enum name="NaClSelLdrErrorCode" type="int">
  <int value="0" label="LOAD_OK"/>
  <int value="1" label="LOAD_STATUS_UNKNOWN"/>
  <int value="2" label="LOAD_UNSUPPORTED_OS_PLATFORM"/>
  <int value="3" label="LOAD_DEP_UNSUPPORTED"/>
  <int value="4" label="LOAD_INTERNAL"/>
  <int value="5" label="LOAD_DUP_LOAD_MODULE"/>
  <int value="6" label="LOAD_DUP_START_MODULE"/>
  <int value="7" label="LOAD_OPEN_ERROR"/>
  <int value="8" label="LOAD_READ_ERROR"/>
  <int value="9" label="LOAD_TOO_MANY_PROG_HDRS"/>
  <int value="10" label="LOAD_BAD_PHENTSIZE"/>
  <int value="11" label="LOAD_BAD_ELF_MAGIC"/>
  <int value="12" label="LOAD_NOT_32_BIT"/>
  <int value="13" label="LOAD_NOT_64_BIT"/>
  <int value="14" label="LOAD_BAD_ABI"/>
  <int value="15" label="LOAD_NOT_EXEC"/>
  <int value="16" label="LOAD_BAD_MACHINE"/>
  <int value="17" label="LOAD_BAD_ELF_VERS"/>
  <int value="18" label="LOAD_TOO_MANY_SECT"/>
  <int value="19" label="LOAD_BAD_SECT"/>
  <int value="20" label="LOAD_NO_MEMORY"/>
  <int value="21" label="LOAD_SECT_HDR"/>
  <int value="22" label="LOAD_ADDR_SPACE_TOO_SMALL"/>
  <int value="23" label="LOAD_ADDR_SPACE_TOO_BIG"/>
  <int value="24" label="LOAD_DATA_OVERLAPS_STACK_SECTION"/>
  <int value="25" label="LOAD_RODATA_OVERLAPS_DATA"/>
  <int value="26" label="LOAD_DATA_NOT_LAST_SEGMENT"/>
  <int value="27" label="LOAD_NO_DATA_BUT_RODATA_NOT_LAST_SEGMENT"/>
  <int value="28" label="LOAD_TEXT_OVERLAPS_RODATA"/>
  <int value="29" label="LOAD_TEXT_OVERLAPS_DATA"/>
  <int value="30" label="LOAD_BAD_RODATA_ALIGNMENT"/>
  <int value="31" label="LOAD_BAD_DATA_ALIGNMENT"/>
  <int value="32" label="LOAD_UNLOADABLE"/>
  <int value="33" label="LOAD_BAD_ELF_TEXT"/>
  <int value="34" label="LOAD_TEXT_SEG_TOO_BIG"/>
  <int value="35" label="LOAD_DATA_SEG_TOO_BIG"/>
  <int value="36" label="LOAD_MPROTECT_FAIL"/>
  <int value="37" label="LOAD_MADVISE_FAIL"/>
  <int value="38" label="LOAD_TOO_MANY_SYMBOL_STR"/>
  <int value="39" label="LOAD_SYMTAB_ENTRY_TOO_SMALL"/>
  <int value="40" label="LOAD_NO_SYMTAB"/>
  <int value="41" label="LOAD_NO_SYMTAB_STRINGS"/>
  <int value="42" label="LOAD_SYMTAB_ENTRY"/>
  <int value="43" label="LOAD_UNKNOWN_SYMBOL_TYPE"/>
  <int value="44" label="LOAD_SYMTAB_DUP"/>
  <int value="45" label="LOAD_REL_ERROR"/>
  <int value="46" label="LOAD_REL_UNIMPL"/>
  <int value="47" label="LOAD_UNDEF_SYMBOL"/>
  <int value="48" label="LOAD_BAD_SYMBOL_DATA"/>
  <int value="49" label="LOAD_BAD_FILE"/>
  <int value="50" label="LOAD_BAD_ENTRY"/>
  <int value="51" label="LOAD_SEGMENT_OUTSIDE_ADDRSPACE"/>
  <int value="52" label="LOAD_DUP_SEGMENT"/>
  <int value="53" label="LOAD_SEGMENT_BAD_LOC"/>
  <int value="54" label="LOAD_BAD_SEGMENT"/>
  <int value="55" label="LOAD_REQUIRED_SEG_MISSING"/>
  <int value="56" label="LOAD_SEGMENT_BAD_PARAM"/>
  <int value="57" label="LOAD_VALIDATION_FAILED"/>
  <int value="58" label="LOAD_UNIMPLEMENTED"/>
  <int value="59" label="SRT_NO_SEG_SEL"/>
  <int value="60" label="LOAD_BAD_EHSIZE"/>
  <int value="61" label="LOAD_EHDR_OVERFLOW"/>
  <int value="62" label="LOAD_PHDR_OVERFLOW"/>
  <int value="63" label="LOAD_UNSUPPORTED_CPU"/>
  <int value="64" label="LOAD_NO_MEMORY_FOR_DYNAMIC_TEXT"/>
  <int value="65" label="LOAD_NO_MEMORY_FOR_ADDRESS_SPACE"/>
</enum>

<enum name="NaClStartupEnum" type="int">
  <int value="0" label="Default tab opened"/>
  <int value="1" label="New tab opened"/>
  <int value="2" label="NaCl sel_ldr started"/>
</enum>

<enum name="NaClValidationCacheEnum" type="int">
  <int value="0" label="Miss"/>
  <int value="1" label="Hit"/>
</enum>

<enum name="NatTypeCounters" type="int">
  <int value="0" label="Not behind a NAT."/>
  <int value="1" label="Behind a NAT of unknown type."/>
  <int value="2" label="Behind a Symmetric NAT."/>
  <int value="3" label="Behind a Non-Symmetric NAT."/>
</enum>

<enum name="NavigationDirection" type="int">
  <summary>Direction of the overscroll gesture.</summary>
  <int value="0" label="None">Did not scroll</int>
  <int value="1" label="Forward">Scrolled forward</int>
  <int value="2" label="Back">Scrolled back</int>
</enum>

<enum name="NavigationInterceptResult" type="int">
  <int value="0" label="Created external intent"/>
  <int value="1" label="Created external intent with tab clobbering"/>
  <int value="2" label="Created async dialog for confirming external intent"/>
  <int value="3" label="Navigation not intercepted"/>
</enum>

<enum name="NavigationScheme" type="int">
  <int value="0" label="(Unknown)"/>
  <int value="1" label="http"/>
  <int value="2" label="https"/>
  <int value="3" label="file"/>
  <int value="4" label="ftp"/>
  <int value="5" label="data"/>
  <int value="6" label="javascript"/>
  <int value="7" label="about"/>
  <int value="8" label="chrome"/>
  <int value="9" label="blob"/>
</enum>

<enum name="NetCacheState" type="int">
  <int value="0" label="FROM_CACHE"/>
  <int value="1" label="STILL_VALID"/>
  <int value="2" label="NO_LONGER_VALID"/>
  <int value="3" label="NO_ENTRY"/>
</enum>

<enum name="NetConnectivityProtocolStatus" type="int">
  <int value="0" label="SUCCESS"/>
  <int value="1" label="IP_STRING_PARSE_FAILED"/>
  <int value="2" label="SOCKET_CREATE_FAILED"/>
  <int value="3" label="RESOLVE_FAILED"/>
  <int value="4" label="CONNECT_FAILED"/>
  <int value="5" label="WRITE_FAILED"/>
  <int value="6" label="READ_TIMED_OUT"/>
  <int value="7" label="READ_FAILED"/>
  <int value="8" label="ZERO_LENGTH_ERROR"/>
  <int value="9" label="NO_CHECKSUM_ERROR"/>
  <int value="10" label="NO_KEY_ERROR"/>
  <int value="11" label="NO_PAYLOAD_SIZE_ERROR"/>
  <int value="12" label="NO_PAYLOAD_ERROR"/>
  <int value="13" label="INVALID_KEY_ERROR"/>
  <int value="14" label="TOO_SHORT_PAYLOAD"/>
  <int value="15" label="TOO_LONG_PAYLOAD"/>
  <int value="16" label="INVALID_CHECKSUM"/>
  <int value="17" label="PATTERN_CHANGED"/>
  <int value="18" label="INVALID_PACKET_NUMBER"/>
  <int value="19" label="TOO_MANY_PACKETS"/>
  <int value="20" label="STATUS_MAX"/>
</enum>

<enum name="NetConnectivityStatus" type="int">
  <int value="0" label="SUCCESS"/>
  <int value="1" label="IP_STRING_PARSE_FAILED"/>
  <int value="2" label="SOCKET_CREATE_FAILED"/>
  <int value="3" label="RESOLVE_FAILED"/>
  <int value="4" label="CONNECT_FAILED"/>
  <int value="5" label="WRITE_FAILED"/>
  <int value="6" label="READ_TIMED_OUT"/>
  <int value="7" label="READ_FAILED"/>
  <int value="8" label="READ_VERIFY_FAILED"/>
  <int value="9" label="STATUS_MAX"/>
</enum>

<enum name="NetErrorCodes" type="int">
<!-- Generated from net/base/net_error_list.h -->

  <int value="0" label="OK"/>
  <int value="1" label="IO_PENDING"/>
  <int value="2" label="FAILED"/>
  <int value="3" label="ABORTED"/>
  <int value="4" label="INVALID_ARGUMENT"/>
  <int value="5" label="INVALID_HANDLE"/>
  <int value="6" label="FILE_NOT_FOUND"/>
  <int value="7" label="TIMED_OUT"/>
  <int value="8" label="FILE_TOO_BIG"/>
  <int value="9" label="UNEXPECTED"/>
  <int value="10" label="ACCESS_DENIED"/>
  <int value="11" label="NOT_IMPLEMENTED"/>
  <int value="12" label="INSUFFICIENT_RESOURCES"/>
  <int value="13" label="OUT_OF_MEMORY"/>
  <int value="14" label="UPLOAD_FILE_CHANGED"/>
  <int value="15" label="SOCKET_NOT_CONNECTED"/>
  <int value="16" label="FILE_EXISTS"/>
  <int value="17" label="FILE_PATH_TOO_LONG"/>
  <int value="18" label="FILE_NO_SPACE"/>
  <int value="19" label="FILE_VIRUS_INFECTED"/>
  <int value="20" label="BLOCKED_BY_CLIENT"/>
  <int value="21" label="NETWORK_CHANGED"/>
  <int value="22" label="BLOCKED_BY_ADMINISTRATOR"/>
  <int value="23" label="SOCKET_IS_CONNECTED"/>
  <int value="24" label="BLOCKED_ENROLLMENT_CHECK_PENDING"/>
  <int value="25" label="UPLOAD_STREAM_REWIND_NOT_SUPPORTED"/>
  <int value="26" label="CONTEXT_SHUT_DOWN"/>
  <int value="27" label="BLOCKED_BY_RESPONSE"/>
  <int value="100" label="CONNECTION_CLOSED"/>
  <int value="101" label="CONNECTION_RESET"/>
  <int value="102" label="CONNECTION_REFUSED"/>
  <int value="103" label="CONNECTION_ABORTED"/>
  <int value="104" label="CONNECTION_FAILED"/>
  <int value="105" label="NAME_NOT_RESOLVED"/>
  <int value="106" label="INTERNET_DISCONNECTED"/>
  <int value="107" label="SSL_PROTOCOL_ERROR"/>
  <int value="108" label="ADDRESS_INVALID"/>
  <int value="109" label="ADDRESS_UNREACHABLE"/>
  <int value="110" label="SSL_CLIENT_AUTH_CERT_NEEDED"/>
  <int value="111" label="TUNNEL_CONNECTION_FAILED"/>
  <int value="112" label="NO_SSL_VERSIONS_ENABLED"/>
  <int value="113" label="SSL_VERSION_OR_CIPHER_MISMATCH"/>
  <int value="114" label="SSL_RENEGOTIATION_REQUESTED"/>
  <int value="115" label="PROXY_AUTH_UNSUPPORTED"/>
  <int value="116" label="CERT_ERROR_IN_SSL_RENEGOTIATION"/>
  <int value="117" label="BAD_SSL_CLIENT_AUTH_CERT"/>
  <int value="118" label="CONNECTION_TIMED_OUT"/>
  <int value="119" label="HOST_RESOLVER_QUEUE_TOO_LARGE"/>
  <int value="120" label="SOCKS_CONNECTION_FAILED"/>
  <int value="121" label="SOCKS_CONNECTION_HOST_UNREACHABLE"/>
  <int value="122" label="NPN_NEGOTIATION_FAILED"/>
  <int value="123" label="SSL_NO_RENEGOTIATION"/>
  <int value="124" label="WINSOCK_UNEXPECTED_WRITTEN_BYTES"/>
  <int value="125" label="SSL_DECOMPRESSION_FAILURE_ALERT"/>
  <int value="126" label="SSL_BAD_RECORD_MAC_ALERT"/>
  <int value="127" label="PROXY_AUTH_REQUESTED"/>
  <int value="128" label="SSL_UNSAFE_NEGOTIATION"/>
  <int value="129" label="SSL_WEAK_SERVER_EPHEMERAL_DH_KEY"/>
  <int value="130" label="PROXY_CONNECTION_FAILED"/>
  <int value="131" label="MANDATORY_PROXY_CONFIGURATION_FAILED"/>
  <int value="132" label="ESET_ANTI_VIRUS_SSL_INTERCEPTION"/>
  <int value="133" label="PRECONNECT_MAX_SOCKET_LIMIT"/>
  <int value="134" label="SSL_CLIENT_AUTH_PRIVATE_KEY_ACCESS_DENIED"/>
  <int value="135" label="SSL_CLIENT_AUTH_CERT_NO_PRIVATE_KEY"/>
  <int value="136" label="PROXY_CERTIFICATE_INVALID"/>
  <int value="137" label="NAME_RESOLUTION_FAILED"/>
  <int value="138" label="NETWORK_ACCESS_DENIED"/>
  <int value="139" label="TEMPORARILY_THROTTLED"/>
  <int value="140" label="HTTPS_PROXY_TUNNEL_RESPONSE"/>
  <int value="141" label="SSL_CLIENT_AUTH_SIGNATURE_FAILED"/>
  <int value="142" label="MSG_TOO_BIG"/>
  <int value="143" label="SPDY_SESSION_ALREADY_EXISTS"/>
  <int value="144" label="LIMIT_VIOLATION"/>
  <int value="145" label="WS_PROTOCOL_ERROR"/>
  <int value="146" label="PROTOCOL_SWITCHED"/>
  <int value="147" label="ADDRESS_IN_USE"/>
  <int value="148" label="SSL_HANDSHAKE_NOT_COMPLETED"/>
  <int value="149" label="SSL_BAD_PEER_PUBLIC_KEY"/>
  <int value="150" label="SSL_PINNED_KEY_NOT_IN_CERT_CHAIN"/>
  <int value="151" label="CLIENT_AUTH_CERT_TYPE_UNSUPPORTED"/>
  <int value="152" label="ORIGIN_BOUND_CERT_GENERATION_TYPE_MISMATCH"/>
  <int value="153" label="SSL_DECRYPT_ERROR_ALERT"/>
  <int value="154" label="WS_THROTTLE_QUEUE_TOO_LARGE"/>
  <int value="155" label="TOO_MANY_SOCKET_STREAMS"/>
  <int value="156" label="SSL_SERVER_CERT_CHANGED"/>
  <int value="157" label="SSL_INAPPROPRIATE_FALLBACK"/>
  <int value="158" label="CT_NO_SCTS_VERIFIED_OK"/>
  <int value="159" label="SSL_UNRECOGNIZED_NAME_ALERT"/>
  <int value="160" label="SOCKET_SET_RECEIVE_BUFFER_SIZE_ERROR"/>
  <int value="161" label="SOCKET_SET_SEND_BUFFER_SIZE_ERROR"/>
  <int value="162" label="SOCKET_RECEIVE_BUFFER_SIZE_UNCHANGEABLE"/>
  <int value="163" label="SOCKET_SEND_BUFFER_SIZE_UNCHANGEABLE"/>
  <int value="164" label="SSL_CLIENT_AUTH_CERT_BAD_FORMAT"/>
  <int value="165" label="SSL_FALLBACK_BEYOND_MINIMUM_VERSION"/>
  <int value="166" label="ICANN_NAME_COLLISION"/>
  <int value="167" label="SSL_SERVER_CERT_BAD_FORMAT"/>
  <int value="168" label="CT_STH_PARSING_FAILED"/>
  <int value="169" label="CT_STH_INCOMPLETE"/>
  <int value="170" label="UNABLE_TO_REUSE_CONNECTION_FOR_PROXY_AUTH"/>
  <int value="171" label="CT_CONSISTENCY_PROOF_PARSING_FAILED"/>
  <int value="200" label="CERT_COMMON_NAME_INVALID"/>
  <int value="201" label="CERT_DATE_INVALID"/>
  <int value="202" label="CERT_AUTHORITY_INVALID"/>
  <int value="203" label="CERT_CONTAINS_ERRORS"/>
  <int value="204" label="CERT_NO_REVOCATION_MECHANISM"/>
  <int value="205" label="CERT_UNABLE_TO_CHECK_REVOCATION"/>
  <int value="206" label="CERT_REVOKED"/>
  <int value="207" label="CERT_INVALID"/>
  <int value="208" label="CERT_WEAK_SIGNATURE_ALGORITHM"/>
  <int value="209" label="CERT_NOT_IN_DNS"/>
  <int value="210" label="CERT_NON_UNIQUE_NAME"/>
  <int value="211" label="CERT_WEAK_KEY"/>
  <int value="212" label="CERT_NAME_CONSTRAINT_VIOLATION"/>
  <int value="213" label="CERT_VALIDITY_TOO_LONG"/>
  <int value="214" label="CERT_END"/>
  <int value="300" label="INVALID_URL"/>
  <int value="301" label="DISALLOWED_URL_SCHEME"/>
  <int value="302" label="UNKNOWN_URL_SCHEME"/>
  <int value="310" label="TOO_MANY_REDIRECTS"/>
  <int value="311" label="UNSAFE_REDIRECT"/>
  <int value="312" label="UNSAFE_PORT"/>
  <int value="320" label="INVALID_RESPONSE"/>
  <int value="321" label="INVALID_CHUNKED_ENCODING"/>
  <int value="322" label="METHOD_NOT_SUPPORTED"/>
  <int value="323" label="UNEXPECTED_PROXY_AUTH"/>
  <int value="324" label="EMPTY_RESPONSE"/>
  <int value="325" label="RESPONSE_HEADERS_TOO_BIG"/>
  <int value="326" label="PAC_STATUS_NOT_OK"/>
  <int value="327" label="PAC_SCRIPT_FAILED"/>
  <int value="328" label="REQUEST_RANGE_NOT_SATISFIABLE"/>
  <int value="329" label="MALFORMED_IDENTITY"/>
  <int value="330" label="CONTENT_DECODING_FAILED"/>
  <int value="331" label="NETWORK_IO_SUSPENDED"/>
  <int value="332" label="SYN_REPLY_NOT_RECEIVED"/>
  <int value="333" label="ENCODING_CONVERSION_FAILED"/>
  <int value="334" label="UNRECOGNIZED_FTP_DIRECTORY_LISTING_FORMAT"/>
  <int value="335" label="INVALID_SPDY_STREAM"/>
  <int value="336" label="NO_SUPPORTED_PROXIES"/>
  <int value="337" label="SPDY_PROTOCOL_ERROR"/>
  <int value="338" label="INVALID_AUTH_CREDENTIALS"/>
  <int value="339" label="UNSUPPORTED_AUTH_SCHEME"/>
  <int value="340" label="ENCODING_DETECTION_FAILED"/>
  <int value="341" label="MISSING_AUTH_CREDENTIALS"/>
  <int value="342" label="UNEXPECTED_SECURITY_LIBRARY_STATUS"/>
  <int value="343" label="MISCONFIGURED_AUTH_ENVIRONMENT"/>
  <int value="344" label="UNDOCUMENTED_SECURITY_LIBRARY_STATUS"/>
  <int value="345" label="RESPONSE_BODY_TOO_BIG_TO_DRAIN"/>
  <int value="346" label="RESPONSE_HEADERS_MULTIPLE_CONTENT_LENGTH"/>
  <int value="347" label="INCOMPLETE_SPDY_HEADERS"/>
  <int value="348" label="PAC_NOT_IN_DHCP"/>
  <int value="349" label="RESPONSE_HEADERS_MULTIPLE_CONTENT_DISPOSITION"/>
  <int value="350" label="RESPONSE_HEADERS_MULTIPLE_LOCATION"/>
  <int value="351" label="SPDY_SERVER_REFUSED_STREAM"/>
  <int value="352" label="SPDY_PING_FAILED"/>
  <int value="353" label="PIPELINE_EVICTION"/>
  <int value="354" label="CONTENT_LENGTH_MISMATCH"/>
  <int value="355" label="INCOMPLETE_CHUNKED_ENCODING"/>
  <int value="356" label="QUIC_PROTOCOL_ERROR"/>
  <int value="357" label="RESPONSE_HEADERS_TRUNCATED"/>
  <int value="358" label="QUIC_HANDSHAKE_FAILED"/>
  <int value="359" label="REQUEST_FOR_SECURE_RESOURCE_OVER_INSECURE_QUIC"/>
  <int value="360" label="SPDY_INADEQUATE_TRANSPORT_SECURITY"/>
  <int value="361" label="SPDY_FLOW_CONTROL_ERROR"/>
  <int value="362" label="SPDY_FRAME_SIZE_ERROR"/>
  <int value="363" label="SPDY_COMPRESSION_ERROR"/>
  <int value="364" label="PROXY_AUTH_REQUESTED_WITH_NO_CONNECTION"/>
  <int value="365" label="HTTP_1_1_REQUIRED"/>
  <int value="366" label="PROXY_HTTP_1_1_REQUIRED"/>
  <int value="367" label="PAC_SCRIPT_TERMINATED"/>
  <int value="368" label="ALTERNATIVE_CERT_NOT_VALID_FOR_ORIGIN"/>
  <int value="369" label="TEMPORARY_BACKOFF"/>
  <int value="400" label="CACHE_MISS"/>
  <int value="401" label="CACHE_READ_FAILURE"/>
  <int value="402" label="CACHE_WRITE_FAILURE"/>
  <int value="403" label="CACHE_OPERATION_NOT_SUPPORTED"/>
  <int value="404" label="CACHE_OPEN_FAILURE"/>
  <int value="405" label="CACHE_CREATE_FAILURE"/>
  <int value="406" label="CACHE_RACE"/>
  <int value="407" label="CACHE_CHECKSUM_READ_FAILURE"/>
  <int value="408" label="CACHE_CHECKSUM_MISMATCH"/>
  <int value="409" label="CACHE_LOCK_TIMEOUT"/>
  <int value="410" label="CACHE_AUTH_FAILURE_AFTER_READ"/>
  <int value="501" label="INSECURE_RESPONSE"/>
  <int value="502" label="NO_PRIVATE_KEY_FOR_CERT"/>
  <int value="503" label="ADD_USER_CERT_FAILED"/>
  <int value="601" label="FTP_FAILED"/>
  <int value="602" label="FTP_SERVICE_UNAVAILABLE"/>
  <int value="603" label="FTP_TRANSFER_ABORTED"/>
  <int value="604" label="FTP_FILE_BUSY"/>
  <int value="605" label="FTP_SYNTAX_ERROR"/>
  <int value="606" label="FTP_COMMAND_NOT_SUPPORTED"/>
  <int value="607" label="FTP_BAD_COMMAND_SEQUENCE"/>
  <int value="701" label="PKCS12_IMPORT_BAD_PASSWORD"/>
  <int value="702" label="PKCS12_IMPORT_FAILED"/>
  <int value="703" label="IMPORT_CA_CERT_NOT_CA"/>
  <int value="704" label="IMPORT_CERT_ALREADY_EXISTS"/>
  <int value="705" label="IMPORT_CA_CERT_FAILED"/>
  <int value="706" label="IMPORT_SERVER_CERT_FAILED"/>
  <int value="707" label="PKCS12_IMPORT_INVALID_MAC"/>
  <int value="708" label="PKCS12_IMPORT_INVALID_FILE"/>
  <int value="709" label="PKCS12_IMPORT_UNSUPPORTED"/>
  <int value="710" label="KEY_GENERATION_FAILED"/>
  <int value="711" label="ORIGIN_BOUND_CERT_GENERATION_FAILED"/>
  <int value="712" label="PRIVATE_KEY_EXPORT_FAILED"/>
  <int value="713" label="SELF_SIGNED_CERT_GENERATION_FAILED"/>
  <int value="714" label="CERT_DATABASE_CHANGED"/>
  <int value="715" label="CHANNEL_ID_IMPORT_FAILED"/>
  <int value="800" label="DNS_MALFORMED_RESPONSE"/>
  <int value="801" label="DNS_SERVER_REQUIRES_TCP"/>
  <int value="802" label="DNS_SERVER_FAILED"/>
  <int value="803" label="DNS_TIMED_OUT"/>
  <int value="804" label="DNS_CACHE_MISS"/>
  <int value="805" label="DNS_SEARCH_EMPTY"/>
  <int value="806" label="DNS_SORT_ERROR"/>
</enum>

<enum name="NetErrorNavigationCorrectionTypes" type="int">
  <int value="0" label="Google cached page"/>
  <int value="1" label="URL correction"/>
  <int value="2" label="Alt URL - domain"/>
  <int value="3" label="Alt URL - host"/>
  <int value="4" label="Alt URL - sitemap"/>
  <int value="5" label="Alt URL - path parent folder"/>
  <int value="6" label="Alt URL - content overlap"/>
  <int value="7" label="Emphasized URL correction"/>
  <int value="100" label="Web search query"/>
</enum>

<enum name="NetErrorPageEvents" type="int">
  <int value="0" label="Error Page Shown"/>
  <int value="1" label="Reload Button Shown"/>
  <int value="2" label="Reload Button Clicked"/>
  <int value="3" label="Reload Button Click Load Error"/>
  <int value="4" label="Show Saved Copy Button Shown"/>
  <int value="5" label="Show Saved Copy Button Clicked"/>
  <int value="6" label="Show Saved Copy Button Click Load Error"/>
  <int value="7" label="More Button Clicked"/>
  <int value="8" label="Browser Initiated Reload"/>
  <int value="9" label="Both Buttons Shown"/>
  <int value="10" label="Both Buttons Shown, Reload Clicked"/>
  <int value="11" label="Both Buttons Shown, Show Saved Copy Clicked"/>
  <int value="12" label="Easter egg activated"/>
  <int value="13" label="Show Cached Copy button shown"/>
  <int value="14" label="Show Cached Copy button clicked"/>
  <int value="15" label="Show Cached Page button shown"/>
  <int value="16" label="Show Cached Page button clicked"/>
  <int value="17" label="Diagnose button clicked"/>
  <int value="18" label="Show Offline Pages Button Shown"/>
  <int value="19" label="Show Offline Pages Button Clicked"/>
  <int value="20" label="Show Offline Copy Button Shown"/>
  <int value="21" label="Show Offline Copy Button Clicked"/>
</enum>

<enum name="NetFilterType" type="int">
  <summary>
    Specific content decoding filter.  See   net::Filter::FilterType for more
    details
  </summary>
  <int value="0" label="Brotli"/>
  <int value="1" label="Deflate"/>
  <int value="2" label="GZIP"/>
  <int value="3" label="GzipHelpingSdch"/>
  <int value="4" label="SDCH"/>
  <int value="5" label="SDCHPossible"/>
  <int value="6" label="Unsupported"/>
</enum>

<enum name="NetInternalsUiFeature" type="int">
  <int value="0" label="NetInternals"/>
  <int value="1" label="Connection tester"/>
</enum>

<enum name="NetPreconnectUtilization" type="int">
  <int value="0" label="non-speculative, never connected"/>
  <int value="1" label="non-speculative, never used"/>
  <int value="2" label="non-speculative and used"/>
  <int value="3" label="omnibox never connected"/>
  <int value="4" label="omnibox never used"/>
  <int value="5" label="omnibox and used"/>
  <int value="6" label="subresource never connected"/>
  <int value="7" label="subresource never used"/>
  <int value="8" label="subresource and used"/>
</enum>

<enum name="Network3GGobiError" type="int">
  <summary>
    These error indexes are produced by QCErrorToMetricIndex() in
    gobi-cromo-plugin.
  </summary>
  <int value="0" label="NONE"/>
  <int value="1" label="QMI_HARDWARE_RESTRICTED"/>
</enum>

<enum name="NetworkAuthModeType" type="int">
  <int value="0" label="UNKNOWN"/>
  <int value="1" label="EAP-AKA"/>
  <int value="2" label="EAP-FAST"/>
  <int value="3" label="EAP-GPSK"/>
  <int value="4" label="EAP-GTC"/>
  <int value="5" label="EAP-IKEV2"/>
  <int value="6" label="EAP-LEAP"/>
  <int value="7" label="EAP-MD5"/>
  <int value="8" label="EAP-MSCHAPV2"/>
  <int value="9" label="EAP-OTP"/>
  <int value="10" label="EAP-PAX"/>
  <int value="11" label="EAP-PEAP"/>
  <int value="12" label="EAP-PSK"/>
  <int value="13" label="EAP-SAKE"/>
  <int value="14" label="EAP-SIM"/>
  <int value="15" label="EAP-TLS"/>
  <int value="16" label="EAP-TNC"/>
  <int value="17" label="EAP-TTLS"/>
</enum>

<enum name="NetworkCellular3GPPRegistrationDelayedDrop" type="int">
  <int value="0" label="Delayed drop posted">
    A signal loss in the cellular service was detected and a delayed connection
    drop request was posted. This request causes the cellular connection to be
    dropped if it is not cancelled within the delay provided.
  </int>
  <int value="1" label="Delayed drop canceled">
    Signal strength returned to normal soon after a delayed drop request was
    made, causing the request to be canceled. This indicates a flaky network.
  </int>
</enum>

<enum name="NetworkCellularOutOfCreditsReason" type="int">
  <int value="0" label="Connect-Disconnect Loop"/>
  <int value="1" label="TX-Queue Congestion"/>
  <int value="2" label="Elongated Time Wait"/>
</enum>

<enum name="NetworkCellularTechnology" type="int">
  <int value="0" label="1XRTT"/>
  <int value="1" label="EDGE"/>
  <int value="2" label="EVDO"/>
  <int value="3" label="GPRS"/>
  <int value="4" label="GSM"/>
  <int value="5" label="HSPA"/>
  <int value="6" label="HSPA_PLUS"/>
  <int value="7" label="LTE"/>
  <int value="8" label="UMTS"/>
  <int value="9" label="Unknown"/>
</enum>

<enum name="NetworkCellularUsageRequestStatus" type="int">
  <summary>
    Status code that we received in response to a cellular usage API request.
  </summary>
  <int value="0" label="Failed">
    This value is distinct from the others in that it indicates that we were
    unable to issue a request or that we received no reply. The other values
    represent the status code contained in a reply.
  </int>
  <int value="1" label="Ok"/>
  <int value="2" label="Error"/>
  <int value="3" label="Malformed Request"/>
  <int value="4" label="Internal Error"/>
  <int value="5" label="Service Unavailable"/>
  <int value="6" label="Request Refused"/>
  <int value="7" label="Unknown Device"/>
</enum>

<enum name="NetworkChannelType" type="int">
  <int value="0" label="UNDEF"/>
  <int value="1" label="2412"/>
  <int value="2" label="2417"/>
  <int value="3" label="2422"/>
  <int value="4" label="2427"/>
  <int value="5" label="2432"/>
  <int value="6" label="2437"/>
  <int value="7" label="2442"/>
  <int value="8" label="2447"/>
  <int value="9" label="2452"/>
  <int value="10" label="2457"/>
  <int value="11" label="2462"/>
  <int value="12" label="2467"/>
  <int value="13" label="2472"/>
  <int value="14" label="2484"/>
  <int value="15" label="5180"/>
  <int value="16" label="5200"/>
  <int value="17" label="5220"/>
  <int value="18" label="5240"/>
  <int value="19" label="5260"/>
  <int value="20" label="5280"/>
  <int value="21" label="5300"/>
  <int value="22" label="5320"/>
  <int value="23" label="5500"/>
  <int value="24" label="5520"/>
  <int value="25" label="5540"/>
  <int value="26" label="5560"/>
  <int value="27" label="5580"/>
  <int value="28" label="5600"/>
  <int value="29" label="5620"/>
  <int value="30" label="5640"/>
  <int value="31" label="5660"/>
  <int value="32" label="5680"/>
  <int value="33" label="5700"/>
  <int value="34" label="5745"/>
  <int value="35" label="5765"/>
  <int value="36" label="5785"/>
  <int value="37" label="5805"/>
  <int value="38" label="5825"/>
  <int value="39" label="5170"/>
  <int value="40" label="5190"/>
  <int value="41" label="5210"/>
  <int value="42" label="5230"/>
</enum>

<enum name="NetworkConnectionIPType" type="int">
  <int value="0" label="IPv4"/>
  <int value="1" label="IPv6"/>
</enum>

<enum name="NetworkConnectionType" type="int">
  <int value="0" label="Unknown"/>
  <int value="1" label="Ethernet"/>
  <int value="2" label="WiFi"/>
  <int value="3" label="2g"/>
  <int value="4" label="3g"/>
  <int value="5" label="4g"/>
  <int value="6" label="None"/>
  <int value="7" label="Bluetooth"/>
</enum>

<enum name="NetworkCorruptedProfile" type="int">
  <int value="0" label="Corrupted Profile"/>
</enum>

<enum name="NetworkDhcpClientStatus" type="int">
  <int value="0" label="Arp Gateway">
    The DHCP client will attempt to identify the default gateway using a unicast
    ARP to the gateway's MAC address.  This may help speed up the re-connection
    process.
  </int>
  <int value="1" label="Arp Self">
    The DHCP client will attempt to ARP for the IP address that it was supplied.
    This indicates that the client is unsure whether the address it was assigned
    is valid.
  </int>
  <int value="2" label="Bound">
    The DHCP client has successfully acquired an IP address.
  </int>
  <int value="3" label="Discover">
    The DHCP client has inititated a DHCP DISCOVER, a broadcast request for any
    server to provide it with an address.
  </int>
  <int value="4" label="Additional Offer">
    The DHCP client has received more than one offer in response to its DHCP
    DISCOVER request.
  </int>
  <int value="5" label="Failed Offer">
    The DHCP client has received an offer in response to its DHCP DISCOVER which
    is the same as an address it previously failed to validate via an &quot;Arp
    Self&quot; test.
  </int>
  <int value="6" label="Invalid Offer">
    The DHCP client has received an offer in response to its DHCP DISCOVER which
    is either an all-zeros or all-ones IP address, and therefore invalid.
  </int>
  <int value="7" label="Ignore Non-Offer">
    The DHCP client has received a response to its DHCP DISCOVER which is not
    actually a DHCP OFFER.
  </int>
  <int value="8" label="Inform">
    The DHCP client has issued a DHCP INFORM message for an IP address it has
    self-assigned.
  </int>
  <int value="9" label="Init">
    The DHCP client is intializing its internal state.
  </int>
  <int value="10" label="Nak Defer">
    The DHCP client has received a DHCP NAK and will defer processing this
    response for a receive interval.
  </int>
  <int value="11" label="Rebind">
    The DHCP client is performing the second level &quot;rebind&quot; lease
    renewal stage, and has presumably failed the first level &quot;renew&quot;
    stage.
  </int>
  <int value="12" label="Reboot">
    The DHCP client is attempting to re-acquire a lease on a network where it
    had previously been connected at some time in the past.
  </int>
  <int value="13" label="Release">
    The DHCP client is releasing its current lease to its assigned IP address.
  </int>
  <int value="14" label="Renew">
    The DHCP client is performing a first level renewal of its current lease.
  </int>
  <int value="15" label="Request">
    The DHCP client is performing a DHCP REQUEST for a lease it has been
    offered.
  </int>
</enum>

<enum name="NetworkDHCPOptionFailure" type="int">
  <int value="0" label="DHCP Option Failure"/>
</enum>

<enum name="NetworkDisconnectType" type="int">
  <int value="0" label="System Disconnect"/>
  <int value="1" label="User Disconnect"/>
</enum>

<enum name="NetworkErrorType" type="int">
  <int value="0" label="Unknown"/>
  <int value="1" label="Portal"/>
  <int value="2" label="Offline"/>
  <int value="3" label="Proxy"/>
  <int value="4" label="AuthExtTimeout"/>
  <int value="5" label="None"/>
</enum>

<enum name="NetworkLocationRequestEvent" type="int">
  <int value="0" label="REQUEST_START"/>
  <int value="1" label="REQUEST_CANCEL"/>
  <int value="2" label="RESPONSE_SUCCESS"/>
  <int value="3" label="RESPONSE_NOT_OK"/>
  <int value="4" label="RESPONSE_EMPTY"/>
  <int value="5" label="RESPONSE_MALFORMED"/>
  <int value="6" label="RESPONSE_INVALID_FIX"/>
</enum>

<enum name="NetworkPhyModeType" type="int">
  <int value="0" label="UNDEF"/>
  <int value="1" label="802.11a"/>
  <int value="2" label="802.11b"/>
  <int value="3" label="802.11g"/>
  <int value="4" label="802.11n"/>
  <int value="5" label="PSB 10MHz-wide"/>
  <int value="6" label="PSB 5MHz-wide"/>
  <int value="7" label="802.11ac"/>
</enum>

<enum name="NetworkPortalResult" type="int">
  <summary>
    The portal result types come from PortalResult in shill/metrics.h
  </summary>
  <int value="0" label="Success"/>
  <int value="1" label="DNS Failure"/>
  <int value="2" label="DNS Timeout"/>
  <int value="3" label="Connection Failure"/>
  <int value="4" label="Connection Timeout"/>
  <int value="5" label="HTTP Failure"/>
  <int value="6" label="HTTP Timeout"/>
  <int value="7" label="Content Failure"/>
  <int value="8" label="Content Timeout"/>
  <int value="9" label="Unknown"/>
</enum>

<enum name="NetworkProblemType" type="int">
  <int value="0" label="Congested TCP Queue"/>
  <int value="1" label="DNS Failure"/>
</enum>

<enum name="NetworkQueueStopReason" type="int">
  <summary>The stop reasons come from shill/mac80211_monitor.h.</summary>
  <int value="0" label="Device Driver"/>
  <int value="1" label="Power Save"/>
  <int value="2" label="Channel Switch Announcement"/>
  <int value="3" label="Aggregation"/>
  <int value="4" label="Suspend"/>
  <int value="5" label="Buffer Add"/>
  <int value="6" label="Channel Type Change"/>
</enum>

<enum name="NetworkSecurityType" type="int">
  <summary>
    The security types come from the connman_service_security enum in
    flimflam/include/service.h
  </summary>
  <int value="0" label="UNKNOWN"/>
  <int value="1" label="NONE"/>
  <int value="2" label="WEP"/>
  <int value="3" label="WPA"/>
  <int value="4" label="802.11i/RSN"/>
  <int value="5" label="802.1x"/>
  <int value="6" label="PSK"/>
</enum>

<enum name="NetworkServiceError" type="int">
  <int value="0" label="UNKNOWN"/>
  <int value="1" label="AAA_FAILED"/>
  <int value="2" label="ACTIVATION_FAILED"/>
  <int value="3" label="BAD_PASSPHRASE"/>
  <int value="4" label="BAD_WEPKEY"/>
  <int value="5" label="CONNECT_FAILED"/>
  <int value="6" label="DHCP_FAILED"/>
  <int value="7" label="DNS_LOOKUP_FAILED"/>
  <int value="8" label="EAP_AUTHENTICATION_FAILED"/>
  <int value="9" label="EAP_LOCAL_TLS_FAILED"/>
  <int value="10" label="EAP_REMOTE_TLS_FAILED"/>
  <int value="11" label="HTTP_GET_FAILED"/>
  <int value="12" label="IPSEC_CERT_AUTH_FAILED"/>
  <int value="13" label="IPSEC_PSK_AUTH_FAILED"/>
  <int value="14" label="INTERNAL"/>
  <int value="15" label="NEED_EVDO"/>
  <int value="16" label="NEED_HOME_NETWORK"/>
  <int value="17" label="OTASP_FAILED"/>
  <int value="18" label="OUT_OF_RANGE"/>
  <int value="19" label="PPP_AUTH_FAILED"/>
  <int value="20" label="PIN_MISSING"/>
</enum>

<enum name="NetworkTechnology" type="int">
  <int value="0" label="Cellular"/>
  <int value="1" label="Ethernet"/>
  <int value="2" label="Ethernet EAP"/>
  <int value="3" label="WiFi"/>
  <int value="4" label="WiMax"/>
  <int value="5" label="VPN"/>
  <int value="6" label="Unknown"/>
</enum>

<enum name="NewTabPageActionAndroid" type="int">
  <int value="0" label="Searched using the omnibox"/>
  <int value="1" label="Navigated to Google search homepage using the omnibox"/>
  <int value="2" label="Navigated to any other page using the omnibox"/>
  <int value="3" label="Opened a most visited page"/>
  <int value="4" label="Opened a recently closed tab"/>
  <int value="5" label="Opened a bookmark"/>
  <int value="6" label="Opened a foreign session (from other devices section)"/>
  <int value="7" label="Navigated to the webpage for a snippet"/>
  <int value="8" label="Clicked on an interest item"/>
</enum>

<enum name="NewTabPageBookmarkActionAndroid" type="int">
  <summary>
    These values are defined in PartnerBookmarkAction enum in
    chrome/browser/ui/webui/ntp/android/bookmarks_handler.cc.
  </summary>
  <int value="0" label="Deleted partner bookmark"/>
  <int value="1" label="Deleted root partner folder"/>
  <int value="2" label="Renamed partner bookmark"/>
  <int value="3" label="Renamed root partner folder"/>
</enum>

<enum name="NewTabPageLogoClick" type="int">
  <int value="0" label="Static logo clicked"/>
  <int value="1" label="CTA image clicked"/>
  <int value="2" label="Animated logo clicked"/>
</enum>

<enum name="NewTabPageLogoDownloadOutcome" type="int">
  <summary>
    These values are defined in LogoDownloadOutcome enum in
    components/search_provider_logos/logo_tracker.h.
  </summary>
  <int value="0" label="New logo success"/>
  <int value="1" label="No logo today"/>
  <int value="2" label="Download failed"/>
  <int value="3" label="Parsing failed"/>
  <int value="4" label="Decoding failed"/>
  <int value="5" label="Logo revalidated"/>
</enum>

<enum name="NewTabPageLogoShown" type="int">
  <int value="0" label="Static logo shown"/>
  <int value="1" label="CTA image shown"/>
</enum>

<enum name="NewTabPageMobilePromo" type="int">
  <summary>
    These values are defined inside the PromoImpressionBuckets enum in
    chrome/browser/ui/webui/ntp/android/promo_handler.cc
  </summary>
  <int value="0" label="Shown from most visited page"/>
  <int value="1" label="Shown from open tabs page"/>
  <int value="2" label="Shown from sync promo page"/>
  <int value="3" label="User pressed 'Try Chrome'"/>
  <int value="4" label="User dismissed the promo"/>
</enum>

<enum name="NewTabType" type="int">
  <int value="0" label="New tab button"/>
  <int value="1" label="Regular menu option"/>
  <int value="2" label="Tab strip menu option"/>
</enum>

<enum name="NewTabURLState" type="int">
  <int value="0" label="Valid URL was used"/>
  <int value="1" label="Corrupt state"/>
  <int value="2" label="Incognito window"/>
  <int value="3" label="No URL for default provider"/>
  <int value="4" label="Insecure URL"/>
  <int value="5" label="Suggest is disabled"/>
  <int value="6" label="URL blocked for supervised user"/>
</enum>

<enum name="NewUserPriorityPrefsSyncResult" type="int">
  <int value="0" label="Succeeded"/>
  <int value="1" label="Timed out"/>
</enum>

<enum name="NotificationActionType" type="int">
  <int value="0" label="Unknown"/>
  <int value="1" label="Notification added"/>
  <int value="2" label="Notification updated"/>
  <int value="3" label="Notification clicked"/>
  <int value="4" label="Notification button clicked"/>
  <int value="5" label="Notification displayed"/>
  <int value="6" label="Notification closed by user"/>
  <int value="7" label="Notification closed by system"/>
</enum>

<enum name="NotificationAppStatus" type="int">
  <int value="0" label="Undeterminable (old Android version)"/>
  <int value="1" label="Undeterminable (exception thrown)"/>
  <int value="2" label="Enabled"/>
  <int value="3" label="Disabled"/>
</enum>

<enum name="NotificationDatabaseStatus" type="int">
  <int value="0" label="OK"/>
  <int value="1" label="Not found error"/>
  <int value="2" label="Corruption error"/>
  <int value="3" label="Failure error"/>
  <int value="4" label="I/O error"/>
  <int value="5" label="Not supported error"/>
</enum>

<enum name="NotStreamingReason" type="int">
  <int value="0" label="Already loaded"/>
  <int value="1" label="Not HTTP"/>
  <int value="2" label="Reload"/>
  <int value="3" label="Context not valid"/>
  <int value="4" label="Encoding not supported"/>
  <int value="5" label="Thread busy"/>
  <int value="6" label="V8 cannot stream"/>
  <int value="7" label="Script too small"/>
</enum>

<enum name="NPAPIPluginStatus" type="int">
  <int value="0" label="Unsupported">
    NPAPI is not supported on this platform
  </int>
  <int value="1" label="Disabled">NPAPI is disabled</int>
  <int value="2" label="Enabled">NPAPI is enabled</int>
</enum>

<enum name="NQEExternalEstimateProviderStatus" type="int">
  <int value="0" label="External estimate provider was not available"/>
  <int value="1" label="External estimate provider was available"/>
  <int value="2" label="External estimate provider was queried"/>
  <int value="3" label="Query to external estimate provider was successful"/>
  <int value="4" label="Callback received from external estimate provider"/>
  <int value="5" label="RTT was available from the external estimate provider"/>
  <int value="6"
      label="Downlink bandwidth was available from the external estimate
             provider"/>
</enum>

<enum name="NtpFollowAction" type="int">
  <int value="0" label="PAGE_TRANSITION_LINK"/>
  <int value="1" label="PAGE_TRANSITION_TYPED"/>
  <int value="2" label="PAGE_TRANSITION_AUTO_BOOKMARK"/>
  <int value="3" label="PAGE_TRANSITION_AUTO_SUBFRAME"/>
  <int value="4" label="PAGE_TRANSITION_MANUAL_SUBFRAME"/>
  <int value="5" label="PAGE_TRANSITION_GENERATED"/>
  <int value="6" label="PAGE_TRANSITION_START_PAGE"/>
  <int value="7" label="PAGE_TRANSITION_FORM_SUBMIT"/>
  <int value="8" label="PAGE_TRANSITION_RELOAD"/>
  <int value="9" label="PAGE_TRANSITION_KEYWORD"/>
  <int value="10" label="PAGE_TRANSITION_KEYWORD_GENERATED"/>
  <int value="11" label="Clicked on a tile."/>
  <int value="12" label="Clicked to other NTP pane."/>
  <int value="13" label="Other action"/>
</enum>

<enum name="NTPImpressionType" type="int">
  <int value="0" label="regular NTP impression"/>
  <int value="1" label="potential NTP impression - no open tab"/>
</enum>

<enum name="NtpMostVisitedScheme" type="int">
  <int value="0" label="Other (not web-safe)"/>
  <int value="1" label="Other (web-safe)"/>
  <int value="2" label="http://"/>
  <int value="3" label="https://"/>
  <int value="4" label="ftp://"/>
  <int value="5" label="file://"/>
  <int value="6" label="chrome://"/>
  <int value="7" label="chrome-extension://"/>
  <int value="8" label="javascript://"/>
</enum>

<enum name="NtpPaneType" type="int">
  <int value="1" label="MostVisited"/>
  <int value="2" label="Apps"/>
  <int value="3" label="Bookmarks"/>
  <int value="4" label="Suggestions"/>
</enum>

<enum name="NtpPromoAction" type="int">
  <int value="0" label="NTP Promo viewed"/>
  <int value="1" label="NTP Promo closed"/>
  <int value="2" label="NTP Promo link clicked"/>
</enum>

<enum name="NtpSnippetsFetchResult" type="int">
  <int value="0" label="Success"/>
  <int value="1" label="Empty hosts"/>
  <int value="2" label="URLRequestStatus error"/>
  <int value="3" label="HTTP error"/>
  <int value="4" label="JSON parse error"/>
  <int value="5" label="Invalid snippet content"/>
  <int value="6" label="Error in obtaining oauth access token"/>
</enum>

<enum name="NtpSuggestionsType" type="int">
  <int value="0" label="Client suggestion"/>
  <int value="1" label="Server suggestion"/>
</enum>

<enum name="NtpTileExperimentActions" type="int">
  <summary>
    The types of actions performed by the Most Visited Tile Placement
    experiment, used to identify the cases where the experiment could not
    operate as expected, and the reason for it.
  </summary>
  <int value="0" label="Removed URL that was already open in browser"/>
  <int value="1" label="Didn't remove URL, too few suggestions in MV"/>
  <int value="2" label="Too few URLs, didn't flip tiles 1 and 8"/>
  <int value="3" label="Too few URLs, didn't flip tiles 1 and 4"/>
</enum>

<enum name="OAuth2LoginAccountRevokedMigrationState" type="int">
  <int value="0" label="Account ID migration not started"/>
  <int value="1" label="Account ID migration in progress"/>
  <int value="2" label="Account ID migration done"/>
</enum>

<enum name="OAuth2LoginSeedState" type="int">
  <int value="0" label="Account was seeded before FireRefreshTokenRevoked"/>
  <int value="1" label="Account was seeded before FireRefreshTokenAvailable"/>
  <int value="2" label="Account was not seeded before FireRefreshTokenRevoked"/>
  <int value="3"
      label="Account was not seeded before FireRefreshTokenAvailable"/>
</enum>

<enum name="OfflinePagesClearAllStatus" type="int">
  <int value="0" label="Success"/>
  <int value="1" label="Store reset failed"/>
  <int value="2" label="Store reload failed"/>
</enum>

<enum name="OfflinePagesDeletePageResult" type="int">
  <int value="0" label="Success"/>
  <int value="1" label="Cancelled"/>
  <int value="2" label="Store failure"/>
  <int value="3" label="Device failure"/>
  <int value="4" label="Not found"/>
</enum>

<enum name="OfflinePagesLoadStatus" type="int">
  <int value="0" label="Success"/>
  <int value="1" label="Store init failed"/>
  <int value="2" label="Store load failed"/>
  <int value="3" label="Data parsing failed"/>
</enum>

<enum name="OfflinePagesSavePageResult" type="int">
  <int value="0" label="Success"/>
  <int value="1" label="Cancelled"/>
  <int value="2" label="Device full"/>
  <int value="3" label="Content unavailable"/>
  <int value="4" label="Archive creation failed"/>
  <int value="5" label="Store failure"/>
  <int value="6" label="Already exists"/>
  <int value="7" label="Skipped"/>
  <int value="8" label="Security certificate error"/>
</enum>

<enum name="OfflinePagesSharedPageWasOffline" type="int">
  <int value="0" label="Online"/>
  <int value="1" label="Offline"/>
</enum>

<enum name="OfflineStatus" type="int">
  <obsolete>
    Deprecated 4/2015.
  </obsolete>
  <int value="0" label="Fresh data load from Cache"/>
  <int value="1" label="Successful network request (validation or fetch)."/>
  <int value="2" label="Failed network request (non-offline error)."/>
  <int value="3" label="Server offline and stale data available."/>
  <int value="4" label="Server offline and stale data not available."/>
</enum>

<enum name="OmniboxAggressiveHistoryURLProviderFieldTrialBeacon" type="int">
  <int value="0" label="disabled by flags"/>
  <int value="1" label="enabled by flags"/>
  <int value="2" label="auto, not in trial"/>
  <int value="3" label="auto, disabled in trial"/>
  <int value="4" label="auto, enabled in trial"/>
</enum>

<enum name="OmniboxEnteredKeywordMode" type="int">
  <int value="0" label="via tab"/>
  <int value="1" label="via space at end"/>
  <int value="2" label="via space in middle"/>
</enum>

<enum name="OmniboxInputType" type="int">
  <int value="0" label="invalid"/>
  <int value="1" label="unknown"/>
  <int value="2" label="deprecated: requested url"/>
  <int value="3" label="url"/>
  <int value="4" label="query"/>
  <int value="5" label="forced query"/>
</enum>

<enum name="OmniboxPageContext" type="int">
  <int value="0" label="invalid spec; shouldn't happen"/>
  <int value="1"
      label="extension-replaced new tab page OR obsolete new tab page"/>
  <int value="2" label="about:blank"/>
  <int value="3" label="the user's home page"/>
  <int value="4" label="other (typically an arbitrary URL)"/>
  <int value="5" label="obsolete: instant new tab page"/>
  <int value="6" label="search results page with search term replacement"/>
  <int value="7" label="new tab page with omnibox as starting focus"/>
  <int value="8" label="new tab page with fakebox as starting focus"/>
  <int value="9" label="search results page without search term replacement"/>
  <int value="10" label="home screen"/>
  <int value="11" label="search app"/>
  <int value="12" label="maps app"/>
</enum>

<enum name="OmniboxProviderAndResultType" type="int">
  <int value="101" label="URL_WHAT_YOU_TYPED via HistoryURL provider"/>
  <int value="102" label="HISTORY_URL via HistoryURL provider"/>
  <int value="302" label="HISTORY_URL via HistoryQuick provider"/>
  <int value="303" label="HISTORY_TITLE via HistoryQuick provider"/>
  <int value="406" label="NAVSUGGEST via SearchProvider"/>
  <int value="407" label="SEARCH_WHAT_YOU_TYPED via SearchProvider"/>
  <int value="408" label="SEARCH_HISTORY via SearchProvider"/>
  <int value="409" label="SEARCH_SUGGEST via SearchProvider"/>
  <int value="410" label="SEARCH_OTHER_ENGINE via SearchProvider"/>
  <int value="414" label="SEARCH_SUGGEST_ENTITY via SearchProvider"/>
  <int value="415" label="SEARCH_SUGGEST_INFINITE via SearchProvider"/>
  <int value="416" label="SEARCH_SUGGEST_PERSONALIZED via SearchProvider"/>
  <int value="422" label="SEARCH_SUGGEST_ANSWER via SearchProvider"/>
  <int value="423" label="CALCULATOR via SearchProvider"/>
  <int value="505" label="HISTORY_KEYWORD via KeywordProvider"/>
  <int value="510" label="SEARCH_OTHER_ENGINE via KeywordProvider"/>
  <int value="606" label="NAVSUGGEST via BuiltinProvider"/>
  <int value="700" label="UNKNOWN_RESULT_TYPE via Shortcuts provider"/>
  <int value="701" label="URL_WHAT_YOU_TYPED via Shortcuts provider"/>
  <int value="702" label="HISTORY_URL via Shortcuts provider"/>
  <int value="703" label="HISTORY_TITLE via Shortcuts provider"/>
  <int value="705" label="HISTORY_KEYWORD via Shortcuts provider"/>
  <int value="708" label="SEARCH_HISTORY via Shortcuts provider"/>
  <int value="710" label="SEARCH_OTHER_ENGINE via Shortcuts provider"/>
  <int value="713" label="BOOKMARK_TITLE via Shortcuts provider"/>
  <int value="716" label="SEARCH_SUGGEST_PERSONALIZED via Shortcuts provider"/>
  <int value="717" label="SEARCH_SUGGEST_PROFILE via Shortcuts provider"/>
  <int value="1013" label="BOOKMARK_TITLE via BookmarkProvider"/>
  <int value="1106" label="NAVSUGGEST via ZeroSuggest"/>
  <int value="1109" label="SEARCH_SUGGEST via ZeroSuggest"/>
  <int value="1116" label="SEARCH_SUGGEST_PERSONALIZED via ZeroSuggest"/>
  <int value="1202" label="HISTORY_URL from on-device service"/>
  <int value="1212" label="CONTACT from on-device service"/>
  <int value="1218" label="APP_RESULT from on-device service"/>
  <int value="1219" label="APP from on-device service"/>
  <int value="1220" label="LEGACY_ON_DEVICE from on-device service"/>
  <int value="1424" label="CLIPBOARD from Clipboard provider"/>
</enum>

<enum name="OmniboxProviderType" type="int">
  <int value="1" label="HistoryURL"/>
  <int value="2" label="deprecated: HistoryContents"/>
  <int value="3" label="HistoryQuick"/>
  <int value="4" label="SearchProvider"/>
  <int value="5" label="KeywordProvider"/>
  <int value="6" label="BuiltinProvider"/>
  <int value="7" label="ShortcutsProvider"/>
  <int value="8" label="deprecated: ExtensionAppProvider"/>
  <int value="9" label="deprecated: ContactsProvider"/>
  <int value="10" label="BookmarkProvider"/>
  <int value="11" label="ZeroSuggest"/>
  <int value="12" label="on device (only used by Android GSA)"/>
  <int value="13" label="on device chrome (chrome content provider)"/>
  <int value="14" label="clipboard provider"/>
</enum>

<enum name="OmniboxSearchEngine" type="int">
  <int value="0" label="Unknown"/>
  <int value="1" label="Google"/>
  <int value="2" label="Yahoo!"/>
  <int value="3" label="Bing"/>
  <int value="4" label="Ask"/>
  <int value="5" label="Yahoo! Quebec"/>
  <int value="6" label="OK.hu"/>
  <int value="7" label="Bing French and Arabic"/>
  <int value="11" label="Yamli"/>
  <int value="12" label="Araby"/>
  <int value="13" label="Maktoob"/>
  <int value="14" label="Masrawy"/>
  <int value="15" label="Yandex"/>
  <int value="16" label="Rambler"/>
  <int value="17" label="TUT.BY"/>
  <int value="18" label="hispavista"/>
  <int value="19" label="Jabse"/>
  <int value="20" label="NUR.KZ"/>
  <int value="21" label="Baidu"/>
  <int value="22" label="search.ch"/>
  <int value="23" label="goo"/>
  <int value="24" label="Pogodak!"/>
  <int value="25" label="Seznam"/>
  <int value="26" label="Centrum"/>
  <int value="27" label="Atlas"/>
  <int value="28" label="Jubii"/>
  <int value="29" label="Eniro"/>
  <int value="30" label="NetSprint"/>
  <int value="32" label="diri"/>
  <int value="33" label="Custom"/>
  <int value="35" label="AOL"/>
  <int value="36" label="Conduit"/>
  <int value="37" label="Rediff"/>
  <int value="38" label="guruji"/>
  <int value="40" label="GO.com"/>
  <int value="41" label="Rednano"/>
  <int value="44" label="NETI"/>
  <int value="45" label="DELFI"/>
  <int value="46" label="Fonecta 02.fi"/>
  <int value="50" label="AVG"/>
  <int value="51" label="search.ch"/>
  <int value="54" label="in.gr"/>
  <int value="55" label="Walla!"/>
  <int value="59" label="leit.is"/>
  <int value="62" label="Virgilio"/>
  <int value="63" label="Libero"/>
  <int value="67" label="Naver"/>
  <int value="68" label="Daum"/>
  <int value="69" label="Nate"/>
  <int value="71" label="LATNE"/>
  <int value="72" label="ABC S.k"/>
  <int value="73" label="Kvasir"/>
  <int value="75" label="Onet.pl"/>
  <int value="76" label="Wirtualna Polska"/>
  <int value="77" label="SAPO"/>
  <int value="82" label="UOL Busca"/>
  <int value="83" label="@MAIL.RU"/>
  <int value="85" label="Zoznam"/>
  <int value="87" label="Najdi.si"/>
  <int value="89" label="AltaVista"/>
  <int value="90" label="Terra"/>
  <int value="99" label="Spray"/>
  <int value="100" label="Sanook!"/>
  <int value="101" label="MYNET"/>
  <int value="102" label="searchnu.com"/>
  <int value="103" label="babylon.com"/>
  <int value="104" label="delta-search.com"/>
  <int value="105" label="iminent.com"/>
  <int value="106" label="hao123.com"/>
  <int value="107" label="sweetim.com"/>
  <int value="108" label="snap.do"/>
  <int value="109" label="snapdo.com"/>
  <int value="110" label="softonic.com"/>
  <int value="111" label="searchfunmoods.com"/>
  <int value="112" label="incredibar.com"/>
  <int value="113" label="sweetpacks.com"/>
  <int value="114" label="imesh.net"/>
</enum>

<enum name="OmniboxSearchEngineType" type="int">
  <int value="0" label="Unknown"/>
  <int value="1" label="AOL"/>
  <int value="2" label="Ask"/>
  <int value="3" label="Atlas"/>
  <int value="4" label="AVG"/>
  <int value="5" label="Baidu"/>
  <int value="6" label="Babylon"/>
  <int value="7" label="Bing"/>
  <int value="8" label="Conduit"/>
  <int value="9" label="Daum"/>
  <int value="10" label="DELFI"/>
  <int value="11" label="Delta"/>
  <int value="12" label="Funmoods"/>
  <int value="13" label="goo"/>
  <int value="14" label="Google"/>
  <int value="15" label="iminent.com"/>
  <int value="16" label="IMesh"/>
  <int value="17" label="in.gr"/>
  <int value="18" label="incredibar.com"/>
  <int value="19" label="Kvasir"/>
  <int value="20" label="Libero"/>
  <int value="21" label="@MAIL.RU"/>
  <int value="22" label="Najdi.si"/>
  <int value="23" label="Nate"/>
  <int value="24" label="Naver"/>
  <int value="25" label="NETI"/>
  <int value="26" label="Nigma"/>
  <int value="27" label="OK.hu"/>
  <int value="28" label="Onet.pl"/>
  <int value="29" label="Rambler"/>
  <int value="30" label="SAPO"/>
  <int value="31" label="searchnu"/>
  <int value="32" label="search-results.com"/>
  <int value="33" label="Seznam"/>
  <int value="34" label="snap.do"/>
  <int value="35" label="softonic.com"/>
  <int value="36" label="Sogou"/>
  <int value="37" label="Soso"/>
  <int value="38" label="sweetim.com/sweetpacks.com"/>
  <int value="39" label="Terra"/>
  <int value="40" label="TUT.BY"/>
  <int value="41" label="Vinden.nl"/>
  <int value="42" label="Virgilio"/>
  <int value="43" label="Walla!"/>
  <int value="44" label="Wirtualna Polska"/>
  <int value="45" label="Yahoo!"/>
  <int value="46" label="Yandex"/>
  <int value="47" label="Zoznam"/>
</enum>

<enum name="OmniboxSuggestRequests" type="int">
  <int value="1" label="requests sent"/>
  <int value="2" label="requests invalidated"/>
  <int value="3" label="(non-invalidated) replies received"/>
</enum>

<enum name="OmniboxSummarizedResultType" type="int">
  <int value="0" label="URL"/>
  <int value="1" label="search"/>
  <int value="2" label="app/extension"/>
  <int value="3" label="contact"/>
  <int value="4" label="on-device"/>
  <int value="5" label="unknown"/>
</enum>

<enum name="OmniboxUserTextCleared" type="int">
  <int value="0" label="cleared by editing"/>
  <int value="1" label="cleared with escape"/>
</enum>

<enum name="OmniboxZeroSuggestRequests" type="int">
  <int value="1" label="requests sent"/>
  <int value="2" label="requests invalidated"/>
  <int value="3" label="(non-invalidated) replies received"/>
</enum>

<enum name="OpenFileSystemResult" type="int">
  <int value="0" label="OK."/>
  <int value="1" label="In incognito mode."/>
  <int value="2" label="Invalid scheme."/>
  <int value="3" label="Failed to create directory."/>
</enum>

<enum name="OpenLinkAsUser" type="int">
  <int value="0" label="Active profile."/>
  <int value="1" label="Inactive, multi-profile."/>
  <int value="2" label="Inactive, single-profile."/>
</enum>

<enum name="OpenLinkAsUserProfilesState" type="int">
  <int value="0" label="No other active profiles."/>
  <int value="1" label="Active other profiles."/>
</enum>

<enum name="OriginTrialEnableResult" type="int">
  <int value="0" label="Success"/>
  <int value="1" label="NotSupported"/>
  <int value="2" label="Insecure"/>
  <int value="3" label="NoTokens"/>
  <int value="4" label="Expired"/>
  <int value="5" label="WrongFeature"/>
  <int value="6" label="WrongOrigin"/>
  <int value="7" label="InvalidSignature"/>
  <int value="8" label="Malformed"/>
  <int value="9" label="WrongVersion"/>
</enum>

<enum name="OriginTrialMessageGeneratedResult" type="int">
  <int value="0" label="NotRequested"/>
  <int value="1" label="Yes"/>
  <int value="2" label="No"/>
</enum>

<enum name="OSAgnosticErrno" type="int">
  <summary>Errno values with the same meanings on Mac/Win/Linux.</summary>
  <int value="0" label="0">No error</int>
  <int value="1" label="EPERM">Operation not permitted</int>
  <int value="2" label="ENOENT">No such file or directory</int>
  <int value="3" label="ESRCH">No such process</int>
  <int value="4" label="EINTR">Interrupted function call</int>
  <int value="5" label="EIO">Input/output error</int>
  <int value="6" label="ENXIO">No such device or address</int>
  <int value="7" label="E2BIG">Arg list too long</int>
  <int value="8" label="ENOEXEC">Exec format error</int>
  <int value="9" label="EBADF">Bad file descriptor</int>
  <int value="10" label="ECHILD">No child processes</int>
  <int value="11" label="EDEADLK">Resource deadlock avoided</int>
  <int value="12" label="ENOMEM">Cannot allocate memory</int>
  <int value="13" label="EACCES">Permission denied</int>
  <int value="14" label="EFAULT">Bad address</int>
  <int value="15" label="ENOTBLK">Not a block device</int>
  <int value="16" label="EBUSY">Resource busy</int>
  <int value="17" label="EEXIST">File exists</int>
  <int value="18" label="EXDEV">Improper link</int>
  <int value="19" label="ENODEV">Operation not supported by device</int>
  <int value="20" label="ENOTDIR">Not a directory</int>
  <int value="21" label="EISDIR">Is a directory</int>
  <int value="22" label="EINVAL">Invalid argument</int>
  <int value="23" label="ENFILE">Too many open files in system</int>
  <int value="24" label="EMFILE">Too many open files</int>
  <int value="25" label="ENOTTY">Inappropriate ioctl for device</int>
  <int value="26" label="ETXTBSY">Text file busy</int>
  <int value="27" label="EFBIG">File too large</int>
  <int value="28" label="ENOSPC">Device out of space</int>
  <int value="29" label="ESPIPE">Illegal seek</int>
  <int value="30" label="EROFS">Read-only file system</int>
  <int value="31" label="EMLINK">Too many links</int>
  <int value="32" label="EPIPE">Broken pipe</int>
  <int value="33" label="EDOM">Numerical argument out of domain</int>
  <int value="34" label="ERANGE">Numerical result out of range</int>
</enum>

<enum name="OsSuite" type="int">
  <int value="0" label="Windows Home Edition"/>
  <int value="1" label="Windows Professional Edition (or better)"/>
  <int value="2" label="Windows Server Edition"/>
</enum>

<enum name="OSXExceptionHandlerEvents" type="int">
  <int value="0" label="EXCEPTION_ACCESSIBILITY">
    Object does not support accessibility attributes
  </int>
  <int value="1" label="EXCEPTION_MENU_ITEM_BOUNDS_CHECK">
    Forced crash due to menu item bounds checking failure
  </int>
  <int value="2" label="EXCEPTION_VIEW_NOT_IN_WINDOW">
    Forced crash due to view not in a window requiring a window
  </int>
  <int value="3" label="EXCEPTION_NSURL_INIT_NIL">
    Whitelisted exception for bug 85463.  Suspect ImageKit conversions for media
    browser in open or save panel.
  </int>
  <int value="4" label="EXCEPTION_NSDATADETECTOR_NIL_STRING">
    Whitelisted exception for bug 316759.  Suspect background address detection,
    field unknown.
  </int>
  <int value="5" label="EXCEPTION_NSREGULAREXPRESSION_NIL_STRING">
    Whitelisted exception for bug 466076.  Suspect background address detection,
    field unknown.
  </int>
</enum>

<enum name="OSXFullscreenParameters" type="int">
  <int value="0" label="IMMERSIVE_SECONDARY_SHARED_SINGLE">INVALID</int>
  <int value="1" label="APPKIT_SECONDARY_SHARED_SINGLE">INVALID</int>
  <int value="2" label="IMMERSIVE_PRIMARY_SHARED_SINGLE">
    Immersive Mechanism + Primary Screen + Shared Spaces + Single Screen
  </int>
  <int value="3" label="APPKIT_PRIMARY_SHARED_SINGLE">
    AppKit Mechanism + Primary Screen + Shared Spaces + Single Screen
  </int>
  <int value="4" label="IMMERSIVE_SECONDARY_SEPARATE_SINGLE">INVALID</int>
  <int value="5" label="APPKIT_SECONDARY_SEPARATE_SINGLE">INVALID</int>
  <int value="6" label="IMMERSIVE_PRIMARY_SEPARATE_SINGLE">
    Immersive Mechanism + Primary Screen + Separate Spaces + Single Screen
  </int>
  <int value="7" label="APPKIT_PRIMARY_SEPARATE_SINGLE">
    AppKit Mechanism + Primary Screen + Separate Spaces + Single Screen
  </int>
  <int value="8" label="IMMERSIVE_SECONDARY_SHARED_MULTIPLE">
    Immersive Mechanism + Secondary Screen + Shared Spaces + Multiple Screens
  </int>
  <int value="9" label="APPKIT_SECONDARY_SHARED_MULTIPLE">
    AppKit Mechanism + Secondary Screen + Shared Spaces + Multiple Screens
  </int>
  <int value="10" label="IMMERSIVE_PRIMARY_SHARED_MULTIPLE">
    Immersive Mechanism + Primary Screen + Shared Spaces + Multiple Screens
  </int>
  <int value="11" label="APPKIT_PRIMARY_SHARED_MULTIPLE">
    AppKit Mechanism + Primary Screen + Shared Spaces + Multiple Screens
  </int>
  <int value="12" label="IMMERSIVE_SECONDARY_SEPARATE_MULTIPLE">
    Immersive Mechanism + Secondary Screen + Separate Spaces + Multiple Screens
  </int>
  <int value="13" label="APPKIT_SECONDARY_SEPARATE_MULTIPLE">
    AppKit Mechanism + Secondary Screen + Separate Spaces + Multiple Screens
  </int>
  <int value="14" label="IMMERSIVE_PRIMARY_SEPARATE_MULTIPLE">
    Immersive Mechanism + Primary Screen + Separate Spaces + Multiple Screens
  </int>
  <int value="15" label="APPKIT_PRIMARY_SEPARATE_MULTIPLE">
    AppKit Mechanism + Primary Screen + Separate Spaces + Multiple Screens
  </int>
</enum>

<enum name="OSXFullscreenStyle" type="int">
  <int value="0" label="IMMERSIVE">
    The window was fullscreened using the immersive mechanism.
  </int>
  <int value="1" label="PRESENTATION_MODE">
    The window was fullscreened using the AppKit mechanism, in Presentation
    Mode.
  </int>
  <int value="2" label="CANONICAL_FULLSCREEN">
    The window was fullscreened using the AppKit mechanism, in Canonical
    Fullscreen.
  </int>
</enum>

<enum name="OSXFullscreenWindowLocation" type="int">
  <int value="0" label="PRIMARY_SINGLE_SCREEN">
    The window was located on the primary screen, and there is only a single
    screen available.
  </int>
  <int value="1" label="PRIMARY_MULTIPLE_SCREEN">
    The window was located on the primary screen, and there are multiple screens
    available.
  </int>
  <int value="2" label="SECONDARY_MULTIPLE_SCREEN">
    The window was located on a secondary screen, and there are multiple screens
    available.
  </int>
</enum>

<enum name="OSXHandoffOrigin" type="int">
  <int value="0" label="Unknown Origin"/>
  <int value="1" label="Chrome on iOS"/>
  <int value="2" label="Chrome on Mac"/>
</enum>

<enum name="OSXScreensHaveSeparateSpaces" type="int">
  <int value="0" label="CANNOT_HAVE_SEPARATE_SPACES">
    The &quot;Screens Have Separate Spaces&quot; option is unavailable.
  </int>
  <int value="1" label="SEPARATE_SPACES">
    The &quot;Screens Have Separate Spaces&quot; option is on.
  </int>
  <int value="2" label="SHARED_SPACES">
    The &quot;Screens Have Separate Spaces&quot; option is off.
  </int>
</enum>

<enum name="OSXSharedMemoryMechanism" type="int">
  <int value="0" label="POSIX">
    The shared memory region is backed by a POSIX fd.
  </int>
  <int value="1" label="MACH">
    The shared memory region is backed by a Mach memory object.
  </int>
</enum>

<enum name="OtherPossibleUsernamesUsage" type="int">
  <int value="0" label="Nothing to Autofill"/>
  <int value="1" label="No other possible usernames"/>
  <int value="2" label="Other possible usernames present, but none were shown"/>
  <int value="3" label="Other possible username was shown, but not selected"/>
  <int value="4" label="Other possible username was selected"/>
</enum>

<enum name="OtherSessionsActions" type="int">
  <int value="0" label="Menu initialized"/>
  <int value="1" label="Menu shown"/>
  <int value="2" label="Link clicked"/>
  <int value="3" label="Link context menu shown"/>
  <int value="4" label="Device context menu shown"/>
  <int value="5" label="Unused/previous device context menu shown"/>
  <int value="6" label="Collapse Session"/>
  <int value="7" label="Expand Session"/>
  <int value="8" label="Open All"/>
  <int value="9" label="Has foreign data"/>
</enum>

<enum name="OverscrollMode" type="int">
  <summary>Direction of the overscroll gesture.</summary>
  <int value="1" label="North">Scrolled from bottom towards top</int>
  <int value="2" label="South">Scrolled from top towards the bottom</int>
  <int value="3" label="West">Scrolled from right towards left</int>
  <int value="4" label="East">Scrolled from left towards right</int>
</enum>

<enum name="P2PLookupResult" type="int">
  <int value="0" label="Found"/>
  <int value="1" label="Not Found"/>
  <int value="2" label="Vanished"/>
  <int value="3" label="Canceled"/>
  <int value="4" label="Filtered"/>
</enum>

<enum name="P2PServerResult" type="int">
  <int value="0" label="Response Sent"/>
  <int value="1" label="Response Interrupted"/>
  <int value="2" label="Malformed"/>
  <int value="3" label="Not Found"/>
  <int value="4" label="Index"/>
</enum>

<enum name="PacResultForStrippedUrl" type="int">
  <obsolete>
    Deprecated 4/27/2016. No longer tracked.
  </obsolete>
  <summary>
    Result for PAC script experiment as defined in
    net/proxy/proxy_resolver_v8_tracing.h
  </summary>
  <int value="0" label="SKIPPED_FALLBACK_BLOCKING_DNS"/>
  <int value="1" label="SUCCESS"/>
  <int value="2" label="SUCCESS_DIFFERENT_ALERTS"/>
  <int value="3" label="SUCCESS_DIFFERENT_NUM_DNS"/>
  <int value="4" label="FAIL_ABANDONED"/>
  <int value="5" label="FAIL_FALLBACK_BLOCKING_DNS"/>
  <int value="6" label="FAIL_ERROR"/>
  <int value="7" label="FAIL_DIFFERENT_PROXY_LIST"/>
</enum>

<enum name="PageLoadEvent" type="int">
  <obsolete>
    Deprecated in favor of {Committed|Provisional|InternalError}LoadEvent
  </obsolete>
  <int value="0" label="Started main frame load"/>
  <int value="1" label="Failed load before commit"/>
  <int value="2" label="Aborted load before commit"/>
  <int value="3" label="Aborted load before first layout"/>
  <int value="4" label="Successful first layout (foreground)"/>
  <int value="5" label="Successful first layout (backgrounded)"/>
</enum>

<enum name="PageScaleFactorRange" type="int">
  <int value="0" label="&lt;25%"/>
  <int value="1" label="25-49%"/>
  <int value="2" label="50-74%"/>
  <int value="3" label="75-99%"/>
  <int value="4" label="100-124%"/>
  <int value="5" label="125-149%"/>
  <int value="6" label="150-174%"/>
  <int value="7" label="175-199%"/>
  <int value="8" label="200-224%"/>
  <int value="9" label="225-249%"/>
  <int value="10" label="250-274%"/>
  <int value="11" label="275-299%"/>
  <int value="12" label="300-324%"/>
  <int value="13" label="325-349%"/>
  <int value="14" label="350-374%"/>
  <int value="15" label="375-399%"/>
  <int value="16" label="400-424%"/>
  <int value="17" label="425-449%"/>
  <int value="18" label="450-474%"/>
  <int value="19" label="475-499%"/>
  <int value="20" label="&gt;=500%"/>
</enum>

<enum name="PagespeedHeaderServerType" type="int">
  <int value="0" label="Total responses"/>
  <int value="1" label="mod_pagespeed server"/>
  <int value="2" label="ngx_pagespeed server"/>
  <int value="3" label="PageSpeed Service server"/>
  <int value="4" label="Unknown server type"/>
</enum>

<enum name="PagespeedVersion" type="int">
  <summary>
    The version of PageSpeed. Values up to 1.6.29.x are in use as of 2013-10-01
    while later values may adjust 'a' and/or 'b' arbitrarily.
  </summary>
  <int value="1" label="Unknown"/>
  <int value="2" label="0.9.10.0"/>
  <int value="3" label="0.9.10.x"/>
  <int value="4" label="0.9.11.0"/>
  <int value="5" label="0.9.11.x"/>
  <int value="6" label="0.9.12.0"/>
  <int value="7" label="0.9.12.x"/>
  <int value="8" label="0.9.13.0"/>
  <int value="9" label="0.9.13.x"/>
  <int value="10" label="0.9.14.0"/>
  <int value="11" label="0.9.14.x"/>
  <int value="12" label="0.9.15.0"/>
  <int value="13" label="0.9.15.x"/>
  <int value="14" label="0.9.16.0"/>
  <int value="15" label="0.9.16.x"/>
  <int value="16" label="0.9.17.0"/>
  <int value="17" label="0.9.17.x"/>
  <int value="18" label="0.9.18.0"/>
  <int value="19" label="0.9.18.x"/>
  <int value="20" label="0.10.19.0"/>
  <int value="21" label="0.10.19.x"/>
  <int value="22" label="0.10.20.0"/>
  <int value="23" label="0.10.20.x"/>
  <int value="24" label="0.10.21.0"/>
  <int value="25" label="0.10.21.x"/>
  <int value="26" label="0.10.22.0"/>
  <int value="27" label="0.10.22.x"/>
  <int value="28" label="1.1.23.0"/>
  <int value="29" label="1.1.23.x"/>
  <int value="30" label="1.2.24.0"/>
  <int value="31" label="1.2.24.x"/>
  <int value="32" label="1.3.25.0"/>
  <int value="33" label="1.3.25.x"/>
  <int value="34" label="1.4.26.0"/>
  <int value="35" label="1.4.26.x"/>
  <int value="36" label="1.5.27.0"/>
  <int value="37" label="1.5.27.x"/>
  <int value="38" label="1.5.28.0"/>
  <int value="39" label="1.5.28.x"/>
  <int value="40" label="1.6.29.0"/>
  <int value="41" label="1.6.29.x"/>
  <int value="42" label="a.b.30.0"/>
  <int value="43" label="a.b.30.x"/>
  <int value="44" label="a.b.31.0"/>
  <int value="45" label="a.b.31.x"/>
  <int value="46" label="a.b.32.0"/>
  <int value="47" label="a.b.32.x"/>
  <int value="48" label="a.b.33.0"/>
  <int value="49" label="a.b.33.x"/>
  <int value="50" label="a.b.34.0"/>
  <int value="51" label="a.b.34.x"/>
  <int value="52" label="a.b.35.0"/>
  <int value="53" label="a.b.35.x"/>
  <int value="54" label="a.b.36.0"/>
  <int value="55" label="a.b.36.x"/>
  <int value="56" label="a.b.37.0"/>
  <int value="57" label="a.b.37.x"/>
  <int value="58" label="a.b.38.0"/>
  <int value="59" label="a.b.38.x"/>
  <int value="60" label="a.b.39.0"/>
  <int value="61" label="a.b.39.x"/>
  <int value="62" label="a.b.40.0"/>
  <int value="63" label="a.b.40.x"/>
  <int value="64" label="a.b.41.0"/>
  <int value="65" label="a.b.41.x"/>
  <int value="66" label="a.b.42.0"/>
  <int value="67" label="a.b.42.x"/>
  <int value="68" label="a.b.43.0"/>
  <int value="69" label="a.b.43.x"/>
  <int value="70" label="a.b.44.0"/>
  <int value="71" label="a.b.44.x"/>
  <int value="72" label="a.b.45.0"/>
  <int value="73" label="a.b.45.x"/>
  <int value="74" label="a.b.46.0"/>
  <int value="75" label="a.b.46.x"/>
  <int value="76" label="a.b.47.0"/>
  <int value="77" label="a.b.47.x"/>
  <int value="78" label="a.b.48.0"/>
  <int value="79" label="a.b.48.x"/>
  <int value="80" label="a.b.49.0"/>
  <int value="81" label="a.b.49.x"/>
  <int value="82" label="a.b.50.0"/>
  <int value="83" label="a.b.50.x"/>
  <int value="84" label="a.b.51.0"/>
  <int value="85" label="a.b.51.x"/>
  <int value="86" label="a.b.52.0"/>
  <int value="87" label="a.b.52.x"/>
  <int value="88" label="a.b.53.0"/>
  <int value="89" label="a.b.53.x"/>
  <int value="90" label="a.b.54.0"/>
  <int value="91" label="a.b.54.x"/>
  <int value="92" label="a.b.55.0"/>
  <int value="93" label="a.b.55.x"/>
  <int value="94" label="a.b.56.0"/>
  <int value="95" label="a.b.56.x"/>
  <int value="96" label="a.b.57.0"/>
  <int value="97" label="a.b.57.x"/>
  <int value="98" label="a.b.58.0"/>
  <int value="99" label="a.b.58.x"/>
</enum>

<enum name="PageUsed" type="int">
  <int value="0" label="Discarded"/>
  <int value="1" label="Used"/>
</enum>

<enum name="PageVisitTransitionType" type="int">
  <int value="0" label="Page"/>
  <int value="1" label="Omnibox URL"/>
  <int value="2" label="Omnibox default search"/>
  <int value="3" label="Omnibox template search"/>
  <int value="4" label="Bookmark"/>
  <int value="5" label="Copy and paste"/>
  <int value="6" label="Forward or backward"/>
  <int value="7" label="Restore"/>
  <int value="8" label="Unknown"/>
</enum>

<enum name="ParsedCookieStatus" type="int">
  <obsolete>
    Deprecated as of 9/2013. Experiment to measure control characters in cookies
    is finished.
  </obsolete>
  <int value="0" label="All cookie values valid and without control chars"/>
  <int value="1" label="Cookie contains control chars"/>
  <int value="2" label="Cookie is invalid"/>
  <int value="3" label="Cookie contains both control chars and is invalid"/>
</enum>

<enum name="PasswordBubbleDisplayDisposition" type="int">
  <int value="0" label="Opened automatically / Offering a password to save"/>
  <int value="1" label="Opened manually / Offering a password to save"/>
  <int value="2" label="Opened manually / Managing saved passwords"/>
  <int value="3" label="Opened manually / Site is blacklisted (obsolete)"/>
  <int value="4"
      label="Opened automatically / Confirming generated password saved"/>
  <int value="5"
      label="Opened automatically / Offering a credential to choose
             (obsolete)"/>
  <int value="6" label="Opened automatically / Auto-signin toast"/>
  <int value="7" label="Opened manually / Offering a password to update"/>
  <int value="8" label="Opened automatically / Offering a password to update"/>
</enum>

<enum name="PasswordFormQueryVolume" type="int">
  <int value="0" label="New password query"/>
  <int value="1" label="Current query"/>
</enum>

<enum name="PasswordFormType" type="int">
  <int value="0" label="Login form"/>
  <int value="1" label="Login form without username"/>
  <int value="2"
      label="Enabled change password form (saved credentials match username)"/>
  <int value="3"
      label="Disabled change password form (no matching credentials)"/>
  <int value="4" label="Disabled change password form without username"/>
  <int value="5" label="Signup form"/>
  <int value="6" label="Signup form without username"/>
  <int value="7" label="Combined login and signup form"/>
</enum>

<enum name="PasswordGenerationEvent" type="int">
  <int value="0" label="No sign up form"/>
  <int value="1" label="Local heuristics found sign up form"/>
  <int value="2" label="DEPRECATED: Icon shown"/>
  <int value="3" label="DEPRECATED: Bubble shown"/>
  <int value="4" label="Generation available"/>
  <int value="5" label="DEPRECATED: Generation popup shown"/>
  <int value="6" label="Generated password accepted"/>
  <int value="7" label="DEPRECATED: Editing popup shown"/>
  <int value="8" label="Generated password edited"/>
  <int value="9" label="Generated password deleted"/>
  <int value="10" label="Generated popup shown (limit once per page)"/>
  <int value="11" label="Editing popup shown (limit once per page)"/>
  <int value="12" label="Generation triggered by autocomplete attributes"/>
</enum>

<enum name="PasswordImportFromCSVResult" type="int">
  <int value="0" label="Password import succeeded"/>
  <int value="1" label="Password import failed due to IO error"/>
  <int value="2" label="Password import failed due to malformed CSV"/>
  <int value="3" label="Password import failed due to missing content"/>
  <int value="4" label="Boundary value"/>
</enum>

<enum name="PasswordManagerActionsTaken" type="int">
  <obsolete>
    Deprecated as of Chrome 32. See PasswordManagerActionsTakenWithPsl
  </obsolete>
  <summary>
    The value is a combination of three different options - what did the
    password manager do, what did the user do, and was the form submitted (and
    submitted successfully or not). The meaning of each value can be determined
    from the values in chrome/browser/password_manager/password_form_manager.h
  </summary>
  <int value="0"
      label="manager did nothing / user did nothing / form not submitted"/>
  <int value="1"
      label="manager did nothing / user chose a value / form not submitted"/>
  <int value="2"
      label="manager did nothing / user typed in something / form not
             submitted"/>
  <int value="3"
      label="manager filled the fields / user did nothing / form not
             submitted"/>
  <int value="4"
      label="manager filled the fields / user chose a value / form not
             submitted"/>
  <int value="5"
      label="manager filled the fields / user typed in something / form not
             submitted"/>
  <int value="6"
      label="manager did nothing (site was blacklisted) / user did nothing /
             form not submitted"/>
  <int value="7"
      label="manager did nothing (site was blacklisted) / user chose a value
             / form not submitted (this value shouldn't be possible)"/>
  <int value="8"
      label="manager did nothing (site was blacklisted) / user typed in
             something / form not submitted"/>
  <int value="9"
      label="manager did nothing (autocomplete off) / user did nothing / form
             not submitted"/>
  <int value="10"
      label="manager did nothing (autocomplete off) / user chose a value /
             form not submitted (this value shouldn't be possible)"/>
  <int value="11"
      label="manager did nothing (autocomplete off) / user typed in something
             / form not submitted"/>
  <int value="12"
      label="manager did nothing / user did nothing / form submit failed"/>
  <int value="13"
      label="manager did nothing / user chose a value / form submit failed"/>
  <int value="14"
      label="manager did nothing / user typed in something / form submit
             failed"/>
  <int value="15"
      label="manager filled the fields / user did nothing / form submit
             failed"/>
  <int value="16"
      label="manager filled the fields / user chose a value / form submit
             failed"/>
  <int value="17"
      label="manager filled the fields / user typed in something / form
             submit failed"/>
  <int value="18"
      label="manager did nothing (site was blacklisted) / user did nothing /
             form submit failed"/>
  <int value="19"
      label="manager did nothing (site was blacklisted) / user chose a value
             / form submit failed (this value shouldn't be possible)"/>
  <int value="20"
      label="manager did nothing (site was blacklisted) / user typed in
             something / form submit failed"/>
  <int value="21"
      label="manager did nothing (autocomplete off) / user did nothing / form
             submit failed"/>
  <int value="22"
      label="manager did nothing (autocomplete off) / user chose a value /
             form submit failed (this value shouldn't be possible)"/>
  <int value="23"
      label="manager did nothing (autocomplete off) / user typed in something
             / form submit failed"/>
  <int value="24"
      label="manager did nothing / user did nothing / form submit succeeded"/>
  <int value="25"
      label="manager did nothing / user chose a value / form submit succeeded"/>
  <int value="26"
      label="manager did nothing / user typed in something / form submit
             succeeded"/>
  <int value="27"
      label="manager filled the fields / user did nothing / form submit
             succeeded"/>
  <int value="28"
      label="manager filled the fields / user chose a value / form submit
             succeeded"/>
  <int value="29"
      label="manager filled the fields / user typed in something / form
             submit succeeded"/>
  <int value="30"
      label="manager did nothing (site was blacklisted) / user did nothing /
             form submit succeeded"/>
  <int value="31"
      label="manager did nothing (site was blacklisted) / user chose a value
             / form submit succeeded (this value shouldn't be possible)"/>
  <int value="32"
      label="manager did nothing (site was blacklisted) / user typed in
             something / form submit succeeded"/>
  <int value="33"
      label="manager did nothing (autocomplete off) / user did nothing / form
             submit succeeded"/>
  <int value="34"
      label="manager did nothing (autocomplete off) / user chose a value /
             form submit succeeded (this value shouldn't be possible)"/>
  <int value="35"
      label="manager did nothing (autocomplete off) / user typed in something
             / form submit succeeded"/>
</enum>

<enum name="PasswordManagerActionsTakenV3" type="int">
  <summary>
    The value is a combination of three different options - what did the
    password manager do, what did the user do, and was the form submitted (and
    submitted successfully or not). The meaning of each value can be determined
    from the values in chrome/browser/password_manager/password_form_manager.h
  </summary>
  <int value="0"
      label="manager did nothing / user did nothing / form not submitted"/>
  <int value="1"
      label="manager did nothing / user chose a value / form not submitted"/>
  <int value="2"
      label="manager did nothing / user chose a value from PSL / form not
             submitted"/>
  <int value="3"
      label="manager did nothing / user typed in password / form not
             submitted"/>
  <int value="4"
      label="manager did nothing / user typed in username and password / form
             not submitted"/>
  <int value="5"
      label="manager filled the fields / user did nothing / form not
             submitted"/>
  <int value="6"
      label="manager filled the fields / user chose a value / form not
             submitted"/>
  <int value="7"
      label="manager filled the fields / user chose a value from PSL / form
             not submitted"/>
  <int value="8"
      label="manager filled the fields / user typed in password / form not
             submitted"/>
  <int value="9"
      label="manager filled the fields / user typed in username and password
             / form not submitted"/>
  <int value="10"
      label="manager did nothing (site was blacklisted) / user did nothing /
             form not submitted"/>
  <int value="11"
      label="manager did nothing (site was blacklisted) / user chose a value
             / form not submitted (this value shouldn't be possible)"/>
  <int value="12"
      label="manager did nothing (site was blacklisted) / user chose a value
             from PSL / form not submitted (this value shouldn't be possible)"/>
  <int value="13"
      label="manager did nothing (site was blacklisted) / user typed in
             password / form not submitted"/>
  <int value="14"
      label="manager did nothing (site was blacklisted) / user typed in
             username and password / form not submitted"/>
  <int value="15"
      label="manager did nothing / user did nothing / form submit failed"/>
  <int value="16"
      label="manager did nothing / user chose a value / form submit failed"/>
  <int value="17"
      label="manager did nothing / user chose a value from psl / form submit
             failed"/>
  <int value="18"
      label="manager did nothing / user typed in password / form submit
             failed"/>
  <int value="19"
      label="manager did nothing / user typed in username and password / form
             submit failed"/>
  <int value="20"
      label="manager filled the fields / user did nothing / form submit
             failed"/>
  <int value="21"
      label="manager filled the fields / user chose a value / form submit
             failed"/>
  <int value="22"
      label="manager filled the fields / user chose a value from psl / form
             submit failed"/>
  <int value="23"
      label="manager filled the fields / user typed in pasword / form submit
             failed"/>
  <int value="24"
      label="manager filled the fields / user typed in username and pasword /
             form submit failed"/>
  <int value="25"
      label="manager did nothing (site was blacklisted) / user did nothing /
             form submit failed"/>
  <int value="26"
      label="manager did nothing (site was blacklisted) / user chose a value
             / form submit failed (this value shouldn't be possible)"/>
  <int value="27"
      label="manager did nothing (site was blacklisted) / user chose a value
             from psl / form submit failed (this value shouldn't be possible)"/>
  <int value="28"
      label="manager did nothing (site was blacklisted) / user typed in
             password / form submit failed"/>
  <int value="29"
      label="manager did nothing (site was blacklisted) / user typed in
             username and password / form submit failed"/>
  <int value="30"
      label="manager did nothing / user did nothing / form submit succeeded"/>
  <int value="31"
      label="manager did nothing / user chose a value / form submit succeeded"/>
  <int value="32"
      label="manager did nothing / user chose a value from psl / form submit
             succeeded"/>
  <int value="33"
      label="manager did nothing / user typed in password / form submit
             succeeded"/>
  <int value="34"
      label="manager did nothing / user typed in username and password / form
             submit succeeded"/>
  <int value="35"
      label="manager filled the fields / user did nothing / form submit
             succeeded"/>
  <int value="36"
      label="manager filled the fields / user chose a value / form submit
             succeeded"/>
  <int value="37"
      label="manager filled the fields / user chose a value from psl / form
             submit succeeded"/>
  <int value="38"
      label="manager filled the fields / user typed in password / form submit
             succeeded"/>
  <int value="39"
      label="manager filled the fields / user typed in username and password
             / form submit succeeded"/>
  <int value="40"
      label="manager did nothing (site was blacklisted) / user did nothing /
             form submit succeeded"/>
  <int value="41"
      label="manager did nothing (site was blacklisted) / user chose a value
             / form submit succeeded (this value shouldn't be possible)"/>
  <int value="42"
      label="manager did nothing (site was blacklisted) / user chose a value
             from psl / form submit succeeded (this value shouldn't be
             possible)"/>
  <int value="43"
      label="manager did nothing (site was blacklisted) / user typed in
             password / form submit succeeded"/>
  <int value="44"
      label="manager did nothing (site was blacklisted) / user typed in
             username and password / form submit succeeded"/>
</enum>

<enum name="PasswordManagerActionsTakenWithPsl" type="int">
  <obsolete>
    Deprecated as of 3/18/2014. See PasswordManagerActionsTakenV3.
  </obsolete>
  <summary>
    The value is a combination of three different options - what did the
    password manager do, what did the user do, and was the form submitted (and
    submitted successfully or not). The meaning of each value can be determined
    from the values in chrome/browser/password_manager/password_form_manager.h
  </summary>
  <int value="0"
      label="manager did nothing / user did nothing / form not submitted"/>
  <int value="1"
      label="manager did nothing / user chose a value / form not submitted"/>
  <int value="2"
      label="manager did nothing / user chose a value from PSL / form not
             submitted"/>
  <int value="3"
      label="manager did nothing / user typed in something / form not
             submitted"/>
  <int value="4"
      label="manager filled the fields / user did nothing / form not
             submitted"/>
  <int value="5"
      label="manager filled the fields / user chose a value / form not
             submitted"/>
  <int value="6"
      label="manager filled the fields / user chose a value from PSL / form
             not submitted"/>
  <int value="7"
      label="manager filled the fields / user typed in something / form not
             submitted"/>
  <int value="8"
      label="manager did nothing (site was blacklisted) / user did nothing /
             form not submitted"/>
  <int value="9"
      label="manager did nothing (site was blacklisted) / user chose a value
             / form not submitted (this value shouldn't be possible)"/>
  <int value="10"
      label="manager did nothing (site was blacklisted) / user chose a value
             from PSL / form not submitted (this value shouldn't be possible)"/>
  <int value="11"
      label="manager did nothing (site was blacklisted) / user typed in
             something / form not submitted"/>
  <int value="12"
      label="manager did nothing (autocomplete off) / user did nothing / form
             not submitted"/>
  <int value="13"
      label="manager did nothing (autocomplete off) / user chose a value /
             form not submitted (this value shouldn't be possible)"/>
  <int value="14"
      label="manager did nothing (autocomplete off) / user chose a value from
             psl / form not submitted (this value shouldn't be possible)"/>
  <int value="15"
      label="manager did nothing (autocomplete off) / user typed in something
             / form not submitted"/>
  <int value="16"
      label="manager did nothing / user did nothing / form submit failed"/>
  <int value="17"
      label="manager did nothing / user chose a value / form submit failed"/>
  <int value="18"
      label="manager did nothing / user chose a value from psl / form submit
             failed"/>
  <int value="19"
      label="manager did nothing / user typed in something / form submit
             failed"/>
  <int value="20"
      label="manager filled the fields / user did nothing / form submit
             failed"/>
  <int value="21"
      label="manager filled the fields / user chose a value / form submit
             failed"/>
  <int value="22"
      label="manager filled the fields / user chose a value from psl / form
             submit failed"/>
  <int value="23"
      label="manager filled the fields / user typed in something / form
             submit failed"/>
  <int value="24"
      label="manager did nothing (site was blacklisted) / user did nothing /
             form submit failed"/>
  <int value="25"
      label="manager did nothing (site was blacklisted) / user chose a value
             / form submit failed (this value shouldn't be possible)"/>
  <int value="26"
      label="manager did nothing (site was blacklisted) / user chose a value
             from psl / form submit failed (this value shouldn't be possible)"/>
  <int value="27"
      label="manager did nothing (site was blacklisted) / user typed in
             something / form submit failed"/>
  <int value="28"
      label="manager did nothing (autocomplete off) / user did nothing / form
             submit failed"/>
  <int value="29"
      label="manager did nothing (autocomplete off) / user chose a value /
             form submit failed (this value shouldn't be possible)"/>
  <int value="30"
      label="manager did nothing (autocomplete off) / user chose a value from
             psl / form submit failed (this value shouldn't be possible)"/>
  <int value="31"
      label="manager did nothing (autocomplete off) / user typed in something
             / form submit failed"/>
  <int value="32"
      label="manager did nothing / user did nothing / form submit succeeded"/>
  <int value="33"
      label="manager did nothing / user chose a value / form submit succeeded"/>
  <int value="34"
      label="manager did nothing / user chose a value from psl / form submit
             succeeded"/>
  <int value="35"
      label="manager did nothing / user typed in something / form submit
             succeeded"/>
  <int value="36"
      label="manager filled the fields / user did nothing / form submit
             succeeded"/>
  <int value="37"
      label="manager filled the fields / user chose a value / form submit
             succeeded"/>
  <int value="38"
      label="manager filled the fields / user chose a value from psl / form
             submit succeeded"/>
  <int value="39"
      label="manager filled the fields / user typed in something / form
             submit succeeded"/>
  <int value="40"
      label="manager did nothing (site was blacklisted) / user did nothing /
             form submit succeeded"/>
  <int value="41"
      label="manager did nothing (site was blacklisted) / user chose a value
             / form submit succeeded (this value shouldn't be possible)"/>
  <int value="42"
      label="manager did nothing (site was blacklisted) / user chose a value
             from psl / form submit succeeded (this value shouldn't be
             possible)"/>
  <int value="43"
      label="manager did nothing (site was blacklisted) / user typed in
             something / form submit succeeded"/>
  <int value="44"
      label="manager did nothing (autocomplete off) / user did nothing / form
             submit succeeded"/>
  <int value="45"
      label="manager did nothing (autocomplete off) / user chose a value /
             form submit succeeded (this value shouldn't be possible)"/>
  <int value="46"
      label="manager did nothing (autocomplete off) / user chose a value from
             psl / form submit succeeded (this value shouldn't be possible)"/>
  <int value="47"
      label="manager did nothing (autocomplete off) / user typed in something
             / form submit succeeded"/>
</enum>

<enum name="PasswordManagerAllowToCollectURLBubble.UIDismissalReason"
    type="int">
  <obsolete>
    The bubble isn't shown anymore. Become obsolete in Feb. 2015.
  </obsolete>
  <int value="0" label="Bubble lost focus / No infobar interaction"/>
  <int value="1" label="Clicked collect URL"/>
  <int value="2" label="Clicked do not collect URL"/>
</enum>

<enum name="PasswordManagerEmptyUsernameField" type="int">
  <int value="0" label="Has username field"/>
  <int value="1" label="No username field"/>
</enum>

<enum name="PasswordManagerEmptyUsernamePasswordChangeForm" type="int">
  <int value="0" label="Not a password change form"/>
  <int value="1" label="A password change form"/>
</enum>

<enum name="PasswordManagerFilledAndroidCredentials" type="int">
  <int value="0" label="NOT from Android"/>
  <int value="1" label="From Android"/>
</enum>

<enum name="PasswordManagerOfferedAndroidCredentials" type="int">
  <int value="0" label="None from Android"/>
  <int value="1" label="1+ from Android"/>
</enum>

<enum name="PasswordManagerOsPasswordStatus" type="int">
  <int value="0" label="Unknown"/>
  <int value="1" label="Unsupported platform"/>
  <int value="2" label="Password is blank"/>
  <int value="3" label="Password is non blank"/>
  <int value="4"
      label="Password status not checked as user is on a Windows Domain"/>
</enum>

<enum name="PasswordManagerPreferencesInitialAndFinalValues" type="int">
  <summary>
    The pair of initial values and the pair of final values for the legacy
    preference for controlling the Chrome Password Manager and new preference
    for controlling Smart Lock on Android. In the values label N means new pref
    value, L meand legacy pref value.
  </summary>
  <int value="0"
      label="Initial state: N='off', L='off' Final state: N='off', L='off'"/>
  <int value="1"
      label="Initial state: N='off', L='off' Final state: N='off', L='on'"/>
  <int value="2"
      label="Initial state: N='off', L='off' Final state: N='on', L='off'"/>
  <int value="3"
      label="Initial state: N='off', L='off' Final state: N='on', L='on'"/>
  <int value="4"
      label="Initial state: N='off', L='on' Final state: N='off', L='off'"/>
  <int value="5"
      label="Initial state: N='off', L='on' Final state: N='off', L='on'"/>
  <int value="6"
      label="Initial state: N='off', L='on' Final state: N='on', L='off'"/>
  <int value="7"
      label="Initial state: N='off', L='on' Final state: N='on', L='on'"/>
  <int value="8"
      label="Initial state: N='on', L='off' Final state: N='off', L='off'"/>
  <int value="9"
      label="Initial state: N='on', L='off' Final state: N='off', L='on'"/>
  <int value="10"
      label="Initial state: N='on', L='off' Final state: N='on', L='off'"/>
  <int value="11"
      label="Initial state: N='on', L='off' Final state: N='on', L='on'"/>
  <int value="12"
      label="Initial state: N='on', L='on' Final state: N='off', L='off'"/>
  <int value="13"
      label="Initial state: N='on', L='on' Final state: N='off', L='on'"/>
  <int value="14"
      label="Initial state: N='on', L='on' Final state: N='on', L='off'"/>
  <int value="15"
      label="Initial state: N='on', L='on' Final state: N='on', L='on'"/>
</enum>

<enum name="PasswordManagerPreferencesInitialValues" type="int">
  <summary>
    The pair of initial values for the legacy preference for controlling the
    Chrome Password Manager and new preference for controlling Smart Lock on
    Android.
  </summary>
  <int value="0" label="New pref is 'off', legacy pref is 'off'"/>
  <int value="1" label="New pref is 'off', legacy pref is 'on'"/>
  <int value="2" label="New pref is 'on', legacy pref is 'off'"/>
  <int value="3" label="New pref is 'on', legacy pref is 'on'"/>
</enum>

<enum name="PasswordManagerPslDomainMatchTriggering" type="int">
  <summary>
    The value indicates whether an entry returned by password autofill contains
    a value that was found by matching against the public suffix list.
  </summary>
  <int value="0" label="Matching not used"/>
  <int value="1" label="No match"/>
  <int value="2" label="Match"/>
</enum>

<enum name="PasswordManagerShowEmptyUsername" type="int">
  <int value="0" label="Non-empty username"/>
  <int value="1" label="Empty username"/>
</enum>

<enum name="PasswordManagerSyncingAccountState" type="int">
  <summary>
    The value is a combination of the current sync state and if the user has
    their sync password saved.
  </summary>
  <int value="0" label="Syncing/Sync password not saved"/>
  <int value="1" label="Syncing/Sync password saved"/>
  <int value="2" label="Not Syncing/Sync password not saved"/>
  <int value="3"
      label="Not Syncing/Sync pasword saved. This value should not happen."/>
</enum>

<enum name="PasswordManagerUIDismissalReason" type="int">
  <int value="0" label="Bubble lost focus / No infobar interaction"/>
  <int value="1" label="Clicked 'Save'"/>
  <int value="2" label="Clicked 'Nope'"/>
  <int value="3" label="Clicked 'Never'"/>
  <int value="4" label="Clicked 'Manage passwords'"/>
  <int value="5" label="Clicked 'Done'"/>
  <int value="6" label="Clicked 'Unblacklist' (obsolete)"/>
  <int value="7" label="Clicked 'OK'"/>
  <int value="8" label="Clicked on a credential (obsolete)"/>
  <int value="9" label="Auto-signin toast timeout"/>
  <int value="10" label="Auto-signin toast clicked (obsolete)"/>
  <int value="11" label="Clicked 'Google Smart Lock'"/>
</enum>

<enum name="PasswordSubmissionEvent" type="int">
  <int value="0" label="Password submission succeeded"/>
  <int value="1" label="Password submission failed"/>
  <int value="2" label="Password not submitted"/>
  <int value="3" label="Generated password overridden by a non-generated one"/>
  <int value="4" label="Password used"/>
  <int value="5" label="Generated password submission would have failed"/>
</enum>

<enum name="PasswordSyncState" type="int">
  <int value="0" label="Syncing OK"/>
  <int value="1" label="Read failed"/>
  <int value="2" label="Duplcate tags"/>
  <int value="3" label="Server failed"/>
</enum>

<enum name="PDFFeatures" type="int">
  <int value="0" label="Loaded Document"/>
  <int value="1" label="Has Title"/>
  <int value="2" label="Has Bookmarks"/>
</enum>

<enum name="PeerConnectionCounters" type="int">
  <int value="0" label="PeerConnection enabled with IPv4."/>
  <int value="1" label="PeerConnection enabled with Ipv6."/>
  <int value="2" label="IPv4 BestConnection."/>
  <int value="3" label="IPv6 BestConnection."/>
</enum>

<enum name="PeerConnectionRtcpMux" type="int">
  <int value="0" label="Disabled"/>
  <int value="1" label="Enabled"/>
  <int value="2" label="No media"/>
</enum>

<enum name="PepperInterface" type="int">
<!-- Generated by ppapi/tools/pepper_hash_for_uma.cc -->

  <int value="286711" label="PPB_FlashFullscreen;0.1"/>
  <int value="2804066" label="PPB_AudioConfig;1.1"/>
  <int value="8760108" label="PPB_Testing_Private;1.0"/>
  <int value="10714106" label="PPB_OutputProtection_Private;0.1"/>
  <int value="11143977" label="PPB_PlatformVerification_Private;0.2"/>
  <int value="12033600" label="PPB_Compositor;0.1"/>
  <int value="13662160" label="PPB_CharSet(Dev);0.4"/>
  <int value="22816901" label="PPB_FileChooser(Dev);0.5"/>
  <int value="28187368" label="PPB_IMEInputEvent(Dev);0.2"/>
  <int value="36133501" label="PPB_MediaStreamVideoTrack;1.0"/>
  <int value="37307420" label="PPB_Scrollbar(Dev);0.5"/>
  <int value="59327104" label="PPB_Messaging;1.2"/>
  <int value="62905097" label="PPB_TrueTypeFont(Dev);0.1"/>
  <int value="79708274" label="PPB_TCPSocket;1.1"/>
  <int value="110360074" label="PPB_Var;1.1"/>
  <int value="125017713" label="PPB_CameraCapabilities_Private;0.1"/>
  <int value="126651696" label="PPB_ContentDecryptor_Private;0.12"/>
  <int value="138418890" label="PPB_Memory(Dev);0.1"/>
  <int value="150724524" label="PPB_Graphics2D;1.2"/>
  <int value="153443470" label="PPB_URLResponseInfo;1.0"/>
  <int value="153532707" label="PPB_Buffer(Dev);0.4"/>
  <int value="156766028" label="PPB_UMA_Private;0.3"/>
  <int value="162107265" label="PPB_NetworkMonitor;1.0"/>
  <int value="180906214" label="PPB_Instance_Private;0.1"/>
  <int value="206043276" label="PPB_CompositorLayer;0.1"/>
  <int value="221802429" label="PPB_URLUtil(Dev);0.7"/>
  <int value="225125520" label="PPB_Find(Private);0.3"/>
  <int value="226206264" label="PPB_FileRef;1.1"/>
  <int value="229560990" label="PPB_Var(Deprecated);0.3"/>
  <int value="250764663" label="PPB_Graphics2D(Dev);0.2"/>
  <int value="320267009" label="PPB_Flash_File_ModuleLocal;3"/>
  <int value="344923193" label="PPB_CompositorLayer;0.2"/>
  <int value="348907389" label="PPB_TCPSocket_Private;0.4"/>
  <int value="382780521" label="PPB_FileRef;1.2"/>
  <int value="415548516" label="PPB_MessageLoop;1.0"/>
  <int value="434146763" label="PPB_BrowserFont_Trusted;1.0"/>
  <int value="495324603" label="PPB_Widget(Dev);0.4"/>
  <int value="556941117" label="PPB_IMEInputEvent;1.0"/>
  <int value="588532407" label="PPB_Graphics2D;1.1"/>
  <int value="596770967" label="PPB_X509Certificate_Private;0.1"/>
  <int value="612625164" label="PPB_InputEvent;1.0"/>
  <int value="615811055" label="PPB_Flash_MessageLoop;0.1"/>
  <int value="617438958" label="PPB_VideoDecoder;1.0"/>
  <int value="629092173" label="PPB_VideoCapture(Dev);0.3"/>
  <int value="630100238" label="PPB_AudioBuffer;0.1"/>
  <int value="631212065" label="PPB_MouseInputEvent;1.0"/>
  <int value="632306545" label="PPB_FileRef;1.0"/>
  <int value="656561383" label="PPB_FlashFullscreen;1.0"/>
  <int value="657117235" label="PPB_Flash_DRM;1.0"/>
  <int value="668624105" label="PPB_Flash_DeviceID;1.0"/>
  <int value="706893509" label="PPB_ContentDecryptor_Private;0.11"/>
  <int value="714324031" label="PPB_Graphics3D;1.0"/>
  <int value="724664149" label="PPB_Flash_Menu;0.2"/>
  <int value="732838108" label="PPB_IsolatedFileSystem_Private;0.2"/>
  <int value="760024173" label="PPB_FileIO;1.0"/>
  <int value="760246876" label="PPB_OpenGLES2VertexArrayObject;1.0"/>
  <int value="763746388" label="PPB_NaCl_Private;1.0"/>
  <int value="772423590" label="PPB_TouchInputEvent;1.0"/>
  <int value="780912189" label="PPB_Alarms(Dev);0.1"/>
  <int value="795366801" label="PPB_Trace_Event(Dev);0.2"/>
  <int value="804011173" label="PPB_Gamepad;1.0"/>
  <int value="810111568" label="PPB_Messaging;1.0"/>
  <int value="829878300" label="PPB_TCPSocket;1.0"/>
  <int value="835840137" label="PPB_WebSocket;1.0"/>
  <int value="844787073" label="PPB_TextInput(Dev);0.2"/>
  <int value="856177441" label="PPB_VarArray;1.0"/>
  <int value="857934187" label="PPB_Ext_Socket(Dev);0.1"/>
  <int value="866907383" label="PPB_View;1.2"/>
  <int value="883046945" label="PPB_OpenGLES2ChromiumMapSub;1.0"/>
  <int value="890225106" label="PPB_FileChooserTrusted;0.6"/>
  <int value="893629850" label="PPB_VarArrayBuffer;1.0"/>
  <int value="897332014" label="PPB_Zoom(Dev);0.2"/>
  <int value="906618937" label="PPB_Find_Private;0.3"/>
  <int value="910782902" label="PPB_AudioFrame;0.1"/>
  <int value="913922409" label="PPB_NetworkProxy;1.0"/>
  <int value="916446405" label="PPB_URLUtil(Dev);0.6"/>
  <int value="929640141" label="PPB_VideoDestination_Private;0.1"/>
  <int value="930528031" label="PPB_OpenGLES2DrawBuffers(Dev);1.0"/>
  <int value="930786862" label="PPB_Flash_Clipboard;5.0"/>
  <int value="941275733" label="PPB_Flash;12.6"/>
  <int value="943174056" label="PPB_VideoDecoder;0.2"/>
  <int value="944161065" label="PPB_Flash_DRM;1.1"/>
  <int value="946515854" label="PPB_View(Dev);0.1"/>
  <int value="948969343" label="PPB_OpenGLES2;1.0"/>
  <int value="961061294" label="PPB_Var;1.2"/>
  <int value="961317980" label="PPB_Fullscreen;1.0"/>
  <int value="964595048" label="PPB_BrokerTrusted;0.2"/>
  <int value="965548627" label="PPB_Audio;1.1"/>
  <int value="972914533" label="PPB_TextInputController;1.0"/>
  <int value="997459960" label="PPB_FileChooserTrusted;0.5"/>
  <int value="1008493701" label="PPB_UDPSocket;1.0"/>
  <int value="1017579801" label="PPB_OpenGLES2FramebufferBlit;1.0"/>
  <int value="1032125598" label="PPB_HostResolver;1.0"/>
  <int value="1032205959" label="PPB_UDPSocket;1.1"/>
  <int value="1039206341" label="PPB_UDPSocket_Private;0.2"/>
  <int value="1042058362" label="PPB_Core;1.0"/>
  <int value="1050892821" label="PPB_OpenGLES2InstancedArrays;1.0"/>
  <int value="1055791466" label="PPB_CursorControl(Dev);0.4"/>
  <int value="1065040273" label="PPB_KeyboardInputEvent;1.2"/>
  <int value="1086644401" label="PPB_Proxy_Private;6"/>
  <int value="1094761313" label="PPB_URLLoaderTrusted;0.3"/>
  <int value="1099975614" label="PPB_Flash;12.5"/>
  <int value="1111997633" label="PPB_AudioInput(Dev);0.4"/>
  <int value="1155638369" label="PPB_WheelInputEvent;1.0"/>
  <int value="1161845861" label="PPB_NetAddress_Private;1.0"/>
  <int value="1173327824" label="PPB_OpenGLES2ChromiumEnableFeature;1.0"/>
  <int value="1188712923" label="PPB_Talk_Private;2.0"/>
  <int value="1218354710" label="PPB_VideoFrame;0.1"/>
  <int value="1260990020" label="PPB_Ext_Socket(Dev);0.2"/>
  <int value="1262240942" label="PPB_FileIO;1.1"/>
  <int value="1262834677" label="PPB_CameraDevice_Private;0.1"/>
  <int value="1272679676" label="PPB_TCPSocket_Private;0.5"/>
  <int value="1296231808" label="PPB_VideoDecoder;0.1"/>
  <int value="1304992407" label="PPB_UDPSocket;1.2"/>
  <int value="1316246754" label="PPB_KeyboardInputEvent;1.0"/>
  <int value="1316320941" label="PPB_Graphics2D(Dev);0.1"/>
  <int value="1321620067" label="PPB_Instance;1.0"/>
  <int value="1328369437" label="PPB_Talk_Private;1.0"/>
  <int value="1337084425" label="PPB_View;1.0"/>
  <int value="1354526686" label="PPB_FileIO_Private;0.1"/>
  <int value="1357207230" label="PPB_DeviceRef(Dev);0.1"/>
  <int value="1358195444" label="PPB_CharSet_Trusted;1.0"/>
  <int value="1360443600" label="PPB_OpenGLES2FramebufferMultisample;1.0"/>
  <int value="1374404330" label="PPB_BrokerTrusted;0.3"/>
  <int value="1374976378" label="PPB_OpenGLES2Query;1.0"/>
  <int value="1423820530" label="PPB_ContentDecryptor_Private;0.14"/>
  <int value="1437724812" label="PPB_AudioConfig;1.0"/>
  <int value="1443771913" label="PPB_NetAddress;1.0"/>
  <int value="1502481774" label="PPB_OpenGLES2ChromiumMapSub(Dev);1.0"/>
  <int value="1504691399" label="PPB_Flash;13.0"/>
  <int value="1505595424" label="PPB_Crypto(Dev);0.1"/>
  <int value="1508192415" label="PPB_VarDictionary;1.0"/>
  <int value="1519132417" label="PPB_FileSystem;1.0"/>
  <int value="1520420939" label="PPB_MouseCursor;1.0"/>
  <int value="1528832860" label="PPB_FileChooser(Dev);0.6"/>
  <int value="1534600005" label="PPB_AudioEncoder;0.1"/>
  <int value="1577776196" label="PPB_InputEvent_Private;0.1"/>
  <int value="1616589391" label="PPB_TCPServerSocket_Private;0.2"/>
  <int value="1641037564" label="PPB_VideoSource_Private;0.1"/>
  <int value="1645591549" label="PPB_Widget(Dev);0.3"/>
  <int value="1659973365" label="PPB_ImageCapture_Private;0.1"/>
  <int value="1665257952" label="PPB_VideoDecoder;1.1"/>
  <int value="1677958987" label="PPB_ImageData;1.0"/>
  <int value="1680873803" label="PPB_Console;1.0"/>
  <int value="1681523535" label="PPB_TCPSocket;1.2"/>
  <int value="1703245231" label="PPB_NetworkList;1.0"/>
  <int value="1714657156" label="PPB_MediaStreamAudioTrack;0.1"/>
  <int value="1721408268" label="PPB_URLLoader;1.0"/>
  <int value="1735606779" label="PPB_VideoEncoder;0.1"/>
  <int value="1753813390" label="PPB_Flash_Clipboard;4.0"/>
  <int value="1773992510" label="PPB_PDF;1"/>
  <int value="1775059283" label="PPB_Flash_FontFile;0.1"/>
  <int value="1779899536" label="PPB_Flash_Print;1.0"/>
  <int value="1821321578" label="PPB_UMA_Private;0.2"/>
  <int value="1822250569" label="PPB_Trace_Event(Dev);0.1"/>
  <int value="1827038364" label="PPB_DisplayColorProfile_Private;0.1"/>
  <int value="1838344955" label="PPB_Flash;12.4"/>
  <int value="1845295664" label="PPB_Ext_CrxFileSystem_Private;0.1"/>
  <int value="1866591098" label="PPB_FileRefPrivate;0.1"/>
  <int value="1870131254" label="PPB_MouseLock;1.0"/>
  <int value="1930785273" label="PPB_Var;1.0"/>
  <int value="1944731926" label="PPB_URLRequestInfo;1.0"/>
  <int value="1955790313" label="PPB_MediaStreamVideoTrack;0.1"/>
  <int value="1970082102" label="PPB_TCPServerSocket_Private;0.1"/>
  <int value="1978180250" label="PPB_Flash_Clipboard;5.1"/>
  <int value="1980463089" label="PPB_View;1.1"/>
  <int value="1981643755" label="PPB_FileMapping;0.1"/>
  <int value="1990584694" label="PPB_VpnProvider;0.1"/>
  <int value="1994108724" label="PPB_Flash_File_FileRef;2"/>
  <int value="1997668256" label="PPB_GLESChromiumTextureMapping(Dev);0.1"/>
  <int value="1998274350" label="PPB_Font(Dev);0.6"/>
  <int value="2001322203" label="PPB_Messaging;1.1"/>
  <int value="2003778556" label="PPB_MouseInputEvent;1.1"/>
  <int value="2005291722" label="PPB_NetAddress_Private;1.1"/>
  <int value="2012645499" label="PPB_Find(Dev);0.3"/>
  <int value="2019398562" label="PPB_TCPSocket_Private;0.3"/>
  <int value="2023751176" label="PPB_Printing(Dev);0.7"/>
  <int value="2024537413" label="PPB_Graphics2D;1.0"/>
  <int value="2026777995" label="PPB_VideoDecoder(Dev);0.16"/>
  <int value="2027770764" label="PPB_UDPSocket_Private;0.3"/>
  <int value="2031327332" label="PPB_TextInput(Dev);0.1"/>
  <int value="2056532375" label="PPB_Audio;1.0"/>
  <int value="2062775054" label="PPB_IMEInputEvent(Dev);0.1"/>
  <int value="2070539867" label="PPB_ContentDecryptor_Private;0.13"/>
  <int value="2070630224" label="PPB_AudioInput(Dev);0.3"/>
  <int value="2095945999" label="PPB_NetAddress_Private;0.1"/>
  <int value="2098849894" label="PPB_ContentDecryptor_Private;0.10"/>
  <int value="2123225074" label="PPB_HostResolver_Private;0.1"/>
  <int value="2126196629" label="PPB_UDPSocket_Private;0.4"/>
</enum>

<enum name="PermissionAction" type="int">
  <int value="0" label="GRANTED"/>
  <int value="1" label="DENIED"/>
  <int value="2" label="DISMISSED"/>
  <int value="3" label="IGNORED"/>
  <int value="4" label="REVOKED"/>
</enum>

<enum name="PermissionBubbleType" type="int">
  <int value="0" label="PERMISSION_BUBBLE_UNKNOWN"/>
  <int value="1" label="PERMISSION_BUBBLE_MULTIPLE"/>
  <int value="2" label="PERMISSION_BUBBLE_UNUSED_PERMISSION"/>
  <int value="3" label="PERMISSION_BUBBLE_QUOTA"/>
  <int value="4" label="PERMISSION_BUBBLE_DOWNLOAD"/>
  <int value="5" label="PERMISSION_BUBBLE_MEDIA_STREAM"/>
  <int value="6" label="PERMISSION_BUBBLE_REGISTER_PROTOCOL_HANDLER"/>
  <int value="7" label="PERMISSION_BUBBLE_PERMISSION_GEOLOCATION"/>
  <int value="8" label="PERMISSION_BUBBLE_PERMISSION_MIDI_SYSEX"/>
  <int value="9" label="PERMISSION_BUBBLE_PERMISSION_NOTIFICATIONS"/>
  <int value="10"
      label="PERMISSION_BUBBLE_PERMISSION_PROTECTED_MEDIA_IDENTIFIER"/>
  <int value="11" label="PERMISSION_BUBBLE_PERMISSION_PUSH_MESSAGING"/>
</enum>

<enum name="PermissionStatus" type="int">
  <int value="0" label="PERMISSION_STATUS_GRANTED"/>
  <int value="1" label="PERMISSION_STATUS_DENIED"/>
  <int value="2" label="PERMISSION_STATUS_ASK"/>
</enum>

<enum name="PermissionType" type="int">
  <int value="0" label="PERMISSION_UNKNOWN"/>
  <int value="1" label="PERMISSION_MIDI_SYSEX"/>
  <int value="2" label="PERMISSION_PUSH_MESSAGING"/>
  <int value="3" label="PERMISSION_NOTIFICATIONS"/>
  <int value="4" label="PERMISSION_GEOLOCATION"/>
  <int value="5" label="PERMISSION_PROTECTED_MEDIA_IDENTIFIER"/>
  <int value="6" label="PERMISSION_MIDI"/>
  <int value="7" label="PERMISSION_DURABLE_STORAGE"/>
  <int value="8" label="PERMISSION_AUDIO_CAPTURE"/>
  <int value="9" label="PERMISSION_VIDEO_CAPTURE"/>
  <int value="10" label="PERMISSION_BACKGROUND_SYNC"/>
</enum>

<enum name="PhotoEditorFileType" type="int">
  <int value="0" label="jpg"/>
  <int value="1" label="png"/>
  <int value="2" label="gif"/>
  <int value="3" label="bmp"/>
  <int value="4" label="webp"/>
  <int value="5" label="other"/>
</enum>

<enum name="PhotoEditorLoadMode" type="int">
  <int value="0" label="From full resolution cache"/>
  <int value="1" label="From screen resolution cache"/>
  <int value="2" label="From file"/>
  <int value="3" label="Other"/>
</enum>

<enum name="PhotoEditorSaveResult" type="int">
  <int value="0" label="Failure"/>
  <int value="1" label="Success"/>
  <int value="2" label="Other"/>
</enum>

<enum name="PhotoEditorToolType" type="int">
  <int value="0" label="Auto-fix"/>
  <int value="1" label="Crop"/>
  <int value="2" label="Brightness"/>
  <int value="3" label="Rotate left"/>
  <int value="4" label="Rotate right"/>
  <int value="5" label="Rotate undo"/>
  <int value="6" label="Rotate redo"/>
  <int value="7" label="Share"/>
  <int value="8" label="Other"/>
</enum>

<enum name="PhysicalWebActivityReferer" type="int">
  <int value="0" label="REFERER_UNDEFINED"/>
  <int value="1" label="REFERER_NOTIFICATION"/>
  <int value="2" label="REFERER_OPTIN"/>
  <int value="3" label="REFERER_PREFERENCE"/>
  <int value="4" label="REFERER_DIAGNOSTICS"/>
</enum>

<enum name="PhysicalWebPreferenceStatus" type="int">
  <int value="0" label="OFF"/>
  <int value="1" label="ON"/>
  <int value="2" label="ONBOARDING"/>
</enum>

<enum name="PingResult" type="int">
  <int value="0" label="Success"/>
  <int value="1" label="Response started"/>
  <int value="2" label="Timed out"/>
  <int value="3" label="Canceled"/>
  <int value="4" label="Failed"/>
  <int value="5" label="Uncompleted"/>
</enum>

<enum name="PipelineStatus" type="int">
  <int value="0" label="PIPELINE_OK"/>
  <int value="1" label="PIPELINE_ERROR_URL_NOT_FOUND"/>
  <int value="2" label="PIPELINE_ERROR_NETWORK"/>
  <int value="3" label="PIPELINE_ERROR_DECODE"/>
  <int value="5" label="PIPELINE_ERROR_ABORT"/>
  <int value="6" label="PIPELINE_ERROR_INITIALIZATION_FAILED"/>
  <int value="7" label="PIPELINE_ERROR_REQUIRED_FILTER_MISSING"/>
  <int value="8" label="PIPELINE_ERROR_COULD_NOT_RENDER"/>
  <int value="9" label="PIPELINE_ERROR_READ"/>
  <int value="10" label="PIPELINE_ERROR_OPERATION_PENDING"/>
  <int value="11" label="PIPELINE_ERROR_INVALID_STATE"/>
  <int value="12" label="DEMUXER_ERROR_COULD_NOT_OPEN"/>
  <int value="13" label="DEMUXER_ERROR_COULD_NOT_PARSE"/>
  <int value="14" label="DEMUXER_ERROR_NO_SUPPORTED_STREAMS"/>
  <int value="15" label="DECODER_ERROR_NOT_SUPPORTED"/>
  <int value="16" label="CHUNK_DEMUXER_ERROR_APPEND_FAILED"/>
  <int value="17" label="CHUNK_DEMUXER_ERROR_EOS_STATUS_DECODE_ERROR"/>
  <int value="18" label="CHUNK_DEMUXER_ERROR_EOS_STATUS_NETWORK_ERROR"/>
  <int value="19" label="AUDIO_RENDERER_ERROR"/>
  <int value="20" label="AUDIO_RENDERER_ERROR_SPLICE_FAILED"/>
</enum>

<enum name="PlatformFileError" type="int">
  <int value="0" label="OK"/>
  <int value="1" label="FAILED"/>
  <int value="2" label="IN_USE"/>
  <int value="3" label="EXISTS"/>
  <int value="4" label="NOT_FOUND"/>
  <int value="5" label="ACCESS_DENIED"/>
  <int value="6" label="TOO_MANY_OPENED"/>
  <int value="7" label="NO_MEMORY"/>
  <int value="8" label="NO_SPACE"/>
  <int value="9" label="NOT_A_DIRECTORY"/>
  <int value="10" label="INVALID_OPERATION"/>
  <int value="11" label="SECURITY"/>
  <int value="12" label="ABORT"/>
  <int value="13" label="NOT_A_FILE"/>
  <int value="14" label="NOT_EMPTY"/>
  <int value="15" label="INVALID_URL"/>
  <int value="16" label="I/O"/>
</enum>

<enum name="PlatformNotificationStatus" type="int">
  <int value="0" label="OK"/>
  <int value="1" label="Service Worker not found"/>
  <int value="2" label="Service Worker error"/>
  <int value="3" label="event.waitUntil promise rejected"/>
  <int value="4" label="Database error"/>
</enum>

<enum name="PlatformStateStoreLoadResult" type="int">
  <int value="0" label="SUCCESS"/>
  <int value="1" label="CLEARED_DATA">
    Platform data cleared for new profile.
  </int>
  <int value="2" label="CLEARED_NO_DATA">
    Empty platform data cleared for new profile.
  </int>
  <int value="3" label="DATA_CLEAR_FAILED">
    Failed to clear data for new profile.
  </int>
  <int value="4" label="OPEN_FAILED">Failed to open data store.</int>
  <int value="5" label="READ_FAILED">Failed to read from data store.</int>
  <int value="6" label="PARSE_ERROR">Data could not be parsed.</int>
</enum>

<enum name="PluginAvailabilityStatus" type="int">
  <int value="0" label="PLUGIN_NOT_REGISTERED"/>
  <int value="1" label="PLUGIN_AVAILABLE"/>
  <int value="2" label="PLUGIN_DISABLED"/>
</enum>

<enum name="PluginGroup" type="int">
  <int value="0" label="Other Plugin"/>
  <int value="1" label="Adobe Reader"/>
  <int value="2" label="Java"/>
  <int value="3" label="Quicktime"/>
  <int value="4" label="Shockwave"/>
  <int value="5" label="Real Player"/>
  <int value="6" label="Silverlight"/>
  <int value="7" label="Windows Media Player"/>
  <int value="8" label="Google Talk"/>
  <int value="9" label="Google Earth"/>
</enum>

<enum name="PluginListError" type="int">
  <int value="0" label="NoError"/>
  <int value="1" label="JsonInvalidEscape"/>
  <int value="2" label="JsonSyntaxError"/>
  <int value="3" label="JsonUnexpectedToken"/>
  <int value="4" label="JsonTrailingComma"/>
  <int value="5" label="JsonTooMuchNesting"/>
  <int value="6" label="JsonUnexpectedDataAfterRoot"/>
  <int value="7" label="JsonUnsupportedEncoding"/>
  <int value="8" label="JsonUnquotedDictionaryKey"/>
  <int value="9" label="SchemaError"/>
</enum>

<enum name="PluginLoadResult" type="int">
  <int value="0" label="LOAD_SUCCESS"/>
  <int value="1" label="LOAD_FAILED"/>
  <int value="2" label="ENTRY_POINT_MISSING"/>
  <int value="3" label="INIT_FAILED"/>
  <int value="4" label="FILE_MISSING"/>
</enum>

<enum name="PluginPowerSaverPeripheralHeuristicDecision" type="int">
  <int value="0" label="Peripheral"/>
  <int value="1" label="Essential Same-Origin"/>
  <int value="2" label="Essential Cross-Origin Big"/>
  <int value="3" label="Essential Cross-Origin Whitelisted"/>
  <int value="4" label="Essential Cross-Origin Tiny"/>
  <int value="5" label="Essential Unknown Size"/>
</enum>

<enum name="PluginPowerSaverPosterParamPresence" type="int">
  <int value="0" label="No poster param. Plugin power saver disabled."/>
  <int value="1" label="No poster param. Plugin power saver enabled."/>
  <int value="2" label="Poster param exists. Plugin power saver disabled."/>
  <int value="3" label="Poster param exists. Plugin power saver enabled."/>
</enum>

<enum name="PluginPowerSaverUnthrottleMethod" type="int">
  <int value="0" label="Never Unthrottled"/>
  <int value="1" label="Unthrottled by Click"/>
  <int value="2" label="Unthrottled by Retroactive Whitelist"/>
  <int value="3" label="Unthrottled by Audio Playback"/>
  <int value="4" label="Unthrottled by Size Change"/>
</enum>

<enum name="PNaClOptionsOptLevelEnum" type="int">
  <int value="0" label="0"/>
  <int value="1" label="1"/>
  <int value="2" label="2"/>
  <int value="3" label="3"/>
  <int value="4" label="Default / Unknown"/>
</enum>

<enum name="PNaClTranslationCacheEnum" type="int">
  <int value="0" label="Miss"/>
  <int value="1" label="Hit"/>
</enum>

<enum name="PointerSensitivity" type="int">
  <int value="1" label="1"/>
  <int value="2" label="2"/>
  <int value="3" label="3"/>
  <int value="4" label="4"/>
  <int value="5" label="5"/>
</enum>

<enum name="PolicyLoadStatus" type="int">
  <int value="0" label="Success"/>
  <int value="1" label="No Policy File"/>
  <int value="2" label="Load Error"/>
</enum>

<enum name="PolicyValidationStatus" type="int">
  <int value="0" label="OK"/>
  <int value="1" label="Bad Initial Signature"/>
  <int value="2" label="Bad Signature"/>
  <int value="3" label="Policy Error Code"/>
  <int value="4" label="Payload Parse Error"/>
  <int value="5" label="Wrong Policy Type"/>
  <int value="6" label="Wrong Settings Entity ID"/>
  <int value="7" label="Bad Timestamp"/>
  <int value="8" label="Wrong Token"/>
  <int value="9" label="Wrong Username"/>
  <int value="10" label="Policy Parse Error"/>
  <int value="11" label="Bad Key Validation Signature"/>
</enum>

<enum name="Ports" type="int">
  <int value="80" label="Port 80"/>
  <int value="443" label="Port 443"/>
</enum>

<enum name="PostMergeVerificationOutcome" type="int">
  <int value="0" label="Undefined"/>
  <int value="1" label="Succeeded"/>
  <int value="2" label="No accounts found"/>
  <int value="3" label="Missing primary account"/>
  <int value="4" label="Primary account is not the first"/>
  <int value="5" label="Verification failed"/>
  <int value="6" label="Connection failed"/>
  <int value="7" label="Overflow"/>
</enum>

<enum name="PostSubmitNavigation" type="int">
  <int value="0" label="Same domain"/>
  <int value="1" label="Different domain"/>
</enum>

<enum name="PowerBrightnessAdjust" type="int">
  <int value="0" label="Brightness Down"/>
  <int value="1" label="Brightness Up"/>
  <int value="2" label="Brightness Absolute"/>
</enum>

<enum name="PowerChargerType" type="int">
  <int value="0" label="Unknown charger"/>
  <int value="1" label="MAINS charger"/>
  <int value="2" label="USB Charger"/>
  <int value="3" label="Unconfirmed Spring Charger"/>
  <int value="4" label="Safe Spring Charger"/>
</enum>

<enum name="PowerwashDialogViewType" type="int">
  <int value="0" label="Invoked on settings page"/>
  <int value="1" label="Shortcut. Confirmation for powerwash only."/>
  <int value="2" label="Shortcut. Confirmation for powerwash and rollback."/>
  <int value="3" label="Shortcut. Offer. Rollback unavailable."/>
  <int value="4" label="Shortcut. Offer. Rollback available."/>
  <int value="5" label="Shortcut. Restart required."/>
</enum>

<enum name="PreconnectedNavigation" type="int">
  <int value="0" label="No recent pre-connect to the page"/>
  <int value="1" label="Page nav. preceded by a pre-connect"/>
</enum>

<enum name="PreconnectMotivation" type="int">
  <int value="0" label="MOUSE_OVER_MOTIVATED"/>
  <int value="1" label="PAGE_SCAN_MOTIVATED"/>
  <int value="2" label="UNIT_TEST_MOTIVATED"/>
  <int value="3" label="LINKED_MAX_MOTIVATED"/>
  <int value="4" label="OMNIBOX_MOTIVATED"/>
  <int value="5" label="STARTUP_LIST_MOTIVATED"/>
  <int value="6" label="EARLY_LOAD_MOTIVATED"/>
  <int value="7" label="NO_PREFETCH_MOTIVATION"/>
  <int value="8" label="STATIC_REFERAL_MOTIVATED"/>
  <int value="9" label="LEARNED_REFERAL_MOTIVATED"/>
  <int value="10" label="SELF_REFERAL_MOTIVATED"/>
</enum>

<enum name="PreconnectSubresourceEval" type="int">
  <int value="0" label="PRECONNECTION"/>
  <int value="1" label="PRERESOLUTION"/>
  <int value="2" label="TOO_NEW"/>
</enum>

<enum name="PreconnectTriggerUsed" type="int">
  <int value="0" label="The pre-connect triggered host was not accessed"/>
  <int value="1" label="The pre-connect triggered host was accessed"/>
</enum>

<enum name="PredictionStatus" type="int">
  <int value="0" label="No prediction"/>
  <int value="1" label="Successful prediction"/>
  <int value="2" label="Wrong prediction"/>
</enum>

<enum name="PrefetchStatus" type="int">
  <int value="0" label="undefined"/>
  <int value="1" label="success from cache"/>
  <int value="2" label="success from network"/>
  <int value="3" label="canceled in-flight"/>
</enum>

<enum name="PrefHashStoreVersion" type="int">
  <int value="0" label="VERSION_UNINITIALIZED"/>
  <int value="1" label="VERSION_PRE_MIGRATION"/>
  <int value="2" label="VERSION_LATEST"/>
</enum>

<enum name="PrerenderCookieSendType" type="int">
  <obsolete>
    Deprecated March 13 2015.
  </obsolete>
  <int value="0" label="no cookies sent"/>
  <int value="1" label="first party cookies sent"/>
  <int value="2" label="third party cookies sent"/>
  <int value="3" label="third party cookies sent for blocking resource"/>
</enum>

<enum name="PrerenderCookieStatus" type="int">
  <obsolete>
    Deprecated March 13 2015.
  </obsolete>
  <int value="0" label="no action"/>
  <int value="1" label="[main frame send]"/>
  <int value="2" label="[main frame change]"/>
  <int value="3" label="[main frame send, main frame change]"/>
  <int value="4" label="[other send]"/>
  <int value="5" label="[main frame send, other send]"/>
  <int value="6" label="[main frame change, other send]"/>
  <int value="7" label="[main frame send, main frame change, other send]"/>
  <int value="8" label="[other change]"/>
  <int value="9" label="[main frame send, other change]"/>
  <int value="10" label="[main frame change, other change]"/>
  <int value="11" label="[main frame send, main frame change, other change]"/>
  <int value="12" label="[other send, other change]"/>
  <int value="13" label="[main frame send, other send, other change]"/>
  <int value="14" label="[main frame change, other send, other change]"/>
  <int value="15"
      label="[main frame send, main frame change, other send, other change]"/>
</enum>

<enum name="PrerenderEvent" type="int">
  <obsolete>
    Deprecated Dec 12 2014.
  </obsolete>
  <int value="0" label="Swapin no delegate"/>
  <int value="1" label="Swapin candidate"/>
  <int value="2" label="Swapin candidate namespace matces"/>
  <int value="3" label="Swapin no merge pending"/>
  <int value="4" label="Swapin merging disabled"/>
  <int value="5" label="Swapin issuing merge"/>
  <int value="6" label="Merge for swapin candidate"/>
  <int value="7" label="Merge result no pending swapin"/>
  <int value="8" label="Merge result timeout cb"/>
  <int value="9" label="Merge result result cb"/>
  <int value="10" label="Merge result timed out"/>
  <int value="11" label="Merge result merge done"/>
  <int value="12" label="Merge result: namespace not found"/>
  <int value="13" label="Merge result: namespace not alias"/>
  <int value="14" label="Merge result: not logging"/>
  <int value="15" label="Merge result: no transactions"/>
  <int value="16" label="Merge result: too many transactions"/>
  <int value="17" label="Merge result: not mergeable"/>
  <int value="18" label="Merge result: mergeable"/>
  <int value="19" label="Merge result merge failed"/>
  <int value="20" label="Merge result swapping in"/>
  <int value="21" label="Merge result swapin successful"/>
  <int value="22" label="Merge result swapin failed"/>
</enum>

<enum name="PrerenderFinalStatus" type="int">
  <int value="0" label="USED"/>
  <int value="1" label="TIMED_OUT"/>
  <int value="2" label="EVICTED"/>
  <int value="3" label="MANAGER_SHUTDOWN"/>
  <int value="4" label="CLOSED"/>
  <int value="5" label="CREATE_NEW_WINDOW"/>
  <int value="6" label="PROFILE_DESTROYED"/>
  <int value="7" label="APP_TERMINATING"/>
  <int value="8" label="JAVASCRIPT_ALERT"/>
  <int value="9" label="AUTH_NEEDED"/>
  <int value="10" label="HTTPS"/>
  <int value="11" label="DOWNLOAD"/>
  <int value="12" label="MEMORY_LIMIT_EXCEEDED"/>
  <int value="13" label="JS_OUT_OF_MEMORY"/>
  <int value="14" label="RENDERER_UNRESPONSIVE"/>
  <int value="15" label="TOO_MANY_PROCESSES"/>
  <int value="16" label="RATE_LIMIT_EXCEEDED"/>
  <int value="17" label="PENDING_SKIPPED"/>
  <int value="18" label="CONTROL_GROUP"/>
  <int value="19" label="HTML5_MEDIA"/>
  <int value="20" label="SOURCE_RENDER_VIEW_CLOSED"/>
  <int value="21" label="RENDERER_CRASHED"/>
  <int value="22" label="UNSUPPORTED_SCHEME"/>
  <int value="23" label="INVALID_HTTP_METHOD"/>
  <int value="24" label="WINDOW_PRINT"/>
  <int value="25" label="RECENTLY_VISITED"/>
  <int value="26" label="WINDOW_OPENER"/>
  <int value="27" label="PAGE_ID_CONFLICT"/>
  <int value="28" label="SAFE_BROWSING"/>
  <int value="29" label="FRAGMENT_MISMATCH"/>
  <int value="30" label="SSL_CLIENT_CERTIFICATE_REQUESTED"/>
  <int value="31" label="CACHE_OR_HISTORY_CLEARED"/>
  <int value="32" label="CANCELLED"/>
  <int value="33" label="SSL_ERROR"/>
  <int value="34" label="CROSS_SITE_NAVIGATION_PENDING"/>
  <int value="35" label="DEVTOOLS_ATTACHED"/>
  <int value="36" label="SESSION_STORAGE_NAMESPACE_MISMATCH"/>
  <int value="37" label="NO_USE_GROUP"/>
  <int value="38" label="MATCH_COMPLETE_DUMMY"/>
  <int value="39" label="DUPLICATE"/>
  <int value="40" label="OPEN_URL"/>
  <int value="41" label="WOULD_HAVE_BEEN_USED"/>
  <int value="42" label="REGISTER_PROTOCOL_HANDLER"/>
  <int value="43" label="CREATING_AUDIO_STREAM"/>
  <int value="44" label="PAGE_BEING_CAPTURED"/>
  <int value="45" label="BAD_DEFERRED_REDIRECT"/>
  <int value="46" label="NAVIGATION_UNCOMMITTED"/>
  <int value="47" label="NEW_NAVIGATION_ENTRY"/>
  <int value="48" label="COOKIE_STORE_NOT_LOADED"/>
  <int value="49" label="COOKIE_CONFLICT"/>
  <int value="50" label="NON_EMPTY_BROWSING_INSTANCE"/>
  <int value="51" label="NAVIGATION_INTERCEPTED"/>
  <int value="52" label="PRERENDERING_DISABLED"/>
  <int value="53" label="CELLULAR_NETWORK"/>
  <int value="54" label="BLOCK_THIRD_PARTY_COOKIES"/>
</enum>

<enum name="PrerenderHoverEvent" type="int">
  <obsolete>
    deprecated May 10 2012
  </obsolete>
  <int value="0" label="HOVER_EVENT_START"/>
  <int value="1" label="HOVER_EVENT_TOO_SHORT"/>
  <int value="2" label="HOVER_EVENT_REPLACED"/>
  <int value="3" label="HOVER_EVENT_CLICK"/>
</enum>

<enum name="PrerenderLocalPredictorEvents" type="int">
  <obsolete>
    Deprecated April 2015
  </obsolete>
  <int value="0" label="Constructed"/>
  <int value="1" label="Init scheduled"/>
  <int value="2" label="Init started"/>
  <int value="3" label="Init failed: no history"/>
  <int value="4" label="Init succeeded"/>
  <int value="5" label="AddVisit"/>
  <int value="6" label="AddVisit initialized"/>
  <int value="7" label="AddVisit prerender identified"/>
  <int value="8" label="AddVisit relevant transition"/>
  <int value="9" label="AddVisit identified prerender candidate"/>
  <int value="10" label="AddVisit prerendering"/>
  <int value="11" label="Got prerender url"/>
  <int value="12" label="Error: no prerender url for PLT"/>
  <int value="13" label="AddVisit prerender rextended"/>
  <int value="14" label="URL lookup result"/>
  <int value="15" label="URL lookup result: root page"/>
  <int value="16" label="URL lookup result: http"/>
  <int value="17" label="URL lookup result: has query string"/>
  <int value="18" label="URL lookup result: contains logout"/>
  <int value="19" label="URL lookup result: contians login"/>
  <int value="20" label="Start url lookup"/>
  <int value="21" label="AddVisit not root page"/>
  <int value="22" label="Whitelist error"/>
  <int value="23" label="Whitelist ok"/>
  <int value="24" label="URL lookup result: on whitelist"/>
  <int value="25" label="URL lookup result: on whitelist root page"/>
  <int value="26" label="URL lookup result: extended root page"/>
  <int value="27" label="URL lookup result: root page http"/>
  <int value="28" label="URL lookup failed"/>
  <int value="29" label="URL lookup no source webcontents found"/>
  <int value="30" label="URL lookup no logged in table found"/>
  <int value="31" label="URL lookup issuing logged in lookup"/>
  <int value="32" label="Continue prerender check started"/>
  <int value="33" label="Continue prerender check no url"/>
  <int value="34" label="Continue prerender check priority too low"/>
  <int value="35" label="Continue prerender check urls identical but fragemet"/>
  <int value="36" label="Continue prerender check https"/>
  <int value="37" label="Continue prerender check root page"/>
  <int value="38" label="Continue prerender check logout url"/>
  <int value="39" label="Continue prerender check login url"/>
  <int value="40" label="Continue prerender check not logged in"/>
  <int value="41" label="Continue prerender check fallthrough no prerender"/>
  <int value="42" label="Continue prerender check issuing prerender"/>
  <int value="43" label="Issuing prerender"/>
  <int value="44" label="No prerender candidates"/>
  <int value="45" label="Got history issuing lookup"/>
  <int value="46" label="Tab Helper URL seen"/>
  <int value="47" label="Tab Helper URL seen match"/>
  <int value="48" label="Tab Helper URL seen namespace match"/>
  <int value="49" label="URL lookup multiple source webcontents"/>
  <int value="50" label="Continue prerender check side-effect free whitelist"/>
  <int value="51" label="Continue prerender check Examine next URL"/>
  <int value="52" label="Issuing prerender, already prerendering"/>
  <int value="53" label="Issuing prerender, new prerender"/>
  <int value="54" label="Issuing prerender, cancelled old prerender"/>
  <int value="55" label="Continue prerender check fallthrough prerendering"/>
  <int value="56" label="URL lookup success"/>
  <int value="57" label="Prerender Service disabled"/>
  <int value="58" label="Prerender Service issued lookup"/>
  <int value="59" label="Prerender Service lookup timed out"/>
  <int value="60" label="Prerender Service received result"/>
  <int value="61" label="Prerender Service no record for result"/>
  <int value="62" label="Prerender Service parsed correctly"/>
  <int value="63" label="Prerender Service parse error"/>
  <int value="64" label="Prerender Service parse error incorrect JSON"/>
  <int value="65" label="Prerender Service hinting timed out"/>
  <int value="66" label="Prerender Service hinting url lookup timed out"/>
  <int value="67" label="Prerender Service candidate url lookup timed out"/>
  <int value="68" label="Continue prerender check service whitelist"/>
  <int value="69" label="Continue prerender check next URL local"/>
  <int value="70" label="Continue prerender check next URL service"/>
  <int value="71" label="AddVisit relevant transition repeat URL"/>
  <int value="72" label="AddVisit relevant transition new URL"/>
  <int value="73" label="Tab Helper namespace mismatch: no namespace"/>
  <int value="74" label="Tab Helper namespace mismatch: merge issued"/>
  <int value="75" label="Namespace mismatch: merge result received"/>
  <int value="76" label="Namespace mismatch: merge result namespace not found"/>
  <int value="77" label="Namespace mismatch: merge result not logging"/>
  <int value="78" label="Namespace mismatch: merge result no transactions"/>
  <int value="79"
      label="Namespace mismatch: merge result too many transactions"/>
  <int value="80" label="Namespace mismatch: merge result not mergeable"/>
  <int value="81" label="Namespace mismatch: merge result mergeable"/>
  <int value="82" label="Init failed unencrypted sync not enabled"/>
  <int value="83" label="Continue prerender check next URL not skipped"/>
  <int value="84" label="Prerender Service returned hinting candidates"/>
  <int value="85" label="Namespace mismatch: merge result namespace not alias"/>
  <int value="86" label="Tab Helper URL seen entry"/>
  <int value="87" label="Tab Helper URL seen match browser navigation"/>
  <int value="88" label="Tab Helper URL seen namespace match entry"/>
  <int value="89"
      label="Tab Helper URL seen namespace match browser navigation"/>
  <int value="90" label="Prefetch List item added"/>
  <int value="91" label="Prefetch list seen tab contents"/>
  <int value="92" label="Prefetch list seen history"/>
  <int value="93" label="Issue Prerender called"/>
  <int value="94" label="Issue Prerender prefetch enabled"/>
  <int value="95" label="Issue Prerender prefetch issued"/>
</enum>

<enum name="PrerenderLocalVisitCoreTransition" type="int">
  <obsolete>
    Deprecated Nov 16 2012
  </obsolete>
  <int value="0" label="LINK"/>
  <int value="1" label="TYPED"/>
  <int value="2" label="AUTO_BOOKMARK"/>
  <int value="3" label="AUTO_SUBFRAME"/>
  <int value="4" label="MANUAL_SUBFRAME"/>
  <int value="5" label="GENERATED"/>
  <int value="6" label="START_PAGE"/>
  <int value="7" label="FORM_SUBMIT"/>
  <int value="8" label="RELOAD"/>
  <int value="9" label="KEYWORD"/>
  <int value="10" label="GENERATED"/>
</enum>

<enum name="PrerenderLocalVisitEvents" type="int">
  <obsolete>
    Deprecated Nov 16 2012
  </obsolete>
  <int value="0" label="V1_VISIT"/>
  <int value="1" label="V1_PRERENDER_STARTED_1"/>
  <int value="2" label="V1_PRERENDER_USED_1"/>
  <int value="3" label="V1_PRERENDER_STARTED_3"/>
  <int value="4" label="V1_PRERENDER_USED_3"/>
  <int value="5" label="V1_PRERENDER_STARTED_5"/>
  <int value="6" label="V1_PRERENDER_USED_5"/>
  <int value="10" label="VISIT"/>
  <int value="11" label="VISIT_EXCLUDE_BACK_FORWARD"/>
  <int value="12" label="VISIT_EXCLUDE_HOME_PAGE"/>
  <int value="13" label="VISIT_EXCLUDE_REDIRECT_CHAIN"/>
  <int value="14" label="PRERENDER_STARTED_1"/>
  <int value="15" label="PRERENDER_USED_1"/>
  <int value="16" label="PRERENDER_STARTED_3"/>
  <int value="17" label="PRERENDER_USED_3"/>
  <int value="18" label="PRERENDER_STARTED_5"/>
  <int value="19" label="PRERENDER_USED_5"/>
</enum>

<enum name="PrerenderMode" type="int">
  <obsolete>
    deprecated Nov 16 2012
  </obsolete>
  <int value="0" label="PRERENDER_MODE_DISABLED"/>
  <int value="1" label="PRERENDER_MODE_ENABLED"/>
  <int value="2" label="PRERENDER_MODE_EXPERIMENT_CONTROL_GROUP"/>
  <int value="3" label="PRERENDER_MODE_EXPERIMENT_PRERENDER_GROUP"/>
  <int value="4" label="PRERENDER_MODE_EXPERIMENT_5MIN_TTL_GROUP"/>
  <int value="5" label="PRERENDER_MODE_EXPERIMENT_NO_USE_GROUP"/>
  <int value="6" label="PRERENDER_MODE_EXPERIMENT_MULTI_PRERENDER_GROUP"/>
  <int value="7" label="PRERENDER_MODE_EXPERIMENT_15MIN_TTL_GROUP"/>
  <int value="8" label="PRERENDER_MODE_EXPERIMENT_MATCH_COMPLETE_GROUP"/>
</enum>

<enum name="PrerenderPageviewEvents" type="int">
  <obsolete>
    deprecated Nov 16 2012
  </obsolete>
  <int value="0" label="PAGEVIEW_EVENT_NEW_URL"/>
  <int value="1" label="PAGEVIEW_EVENT_TOP_SITE_NEW_URL"/>
  <int value="2" label="PAGEVIEW_EVENT_LOAD_START"/>
  <int value="3" label="PAGEVIEW_EVENT_TOP_SITE_LOAD_START"/>
</enum>

<enum name="PrerenderRelTypes" type="int">
  <int value="0" label="PRERENDER_REL_TYPE_NONE"/>
  <int value="1" label="PRERENDER_REL_TYPE_PRERENDER"/>
  <int value="2" label="PRERENDER_REL_TYPE_NEXT"/>
  <int value="3" label="PRERENDER_REL_TYPE_PRERENDER_AND_NEXT"/>
</enum>

<enum name="PrerenderSchemeCancelReason" type="int">
  <int value="0" label="EXTERNAL_PROTOCOL"/>
  <int value="1" label="DATA"/>
  <int value="2" label="BLOB"/>
  <int value="3" label="FILE"/>
  <int value="4" label="FILESYSTEM"/>
  <int value="5" label="WEBSOCKET"/>
  <int value="6" label="FTP"/>
  <int value="7" label="CHROME"/>
  <int value="8" label="CHROME_EXTENSION"/>
  <int value="9" label="ABOUT"/>
  <int value="10" label="UNKNOWN"/>
</enum>

<enum name="PrerenderTabHelperEvents" type="int">
  <obsolete>
    Deprecated April 2015
  </obsolete>
  <int value="0" label="Table requested"/>
  <int value="1" label="Table present"/>
  <int value="2" label="Mainframe change"/>
  <int value="3" label="Mainframe change, logged in"/>
  <int value="4" label="Mainframe commit"/>
  <int value="5" label="Mainframe commit, logged in"/>
  <int value="6" label="Login action added"/>
  <int value="7" label="Login action added, Mainframe"/>
  <int value="8" label="Login action added, Mainframe, pw empty"/>
  <int value="9" label="Login action added, Subframe"/>
  <int value="10" label="Login action added, Subframe, pw empty"/>
</enum>

<enum name="PreTapEvents" type="int">
  <int value="0" label="no event"/>
  <int value="1" label="tapdown"/>
  <int value="2" label="tapunconfirmed"/>
  <int value="3" label="tapdown + tapunconfirmed"/>
</enum>

<enum name="PrinterServiceEventType" type="int">
  <int value="0" label="Printer added"/>
  <int value="1" label="Page displayed (Deprecated)"/>
  <int value="2" label="Printer supported notification shown"/>
  <int value="3" label="Printer not supported notification shown"/>
  <int value="4" label="Printer provider Web Store app launched"/>
</enum>

<enum name="PrintPreviewFailureType" type="int">
  <int value="0" label="No error"/>
  <int value="1" label="Bad settings from print preview tab"/>
  <int value="2" label="Copy metadata failed (Deprecated)"/>
  <int value="3" label="Metafile init failed"/>
  <int value="4" label="0-page preview"/>
  <int value="5" label="Mac draft metafile init failed (Deprecated)"/>
  <int value="6" label="PreviewPageRendered with no metafile"/>
  <int value="7" label="UpdatePrintSettings failed"/>
  <int value="8" label="Received bad printer settings"/>
</enum>

<enum name="PrintPreviewFontTypeType" type="int">
  <int value="0" label="TYPE1"/>
  <int value="1" label="TYPE1_CID"/>
  <int value="2" label="CFF"/>
  <int value="3" label="TRUETYPE"/>
  <int value="4" label="OTHER"/>
  <int value="5" label="NOT_EMBEDDABLE"/>
</enum>

<enum name="PrintPreviewGcpPromoBuckets" type="int">
  <int value="0" label="PROMO_SHOWN"/>
  <int value="1" label="PROMO_CLICKED"/>
  <int value="2" label="PROMO_CLOSED"/>
</enum>

<enum name="PrintPreviewHelperEvents" type="int">
  <int value="0" label="PREVIEW_EVENT_REQUESTED"/>
  <int value="1" label="PREVIEW_EVENT_CACHE_HIT"/>
  <int value="2" label="PREVIEW_EVENT_CREATE_DOCUMENT"/>
  <int value="3" label="PREVIEW_EVENT_NEW_SETTINGS"/>
</enum>

<enum name="PrintPreviewPrintDestinationBuckets" type="int">
  <int value="0" label="DESTINATION_SHOWN"/>
  <int value="1" label="DESTINATION_CLOSED_CHANGED"/>
  <int value="2" label="DESTINATION_CLOSED_UNCHANGED"/>
  <int value="3" label="SIGNIN_PROMPT"/>
  <int value="4" label="SIGNIN_TRIGGERED"/>
  <int value="5" label="PRIVET_DUPLICATE_SELECTED"/>
  <int value="6" label="CLOUD_DUPLICATE_SELECTED"/>
  <int value="7" label="REGISTER_PROMO_SHOWN"/>
  <int value="8" label="REGISTER_PROMO_SELECTED"/>
  <int value="9" label="ACCOUNT_CHANGED"/>
  <int value="10" label="ADD_ACCOUNT_SELECTED"/>
  <int value="11" label="INVITATION_AVAILABLE"/>
  <int value="12" label="INVITATION_ACCEPTED"/>
  <int value="13" label="INVITATION_REJECTED"/>
</enum>

<enum name="PrintPreviewPrintSettingsUiBuckets" type="int">
  <int value="0" label="ADVANCED_SETTINGS_DIALOG_SHOWN"/>
  <int value="1" label="ADVANCED_SETTINGS_DIALOG_CANCELED"/>
  <int value="2" label="MORE_SETTINGS_CLICKED"/>
  <int value="3" label="LESS_SETTINGS_CLICKED"/>
  <int value="4" label="PRINT_WITH_SETTINGS_EXPANDED"/>
  <int value="5" label="PRINT_WITH_SETTINGS_COLLAPSED"/>
</enum>

<enum name="PrintPreviewUserActionType" type="int">
  <int value="0" label="PRINT_TO_PRINTER"/>
  <int value="1" label="PRINT_TO_PDF"/>
  <int value="2" label="CANCEL"/>
  <int value="3" label="FALLBACK_TO_ADVANCED_SETTINGS_DIALOG"/>
  <int value="4" label="PREVIEW_FAILED"/>
  <int value="5" label="PREVIEW_STARTED"/>
  <int value="6" label="INITIATOR_TAB_CRASHED"/>
  <int value="7" label="INITIATOR_TAB_CLOSED"/>
  <int value="8" label="PRINT_WITH_CLOUD_PRINT"/>
  <int value="9" label="PRINT_WITH_PRIVET"/>
  <int value="10" label="PRINT_WITH_EXTENSION"/>
</enum>

<enum name="PrintSettings" type="int">
  <int value="0" label="LANDSCAPE"/>
  <int value="1" label="PORTRAIT"/>
  <int value="2" label="COLOR"/>
  <int value="3" label="BLACK_AND_WHITE"/>
  <int value="4" label="COLLATE"/>
  <int value="5" label="SIMPLEX"/>
  <int value="6" label="DUPLEX"/>
  <int value="7" label="TOTAL"/>
  <int value="8" label="HEADERS_AND_FOOTERS"/>
  <int value="9" label="CSS_BACKGROUND"/>
  <int value="10" label="SELECTION_ONLY"/>
  <int value="11" label="EXTERNAL_PDF_PREVIEW"/>
  <int value="12" label="PAGE_RANGE"/>
  <int value="13" label="DEFAULT_MEDIA"/>
  <int value="14" label="NON_DEFAULT_MEDIA"/>
  <int value="15" label="COPIES"/>
  <int value="16" label="NON_DEFAULT_MARGINS"/>
  <int value="17" label="DISTILL_PAGE"/>
</enum>

<enum name="PrivetNotificationsEvent" type="int">
  <int value="0" label="PRIVET_SERVICE_STARTED"/>
  <int value="1" label="PRIVET_LISTER_STARTED"/>
  <int value="2" label="PRIVET_DEVICE_CHANGED"/>
  <int value="3" label="PRIVET_INFO_DONE"/>
  <int value="4" label="PRIVET_NOTIFICATION_SHOWN"/>
  <int value="5" label="PRIVET_NOTIFICATION_CANCELED"/>
  <int value="6" label="PRIVET_NOTIFICATION_CLICKED"/>
  <int value="7" label="PRIVET_DISABLE_NOTIFICATIONS_CLICKED"/>
</enum>

<enum name="ProcessType" type="int">
  <obsolete>
    Deprecated 3/2013. No longer generated.
  </obsolete>
  <summary>
    The value for type comes from the ProcessType enum in
    content/public/common/process_type.h.
  </summary>
  <int value="1" label="UNKNOWN"/>
  <int value="2" label="BROWSER"/>
  <int value="3" label="RENDER"/>
  <int value="4" label="PLUGIN"/>
  <int value="5" label="WORKER"/>
  <int value="6" label="NACL"/>
  <int value="7" label="UTILITY"/>
  <int value="8" label="PROFILE_IMPORT"/>
  <int value="9" label="ZYGOTE"/>
  <int value="10" label="SANDBOX_HELPER"/>
  <int value="11" label="NACL_BROKER_PROCESS"/>
  <int value="12" label="GPU_PROCESS"/>
  <int value="13" label="PPAPI_PLUGIN_PROCESS"/>
</enum>

<enum name="ProcessType2" type="int">
  <summary>
    The value for type comes from the ProcessType enum in
    content/public/common/process_type.h.
  </summary>
  <int value="1" label="UNKNOWN"/>
  <int value="2" label="BROWSER"/>
  <int value="3" label="RENDER"/>
  <int value="4" label="PLUGIN"/>
  <int value="5" label="WORKER"/>
  <int value="6" label="UTILITY"/>
  <int value="7" label="ZYGOTE"/>
  <int value="8" label="SANDBOX_HELPER"/>
  <int value="9" label="GPU_PROCESS"/>
  <int value="10" label="PPAPI_PLUGIN_PROCESS"/>
  <int value="11" label="PPAPI_BROKER_PROCESS"/>
  <int value="12" label="PROFILE_IMPORT"/>
  <int value="13" label="NACL"/>
  <int value="14" label="NACL_BROKER_PROCESS"/>
</enum>

<enum name="ProfileAddNewUser" type="int">
  <int value="0" label="Add new user from icon menu"/>
  <int value="1" label="Add new user from title bar menu"/>
  <int value="2" label="Add new user from settings dialog"/>
  <int value="3" label="Add new user from the User Manager"/>
  <int value="4" label="Auto-created after deleting last user"/>
</enum>

<enum name="ProfileAndroidAccountManagementMenu" type="int">
  <int value="0" label="Opened Menu">
    User arrived at the Account management screen.
  </int>
  <int value="1" label="Add Account">
    User arrived at the Account management screen, and clicked Add account.
  </int>
  <int value="2" label="Go Incognito">
    User arrived at the Account management screen, and clicked Go incognito.
  </int>
  <int value="3" label="Primary Account">
    User arrived at the Account management screen, and clicked on primary.
  </int>
  <int value="4" label="Secondary Account">
    User arrived at the Account management screen, and clicked on secondary.
  </int>
  <int value="5" label="Toggled Signout">
    User arrived at the Account management screen, toggled Chrome signout.
  </int>
  <int value="6" label="Confirm Signout">
    User toggled Chrome signout, and clicked Signout.
  </int>
  <int value="7" label="Cancel Signout">
    User toggled Chrome signout, and clicked Cancel.
  </int>
</enum>

<enum name="ProfileAuth" type="int">
  <int value="0" label="Authentication was unnecessary (profile not locked)"/>
  <int value="1" label="Authentication performed using local credentials"/>
  <int value="2" label="Authentication performed on-line"/>
  <int value="3" label="Authentication failed"/>
  <int value="4" label="Authentication failed due to being offline"/>
</enum>

<enum name="ProfileAvatar" type="int">
  <int value="0" label="Generic"/>
  <int value="1" label="Generic Aqua"/>
  <int value="2" label="Generic Blue"/>
  <int value="3" label="Generic Green"/>
  <int value="4" label="Generic Orange"/>
  <int value="5" label="Generic Purple"/>
  <int value="6" label="Generic Red"/>
  <int value="7" label="Generic Yellow"/>
  <int value="8" label="Secret Agent"/>
  <int value="9" label="Superhero"/>
  <int value="10" label="Volleyball"/>
  <int value="11" label="Businessman"/>
  <int value="12" label="Ninja"/>
  <int value="13" label="Alien"/>
  <int value="14" label="Super Awesome Cool Smiley Face"/>
  <int value="15" label="Flower"/>
  <int value="16" label="Pizza"/>
  <int value="17" label="Soccer"/>
  <int value="18" label="Burger"/>
  <int value="19" label="Cat"/>
  <int value="20" label="Cupcake"/>
  <int value="21" label="Dog"/>
  <int value="22" label="Horse"/>
  <int value="23" label="Margarita"/>
  <int value="24" label="Note"/>
  <int value="25" label="Sun And Cloud"/>
  <int value="26" label="Unknown"/>
  <int value="27" label="GAIA"/>
</enum>

<enum name="ProfileCreateResult" type="int">
  <int value="0" label="Failed locally"/>
  <int value="1" label="Failed remotely"/>
  <int value="2" label="Created but not initialized (should never happen)"/>
  <int value="3" label="Succeeded"/>
  <int value="4" label="Canceled"/>
</enum>

<enum name="ProfileDeleteAction" type="int">
  <int value="0" label="Settings Page">
    The user confirmed deletion of a profile from the settings page.
  </int>
  <int value="1" label="User Manager">
    The user confirmed deletion of a profile from the User Manager.
  </int>
  <int value="2" label="User Manager Warning Shown">
    The user clicked 'Remove this person' in the user manager and was shown the
    profile deletion warning. No profile deletion action has been started yet.
  </int>
  <int value="3" label="Settings Page Warning Shown">
    The user clicked 'Remove...' or the 'X' in the settings page and was shown
    the profile deletion warning. No profile deletion action has been started
    yet.
  </int>
</enum>

<enum name="ProfileDesktopMenu" type="int">
  <int value="0" label="Locked in Menu">
    User opened the user menu, and clicked lock.
  </int>
  <int value="1" label="Remove Account in Menu">
    User opened the user menu, and removed an account.
  </int>
  <int value="2" label="Add Account in Menu">
    User opened the user menu, and started adding an account.
  </int>
  <int value="3" label="Edit Profile Name in Menu">
    User opened the user menu, and changed the profile name.
  </int>
  <int value="4" label="Edit Profile Image in Menu">
    User opened the user menu, and started selecting a new profile image.
  </int>
  <int value="5" label="Open User Manager in Menu">
    User opened the user menu, and opened the User Manager.
  </int>
  <int value="6" label="Go Incognito from Menu">
    User opened the user menu, and selected Go Incognito.
  </int>
</enum>

<enum name="ProfileErrorType" type="int">
  <int value="0" label="History error"/>
  <int value="1" label="Preferences error"/>
  <int value="2" label="Webdata autofill DB error"/>
  <int value="3" label="Webdata token DB error"/>
  <int value="4" label="Webdata DB error"/>
  <int value="5" label="Webdata keyword DB error"/>
</enum>

<enum name="ProfileGaiaPhotoOptions" type="int">
  <int value="0" label="User opted to use GAIA photo"/>
  <int value="1" label="User opted not to use GAIA photo"/>
</enum>

<enum name="ProfileImageDownloadResult" type="int">
  <int value="0" label="DownloadSuccessChanged">
    <summary>
      Reported when image download succeeds and the image is newer than what we
      already have so we update it.
    </summary>
  </int>
  <int value="1" label="DownloadSuccess">
    <summary>Reported anytime we download profile image successfully.</summary>
  </int>
  <int value="2" label="DownloadFailure">
    <summary>Download failed because of network errors.</summary>
  </int>
  <int value="3" label="DownloadDefault">
    <summary>
      We didn't download the image because it's the default one.
    </summary>
  </int>
</enum>

<enum name="ProfileNetUserCount" type="int">
  <int value="0" label="Added new user"/>
  <int value="1" label="Deleted a profile"/>
</enum>

<enum name="ProfileNewAvatarMenuNotYou" type="int">
  <int value="0" label="View 'Not You?' Bubble">
    User views the 'Not You?' bubble.
  </int>
  <int value="1" label="Back">
    User selects back from within the 'Not You?' bubble.
  </int>
  <int value="2" label="Add Person">
    User adds a person from within the 'Not You?' bubble.
  </int>
  <int value="3" label="Disconnect">
    User chooses to disconnect (sign out) from within the 'Not You?' bubble.
  </int>
</enum>

<enum name="ProfileNewAvatarMenuSignin" type="int">
  <int value="0" label="View Signin Bubble">
    User viewed the signin bubble after successfully using the inline signin.
  </int>
  <int value="1" label="Dismiss">
    User selected ok to dismiss the signin bubble.
  </int>
  <int value="2" label="Settings">
    User opened the settings from the signin bubble.
  </int>
</enum>

<enum name="ProfileNewAvatarMenuUpgrade" type="int">
  <int value="0" label="View Upgrade Bubble">
    User views the upgrade bubble.
  </int>
  <int value="1" label="Dismiss">User dismissed the upgrade bubble.</int>
  <int value="2" label="What's New">
    User selects 'What's New' in the upgrade bubble.
  </int>
  <int value="3" label="Not You?">
    User selects 'Not You?' in the upgrade bubble.
  </int>
</enum>

<enum name="ProfileOpen" type="int">
  <int value="0" label="Add new user"/>
  <int value="1" label="Add new user from icon menu"/>
  <int value="2" label="Add new user from title bar menu"/>
  <int value="3" label="Switch profile from icon menu"/>
  <int value="4" label="Switch profile from title bar menu"/>
  <int value="5" label="Opened the avatar bubble menu from NTP"/>
  <int value="6" label="Opened the avatar bubble menu from icon"/>
  <int value="7" label="Deleted a profile"/>
</enum>

<enum name="ProfileOpenMethod" type="int">
  <int value="0" label="Opened the avatar menu from NTP"/>
  <int value="1" label="Opened the avatar menu from avatar button"/>
  <int value="2" label="Switch to profile from icon menu"/>
  <int value="3" label="Switch to profile from title bar menu"/>
  <int value="4" label="Switch to profile from Mac OS X Dock menu"/>
  <int value="5" label="Opened the User Manager"/>
  <int value="6" label="Switch to profile via User Manager"/>
  <int value="7" label="Switch to locked profile via User Manager"/>
  <int value="8" label="Switch to Guest profile"/>
  <int value="9" label="Switch to profile from context menu"/>
</enum>

<enum name="ProfileSigninStatus" type="int">
  <int value="0" label="All profiles signed in"/>
  <int value="1" label="All profiles not signed in"/>
  <int value="2" label="Mixed signin status"/>
  <int value="3" label="Unknown signin status"/>
  <int value="4" label="Error getting signin status"/>
</enum>

<enum name="ProfileSync" type="int">
  <int value="0" label="Signed in to sync"/>
  <int value="1" label="Signed in to sync from original profile"/>
  <int value="2" label="Signed in to sync from secondary profile"/>
  <int value="3" label="Customized sync options"/>
  <int value="4" label="Chose what to sync"/>
  <int value="5" label="Encrypted all data"/>
  <int value="6" label="Selected a passphrase"/>
</enum>

<enum name="ProfileSyncCustomize" type="int">
  <int value="0" label="Customized sync options"/>
  <int value="1" label="Chose what to sync"/>
  <int value="2" label="Encrypted all data"/>
  <int value="3" label="Selected a passphrase"/>
</enum>

<enum name="ProfileType" type="int">
  <int value="0" label="Original (default) profile"/>
  <int value="1" label="Secondary (user-created) profile"/>
</enum>

<enum name="ProfileUpgradeEnrollment" type="int">
  <int value="0" label="User viewed the Upgrade promo card in the user menu."/>
  <int value="1" label="User selected to view the intro tutorial."/>
  <int value="2" label="User opted into New Profile Management by Promo card."/>
  <int value="3" label="User closed the Upgrade card."/>
  <int value="4" label="User disabled New Profiles Management."/>
  <int value="5" label="User elected to send feedback."/>
</enum>

<enum name="ProtectorError" type="int">
  <obsolete>
    Deprecated 8/2013. No longer generated.
  </obsolete>
  <summary>
    Codes for errors Protector detects about settings it protects. See
    chrome/browser/protector/histograms.h for the corresponding enum.
  </summary>
  <int value="0" label="Backup invalid"/>
  <int value="1" label="Value changed"/>
  <int value="2" label="Value valid"/>
  <int value="3" label="Value is valid and zero"/>
</enum>

<enum name="ProtocolVersion" type="int">
  <int value="0" label="UNKNOWN"/>
  <int value="1" label="HTTP 1.1"/>
  <int value="2" label="SPDY 2.0"/>
  <int value="3" label="SPDY 3.0"/>
  <int value="4" label="SPDY 3.1"/>
  <int value="5" label="SPDY 4.0"/>
</enum>

<enum name="ProvisionalLoadEvent" type="int">
  <int value="0" label="Stopped no error">
    This should represent the provisional load being stopped by the user, but
    should not occur pre-PlzNavigate.
  </int>
  <int value="1" label="Load failed: ERR_ABORTED">
    The provisional load failed with net::ERR_ABORTED. Note that ERR_ABORTED
    includes downloads, 204s, and other non user-initiated abort conditions
    (crbug.com/542369)
  </int>
  <int value="2" label="Load failed: not ERR_ABORTED">
    The provisional load failed with an error other than net::ERR_ABORTED
  </int>
  <int value="3" label="Load successfully committed"/>
</enum>

<enum name="ProvisionalSaveFailure" type="int">
  <int value="0" label="SAVING_DISABLED"/>
  <int value="1" label="EMPTY_PASSWORD"/>
  <int value="2" label="NO_MATCHING_FORM"/>
  <int value="3" label="MATCHING_NOT_COMPLETE"/>
  <int value="4" label="FORM_BLACKLISTED"/>
  <int value="5" label="INVALID_FORM"/>
  <int value="6" label="AUTOCOMPLETE_OFF"/>
  <int value="7" label="SYNC_CREDENTIALS"/>
</enum>

<enum name="ProxyStatus" type="int">
  <int value="0" label="PROXY_STATUS_IGNORED"/>
  <int value="1" label="PROXY_UNINITIALIZED"/>
  <int value="2" label="PROXY_NOT_USED"/>
  <int value="3" label="PROXY_PAC_RESOLVER"/>
  <int value="4" label="PROXY_HAS_RULES"/>
</enum>

<enum name="PublicKeyPinFailedDomain" type="int">
  <int value="0" label="DOMAIN_NOT_PINNED"/>
  <int value="1" label="DOMAIN_GOOGLE_COM"/>
  <int value="2" label="DOMAIN_ANDROID_COM"/>
  <int value="3" label="DOMAIN_GOOGLE_ANALYTICS_COM"/>
  <int value="4" label="DOMAIN_GOOGLEPLEX_COM"/>
  <int value="5" label="DOMAIN_YTIMG_COM"/>
  <int value="6" label="DOMAIN_GOOGLEUSERCONTENT_COM"/>
  <int value="7" label="DOMAIN_YOUTUBE_COM"/>
  <int value="8" label="DOMAIN_GOOGLEAPIS_COM"/>
  <int value="9" label="DOMAIN_GOOGLEADSERVICES_COM"/>
  <int value="10" label="DOMAIN_GOOGLECODE_COM"/>
  <int value="11" label="DOMAIN_APPSPOT_COM"/>
  <int value="12" label="DOMAIN_GOOGLESYNDICATION_COM"/>
  <int value="13" label="DOMAIN_DOUBLECLICK_NET"/>
  <int value="14" label="DOMAIN_GSTATIC_COM"/>
  <int value="15" label="DOMAIN_GMAIL_COM"/>
  <int value="16" label="DOMAIN_GOOGLEMAIL_COM"/>
  <int value="17" label="DOMAIN_GOOGLEGROUPS_COM"/>
  <int value="18" label="DOMAIN_TORPROJECT_ORG"/>
  <int value="19" label="DOMAIN_TWITTER_COM"/>
  <int value="20" label="DOMAIN_TWIMG_COM"/>
  <int value="21" label="DOMAIN_AKAMAIHD_NET"/>
  <int value="22" label="DOMAIN_TOR2WEB_ORG"/>
  <int value="23" label="DOMAIN_YOUTU_BE"/>
  <int value="24" label="DOMAIN_GOOGLECOMMERCE_COM"/>
  <int value="25" label="DOMAIN_URCHIN_COM"/>
  <int value="26" label="DOMAIN_GOO_GL"/>
  <int value="27" label="DOMAIN_G_CO"/>
  <int value="28" label="DOMAIN_GOOGLE_AC"/>
  <int value="29" label="DOMAIN_GOOGLE_AD"/>
  <int value="30" label="DOMAIN_GOOGLE_AE"/>
  <int value="31" label="DOMAIN_GOOGLE_AF"/>
  <int value="32" label="DOMAIN_GOOGLE_AG"/>
  <int value="33" label="DOMAIN_GOOGLE_AM"/>
  <int value="34" label="DOMAIN_GOOGLE_AS"/>
  <int value="35" label="DOMAIN_GOOGLE_AT"/>
  <int value="36" label="DOMAIN_GOOGLE_AZ"/>
  <int value="37" label="DOMAIN_GOOGLE_BA"/>
  <int value="38" label="DOMAIN_GOOGLE_BE"/>
  <int value="39" label="DOMAIN_GOOGLE_BF"/>
  <int value="40" label="DOMAIN_GOOGLE_BG"/>
  <int value="41" label="DOMAIN_GOOGLE_BI"/>
  <int value="42" label="DOMAIN_GOOGLE_BJ"/>
  <int value="43" label="DOMAIN_GOOGLE_BS"/>
  <int value="44" label="DOMAIN_GOOGLE_BY"/>
  <int value="45" label="DOMAIN_GOOGLE_CA"/>
  <int value="46" label="DOMAIN_GOOGLE_CAT"/>
  <int value="47" label="DOMAIN_GOOGLE_CC"/>
  <int value="48" label="DOMAIN_GOOGLE_CD"/>
  <int value="49" label="DOMAIN_GOOGLE_CF"/>
  <int value="50" label="DOMAIN_GOOGLE_CG"/>
  <int value="51" label="DOMAIN_GOOGLE_CH"/>
  <int value="52" label="DOMAIN_GOOGLE_CI"/>
  <int value="53" label="DOMAIN_GOOGLE_CL"/>
  <int value="54" label="DOMAIN_GOOGLE_CM"/>
  <int value="55" label="DOMAIN_GOOGLE_CN"/>
  <int value="56" label="DOMAIN_CO_AO"/>
  <int value="57" label="DOMAIN_CO_BW"/>
  <int value="58" label="DOMAIN_CO_CK"/>
  <int value="59" label="DOMAIN_CO_CR"/>
  <int value="60" label="DOMAIN_CO_HU"/>
  <int value="61" label="DOMAIN_CO_ID"/>
  <int value="62" label="DOMAIN_CO_IL"/>
  <int value="63" label="DOMAIN_CO_IM"/>
  <int value="64" label="DOMAIN_CO_IN"/>
  <int value="65" label="DOMAIN_CO_JE"/>
  <int value="66" label="DOMAIN_CO_JP"/>
  <int value="67" label="DOMAIN_CO_KE"/>
  <int value="68" label="DOMAIN_CO_KR"/>
  <int value="69" label="DOMAIN_CO_LS"/>
  <int value="70" label="DOMAIN_CO_MA"/>
  <int value="71" label="DOMAIN_CO_MZ"/>
  <int value="72" label="DOMAIN_CO_NZ"/>
  <int value="73" label="DOMAIN_CO_TH"/>
  <int value="74" label="DOMAIN_CO_TZ"/>
  <int value="75" label="DOMAIN_CO_UG"/>
  <int value="76" label="DOMAIN_CO_UK"/>
  <int value="77" label="DOMAIN_CO_UZ"/>
  <int value="78" label="DOMAIN_CO_VE"/>
  <int value="79" label="DOMAIN_CO_VI"/>
  <int value="80" label="DOMAIN_CO_ZA"/>
  <int value="81" label="DOMAIN_CO_ZM"/>
  <int value="82" label="DOMAIN_CO_ZW"/>
  <int value="83" label="DOMAIN_COM_AF"/>
  <int value="84" label="DOMAIN_COM_AG"/>
  <int value="85" label="DOMAIN_COM_AI"/>
  <int value="86" label="DOMAIN_COM_AR"/>
  <int value="87" label="DOMAIN_COM_AU"/>
  <int value="88" label="DOMAIN_COM_BD"/>
  <int value="89" label="DOMAIN_COM_BH"/>
  <int value="90" label="DOMAIN_COM_BN"/>
  <int value="91" label="DOMAIN_COM_BO"/>
  <int value="92" label="DOMAIN_COM_BR"/>
  <int value="93" label="DOMAIN_COM_BY"/>
  <int value="94" label="DOMAIN_COM_BZ"/>
  <int value="95" label="DOMAIN_COM_CN"/>
  <int value="96" label="DOMAIN_COM_CO"/>
  <int value="97" label="DOMAIN_COM_CU"/>
  <int value="98" label="DOMAIN_COM_CY"/>
  <int value="99" label="DOMAIN_COM_DO"/>
  <int value="100" label="DOMAIN_COM_EC"/>
  <int value="101" label="DOMAIN_COM_EG"/>
  <int value="102" label="DOMAIN_COM_ET"/>
  <int value="103" label="DOMAIN_COM_FJ"/>
  <int value="104" label="DOMAIN_COM_GE"/>
  <int value="105" label="DOMAIN_COM_GH"/>
  <int value="106" label="DOMAIN_COM_GI"/>
  <int value="107" label="DOMAIN_COM_GR"/>
  <int value="108" label="DOMAIN_COM_GT"/>
  <int value="109" label="DOMAIN_COM_HK"/>
  <int value="110" label="DOMAIN_COM_IQ"/>
  <int value="111" label="DOMAIN_COM_JM"/>
  <int value="112" label="DOMAIN_COM_JO"/>
  <int value="113" label="DOMAIN_COM_KH"/>
  <int value="114" label="DOMAIN_COM_KW"/>
  <int value="115" label="DOMAIN_COM_LB"/>
  <int value="116" label="DOMAIN_COM_LY"/>
  <int value="117" label="DOMAIN_COM_MT"/>
  <int value="118" label="DOMAIN_COM_MX"/>
  <int value="119" label="DOMAIN_COM_MY"/>
  <int value="120" label="DOMAIN_COM_NA"/>
  <int value="121" label="DOMAIN_COM_NF"/>
  <int value="122" label="DOMAIN_COM_NG"/>
  <int value="123" label="DOMAIN_COM_NI"/>
  <int value="124" label="DOMAIN_COM_NP"/>
  <int value="125" label="DOMAIN_COM_NR"/>
  <int value="126" label="DOMAIN_COM_OM"/>
  <int value="127" label="DOMAIN_COM_PA"/>
  <int value="128" label="DOMAIN_COM_PE"/>
  <int value="129" label="DOMAIN_COM_PH"/>
  <int value="130" label="DOMAIN_COM_PK"/>
  <int value="131" label="DOMAIN_COM_PL"/>
  <int value="132" label="DOMAIN_COM_PR"/>
  <int value="133" label="DOMAIN_COM_PY"/>
  <int value="134" label="DOMAIN_COM_QA"/>
  <int value="135" label="DOMAIN_COM_RU"/>
  <int value="136" label="DOMAIN_COM_SA"/>
  <int value="137" label="DOMAIN_COM_SB"/>
  <int value="138" label="DOMAIN_COM_SG"/>
  <int value="139" label="DOMAIN_COM_SL"/>
  <int value="140" label="DOMAIN_COM_SV"/>
  <int value="141" label="DOMAIN_COM_TJ"/>
  <int value="142" label="DOMAIN_COM_TN"/>
  <int value="143" label="DOMAIN_COM_TR"/>
  <int value="144" label="DOMAIN_COM_TW"/>
  <int value="145" label="DOMAIN_COM_UA"/>
  <int value="146" label="DOMAIN_COM_UY"/>
  <int value="147" label="DOMAIN_COM_VC"/>
  <int value="148" label="DOMAIN_COM_VE"/>
  <int value="149" label="DOMAIN_COM_VN"/>
  <int value="150" label="DOMAIN_GOOGLE_CV"/>
  <int value="151" label="DOMAIN_GOOGLE_CZ"/>
  <int value="152" label="DOMAIN_GOOGLE_DE"/>
  <int value="153" label="DOMAIN_GOOGLE_DJ"/>
  <int value="154" label="DOMAIN_GOOGLE_DK"/>
  <int value="155" label="DOMAIN_GOOGLE_DM"/>
  <int value="156" label="DOMAIN_GOOGLE_DZ"/>
  <int value="157" label="DOMAIN_GOOGLE_EE"/>
  <int value="158" label="DOMAIN_GOOGLE_ES"/>
  <int value="159" label="DOMAIN_GOOGLE_FI"/>
  <int value="160" label="DOMAIN_GOOGLE_FM"/>
  <int value="161" label="DOMAIN_GOOGLE_FR"/>
  <int value="162" label="DOMAIN_GOOGLE_GA"/>
  <int value="163" label="DOMAIN_GOOGLE_GE"/>
  <int value="164" label="DOMAIN_GOOGLE_GG"/>
  <int value="165" label="DOMAIN_GOOGLE_GL"/>
  <int value="166" label="DOMAIN_GOOGLE_GM"/>
  <int value="167" label="DOMAIN_GOOGLE_GP"/>
  <int value="168" label="DOMAIN_GOOGLE_GR"/>
  <int value="169" label="DOMAIN_GOOGLE_GY"/>
  <int value="170" label="DOMAIN_GOOGLE_HK"/>
  <int value="171" label="DOMAIN_GOOGLE_HN"/>
  <int value="172" label="DOMAIN_GOOGLE_HR"/>
  <int value="173" label="DOMAIN_GOOGLE_HT"/>
  <int value="174" label="DOMAIN_GOOGLE_HU"/>
  <int value="175" label="DOMAIN_GOOGLE_IE"/>
  <int value="176" label="DOMAIN_GOOGLE_IM"/>
  <int value="177" label="DOMAIN_GOOGLE_INFO"/>
  <int value="178" label="DOMAIN_GOOGLE_IQ"/>
  <int value="179" label="DOMAIN_GOOGLE_IS"/>
  <int value="180" label="DOMAIN_GOOGLE_IT"/>
  <int value="181" label="DOMAIN_IT_AO"/>
  <int value="182" label="DOMAIN_GOOGLE_JE"/>
  <int value="183" label="DOMAIN_GOOGLE_JO"/>
  <int value="184" label="DOMAIN_GOOGLE_JOBS"/>
  <int value="185" label="DOMAIN_GOOGLE_JP"/>
  <int value="186" label="DOMAIN_GOOGLE_KG"/>
  <int value="187" label="DOMAIN_GOOGLE_KI"/>
  <int value="188" label="DOMAIN_GOOGLE_KZ"/>
  <int value="189" label="DOMAIN_GOOGLE_LA"/>
  <int value="190" label="DOMAIN_GOOGLE_LI"/>
  <int value="191" label="DOMAIN_GOOGLE_LK"/>
  <int value="192" label="DOMAIN_GOOGLE_LT"/>
  <int value="193" label="DOMAIN_GOOGLE_LU"/>
  <int value="194" label="DOMAIN_GOOGLE_LV"/>
  <int value="195" label="DOMAIN_GOOGLE_MD"/>
  <int value="196" label="DOMAIN_GOOGLE_ME"/>
  <int value="197" label="DOMAIN_GOOGLE_MG"/>
  <int value="198" label="DOMAIN_GOOGLE_MK"/>
  <int value="199" label="DOMAIN_GOOGLE_ML"/>
  <int value="200" label="DOMAIN_GOOGLE_MN"/>
  <int value="201" label="DOMAIN_GOOGLE_MS"/>
  <int value="202" label="DOMAIN_GOOGLE_MU"/>
  <int value="203" label="DOMAIN_GOOGLE_MV"/>
  <int value="204" label="DOMAIN_GOOGLE_MW"/>
  <int value="205" label="DOMAIN_GOOGLE_NE"/>
  <int value="206" label="DOMAIN_NE_JP"/>
  <int value="207" label="DOMAIN_GOOGLE_NET"/>
  <int value="208" label="DOMAIN_GOOGLE_NL"/>
  <int value="209" label="DOMAIN_GOOGLE_NO"/>
  <int value="210" label="DOMAIN_GOOGLE_NR"/>
  <int value="211" label="DOMAIN_GOOGLE_NU"/>
  <int value="212" label="DOMAIN_OFF_AI"/>
  <int value="213" label="DOMAIN_GOOGLE_PK"/>
  <int value="214" label="DOMAIN_GOOGLE_PL"/>
  <int value="215" label="DOMAIN_GOOGLE_PN"/>
  <int value="216" label="DOMAIN_GOOGLE_PS"/>
  <int value="217" label="DOMAIN_GOOGLE_PT"/>
  <int value="218" label="DOMAIN_GOOGLE_RO"/>
  <int value="219" label="DOMAIN_GOOGLE_RS"/>
  <int value="220" label="DOMAIN_GOOGLE_RU"/>
  <int value="221" label="DOMAIN_GOOGLE_RW"/>
  <int value="222" label="DOMAIN_GOOGLE_SC"/>
  <int value="223" label="DOMAIN_GOOGLE_SE"/>
  <int value="224" label="DOMAIN_GOOGLE_SH"/>
  <int value="225" label="DOMAIN_GOOGLE_SI"/>
  <int value="226" label="DOMAIN_GOOGLE_SK"/>
  <int value="227" label="DOMAIN_GOOGLE_SM"/>
  <int value="228" label="DOMAIN_GOOGLE_SN"/>
  <int value="229" label="DOMAIN_GOOGLE_SO"/>
  <int value="230" label="DOMAIN_GOOGLE_ST"/>
  <int value="231" label="DOMAIN_GOOGLE_TD"/>
  <int value="232" label="DOMAIN_GOOGLE_TG"/>
  <int value="233" label="DOMAIN_GOOGLE_TK"/>
  <int value="234" label="DOMAIN_GOOGLE_TL"/>
  <int value="235" label="DOMAIN_GOOGLE_TM"/>
  <int value="236" label="DOMAIN_GOOGLE_TN"/>
  <int value="237" label="DOMAIN_GOOGLE_TO"/>
  <int value="238" label="DOMAIN_GOOGLE_TP"/>
  <int value="239" label="DOMAIN_GOOGLE_TT"/>
  <int value="240" label="DOMAIN_GOOGLE_US"/>
  <int value="241" label="DOMAIN_GOOGLE_UZ"/>
  <int value="242" label="DOMAIN_GOOGLE_VG"/>
  <int value="243" label="DOMAIN_GOOGLE_VU"/>
  <int value="244" label="DOMAIN_GOOGLE_WS"/>
  <int value="245" label="DOMAIN_CHROMIUM_ORG"/>
  <int value="246" label="DOMAIN_CRYPTO_CAT"/>
  <int value="247" label="DOMAIN_LAVABIT_COM"/>
  <int value="248" label="DOMAIN_GOOGLETAGMANAGER_COM"/>
  <int value="249" label="DOMAIN_GOOGLETAGSERVICES_COM"/>
  <int value="250" label="DOMAIN_DROPBOX_COM"/>
  <int value="251" label="DOMAIN_YOUTUBE_NOCOOKIE_COM"/>
  <int value="252" label="DOMAIN_2MDN_NET"/>
  <int value="253" label="DOMAIN_FACEBOOK_COM"/>
  <int value="254" label="DOMAIN_SPIDEROAK_COM"/>
</enum>

<enum name="PushDeliveryStatus" type="int">
  <int value="0" label="Successful"/>
  <int value="1" label="Message was invalid"/>
  <int value="2" label="App id was unknown"/>
  <int value="3" label="App no longer has permission"/>
  <int value="4" label="Service Worker not found"/>
  <int value="5" label="Service Worker error"/>
  <int value="6" label="event.waitUntil promise rejected"/>
</enum>

<enum name="PushGetRegistrationStatus" type="int">
  <int value="0" label="Successful"/>
  <int value="1" label="No push service"/>
  <int value="2" label="Storage error"/>
  <int value="3" label="Registration not found"/>
  <int value="4" label="Registration not found (no incognito push service)"/>
  <int value="5" label="Unable to retrieve the public key"/>
</enum>

<enum name="PushRegistrationStatus" type="int">
  <int value="0" label="Successful - from push service"/>
  <int value="1" label="Service Worker not found"/>
  <int value="2" label="No push service"/>
  <int value="3" label="Registration limit reached"/>
  <int value="4" label="Permission denied"/>
  <int value="5" label="Push service error"/>
  <int value="6" label="No sender id provided"/>
  <int value="7" label="Storage error"/>
  <int value="8" label="Successful - from cache"/>
  <int value="9" label="Network error"/>
  <int value="10" label="Permission denied (no incognito push service)"/>
  <int value="11" label="Unable to retrieve the public key"/>
  <int value="12" label="Empty or missing manifest"/>
</enum>

<enum name="PushUnregistrationStatus" type="int">
  <int value="0" label="Successful - from push service"/>
  <int value="1" label="Successful - was not registered"/>
  <int value="2" label="Pending - will retry network error"/>
  <int value="3" label="Service Worker not found"/>
  <int value="4" label="No push service"/>
  <int value="5" label="Pending - will retry push service error"/>
  <int value="6" label="Storage error"/>
  <int value="7" label="Network error"/>
</enum>

<enum name="PushUserVisibleStatus" type="int">
  <int value="0" label="Required and shown"/>
  <int value="1" label="Not required but shown"/>
  <int value="2" label="Not required and not shown"/>
  <int value="3" label="Required but not shown - used grace"/>
  <int value="4" label="Required but not shown - grace exceeded"/>
</enum>

<enum name="QuicAddressMismatch" type="int">
  <int value="0" label="Address mismatch: IPv4 IPv4"/>
  <int value="1" label="Address mismatch: IPv6 IPv6"/>
  <int value="2" label="Address mismatch: IPv4 IPv6"/>
  <int value="3" label="Address mismatch: IPv6 IPv4"/>
  <int value="4" label="Port mismatch: IPv4 IPv4"/>
  <int value="5" label="Port mismatch: IPv6 IPv6"/>
  <int value="6" label="Address and port match: IPv4 IPv4"/>
  <int value="7" label="Address and port match: IPv6 IPv6"/>
</enum>

<enum name="QuicBadPacketLossEvents" type="int">
  <int value="1" label="ONE_PACKET_LOST"/>
  <int value="2" label="TWO_PACKETS_LOST"/>
  <int value="3" label="THREE_PACKETS_LOST"/>
  <int value="4" label="FOUR_PACKETS_LOST"/>
  <int value="5" label="FIVE_PACKETS_LOST"/>
</enum>

<enum name="QuicConnectionMigrationStatus" type="int">
  <int value="1" label="NO_MIGRATABLE_STREAMS"/>
  <int value="2" label="ALREADY_MIGRATED"/>
  <int value="3" label="INTERNAL_ERROR"/>
  <int value="4" label="TOO_MANY_CHANGES"/>
  <int value="5" label="SUCCESS"/>
  <int value="6" label="NON_MIGRATABLE_STREAM"/>
  <int value="7" label="DISABLED"/>
</enum>

<enum name="QuicDisabledReason" type="int">
  <int value="1" label="Public reset post handshake"/>
  <int value="2" label="Timeout with open streams"/>
  <int value="3" label="Bad packet loss rate"/>
</enum>

<enum name="QuicDiskCacheAPICall" type="int">
  <int value="0" label="Start"/>
  <int value="1" label="WaitForDataReady"/>
  <int value="2" label="Parse"/>
  <int value="3" label="WaitForDataReadyCancel"/>
  <int value="4" label="ReadyToPersist"/>
  <int value="5" label="Persist"/>
  <int value="6" label="ExternalCacheHit"/>
</enum>

<enum name="QuicDiskCacheEntryState" type="int">
  <int value="0" label="Opened"/>
  <int value="1" label="Closed"/>
</enum>

<enum name="QuicDiskCacheFailureReason" type="int">
  <int value="0" label="WAIT_FOR_DATA_READY_INVALID_ARGUMENT_FAILURE"/>
  <int value="1" label="GET_BACKEND_FAILURE"/>
  <int value="2" label="OPEN_FAILURE"/>
  <int value="3" label="CREATE_OR_OPEN_FAILURE"/>
  <int value="4" label="PARSE_NO_DATA_FAILURE"/>
  <int value="5" label="PARSE_FAILURE"/>
  <int value="6" label="READ_FAILURE"/>
  <int value="7" label="READY_TO_PERSIST_FAILURE"/>
  <int value="8" label="PERSIST_NO_BACKEND_FAILURE"/>
  <int value="9" label="WRITE_FAILURE"/>
</enum>

<enum name="QuicErrorCodes" type="int">
  <int value="0" label="NO_ERROR"/>
  <int value="1" label="INTERNAL_ERROR"/>
  <int value="2" label="STREAM_DATA_AFTER_TERMINATION"/>
  <int value="3" label="INVALID_PACKET_HEADER"/>
  <int value="4" label="INVALID_FRAME_DATA"/>
  <int value="5" label="INVALID_FEC_DATA"/>
  <int value="6" label="INVALID_RST_STREAM_DATA"/>
  <int value="7" label="INVALID_CONNECTION_CLOSE_DATA"/>
  <int value="8" label="INVALID_GOAWAY_DATA"/>
  <int value="9" label="INVALID_ACK_DATA"/>
  <int value="10" label="INVALID_VERSION_NEGOTIATION_PACKET"/>
  <int value="11" label="INVALID_PUBLIC_RST_PACKET"/>
  <int value="12" label="DECRYPTION_FAILURE"/>
  <int value="13" label="ENCRYPTION_FAILURE"/>
  <int value="14" label="PACKET_TOO_LARGE"/>
  <int value="15" label="PACKET_FOR_NONEXISTENT_STREAM"/>
  <int value="16" label="PEER_GOING_AWAY"/>
  <int value="17" label="INVALID_STREAM_ID"/>
  <int value="18" label="TOO_MANY_OPEN_STREAMS"/>
  <int value="19" label="PUBLIC_RESET"/>
  <int value="20" label="INVALID_VERSION"/>
  <int value="21" label="STREAM_RST_BEFORE_HEADERS_DECOMPRESSED"/>
  <int value="22" label="INVALID_HEADER_ID"/>
  <int value="23" label="INVALID_NEGOTIATED_VALUE"/>
  <int value="24" label="DECOMPRESSION_FAILURE"/>
  <int value="25" label="NETWORK_IDLE_TIMEOUT"/>
  <int value="26" label="ERROR_MIGRATING_ADDRESS"/>
  <int value="27" label="PACKET_WRITE_ERROR"/>
  <int value="28" label="HANDSHAKE_FAILED"/>
  <int value="29" label="CRYPTO_TAGS_OUT_OF_ORDER"/>
  <int value="30" label="CRYPTO_TOO_MANY_ENTRIES"/>
  <int value="31" label="CRYPTO_INVALID_VALUE_LENGTH"/>
  <int value="32" label="CRYPTO_MESSAGE_AFTER_HANDSHAKE_COMPLETE"/>
  <int value="33" label="INVALID_CRYPTO_MESSAGE_TYPE"/>
  <int value="34" label="INVALID_CRYPTO_MESSAGE_PARAMETER"/>
  <int value="35" label="CRYPTO_MESSAGE_PARAMETER_NOT_FOUND"/>
  <int value="36" label="CRYPTO_MESSAGE_PARAMETER_NO_OVERLAP"/>
  <int value="37" label="CRYPTO_MESSAGE_INDEX_NOT_FOUND"/>
  <int value="38" label="CRYPTO_INTERNAL_ERROR"/>
  <int value="39" label="CRYPTO_VERSION_NOT_SUPPORTED"/>
  <int value="40" label="CRYPTO_NO_SUPPORT"/>
  <int value="41" label="CRYPTO_TOO_MANY_REJECTS"/>
  <int value="42" label="PROOF_INVALID"/>
  <int value="43" label="CRYPTO_DUPLICATE_TAG"/>
  <int value="44" label="CRYPTO_ENCRYPTION_LEVEL_INCORRECT"/>
  <int value="45" label="CRYPTO_SERVER_CONFIG_EXPIRED"/>
  <int value="46" label="INVALID_STREAM_DATA"/>
  <int value="47" label="INVALID_CONGESTION_FEEDBACK_DATA"/>
  <int value="48" label="MISSING_PAYLOAD"/>
  <int value="49" label="INVALID_PRIORITY"/>
  <int value="50" label="INVALID_STREAM_FRAME"/>
  <int value="51" label="PACKET_READ_ERROR"/>
  <int value="52" label="INVALID_CHANNEL_ID_SIGNATURE"/>
  <int value="53" label="CRYPTO_SYMMETRIC_KEY_SETUP_FAILED"/>
  <int value="54" label="CRYPTO_MESSAGE_WHILE_VALIDATING_CLIENT_HELLO"/>
  <int value="55" label="VERSION_NEGOTIATION_MISMATCH"/>
  <int value="56" label="INVALID_HEADERS_STREAM_DATA"/>
  <int value="57" label="INVALID_WINDOW_UPDATE_DATA"/>
  <int value="58" label="INVALID_BLOCKED_DATA"/>
  <int value="59" label="FLOW_CONTROL_ERROR"/>
  <int value="60" label="INVALID_STOP_WAITING_DATA"/>
  <int value="61" label="UNENCRYPTED_STREAM_DATA"/>
  <int value="62" label="CONNECTION_IP_POOLED"/>
  <int value="63" label="FLOW_CONTROL_SENT_TOO_MUCH_DATA"/>
  <int value="64" label="FLOW_CONTROL_INVALID_WINDOW"/>
  <int value="65" label="CRYPTO_UPDATE_BEFORE_HANDSHAKE_COMPLETE"/>
  <int value="66" label="TOO_MANY_UNFINISHED_STREAMS"/>
  <int value="67" label="HANDSHAKE_TIMEOUT"/>
  <int value="68" label="TOO_MANY_OUTSTANDING_SENT_PACKETS"/>
  <int value="69" label="TOO_MANY_OUTSTANDING_RECEIVED_PACKETS"/>
  <int value="70" label="CONNECTION_CANCELLED"/>
  <int value="71" label="BAD_PACKET_LOSS_RATE"/>
  <int value="72" label="CRYPTO_HANDSHAKE_STATELESS_REJECT"/>
  <int value="73" label="PUBLIC_RESETS_POST_HANDSHAKE"/>
  <int value="74" label="TIMEOUTS_WITH_OPEN_STREAMS"/>
  <int value="75" label="FAILED_TO_SERIALIZE_PACKET"/>
  <int value="76" label="TOO_MANY_AVAILABLE_STREAMS"/>
  <int value="77" label="UNENCRYPTED_FEC_DATA"/>
  <int value="78" label="INVALID_PATH_CLOSE_DATA"/>
  <int value="79" label="BAD_MULTIPATH_FLAG"/>
  <int value="80" label="IP_ADDRESS_CHANGED"/>
  <int value="81" label="CONNECTION_MIGRATION_NO_MIGRATABLE_STREAMS"/>
  <int value="82" label="CONNECTION_MIGRATION_TOO_MANY_CHANGES"/>
  <int value="83" label="CONNECTION_MIGRATION_NO_NEW_NETWORK"/>
  <int value="84" label="CONNECTION_MIGRATION_NON_MIGRATABLE_STREAM"/>
  <int value="85" label="QUIC_TOO_MANY_RTOS"/>
  <int value="86" label="QUIC_ERROR_MIGRATING_PORT"/>
  <int value="87" label="QUIC_OVERLAPPING_STREAM_DATA"/>
  <int value="88" label="QUIC_ATTEMPT_TO_SEND_UNENCRYPTED_STREAM_DATA"/>
</enum>

<enum name="QuicHandshakeFailureReason" type="int">
  <int value="0" label="UNKNOWN"/>
  <int value="1" label="BLACK_HOLE"/>
  <int value="2" label="PUBLIC_RESET"/>
</enum>

<enum name="QuicHandshakeState" type="int">
  <int value="0" label="STARTED"/>
  <int value="1" label="ENCRYPTION_ESTABLISHED"/>
  <int value="2" label="HANDSHAKE_CONFIRMED"/>
  <int value="3" label="FAILED"/>
</enum>

<enum name="QuickofficeErrorTypes" type="int">
  <int value="0" label="doc uncaught js exception"/>
  <int value="1" label="docx uncaught js exception"/>
  <int value="2" label="docm uncaught js exception"/>
  <int value="3" label="xls uncaught js exception"/>
  <int value="4" label="xlsx uncaught js exception"/>
  <int value="5" label="xlsm uncaught js exception"/>
  <int value="6" label="ppt uncaught js exception"/>
  <int value="7" label="pptx uncaught js exception"/>
  <int value="8" label="pptm uncaught js exception"/>
  <int value="9" label="pps uncaught js exception"/>
  <int value="10" label="ppsx uncaught js exception"/>
  <int value="11" label="ppsm uncaught js exception"/>
  <int value="12" label="doc suspected corrupt file"/>
  <int value="13" label="docx suspected corrupt file"/>
  <int value="14" label="docm suspected corrupt file"/>
  <int value="15" label="xls suspected corrupt file"/>
  <int value="16" label="xlsx suspected corrupt file"/>
  <int value="17" label="xlsm suspected corrupt file"/>
  <int value="18" label="ppt suspected corrupt file"/>
  <int value="19" label="pptx suspected corrupt file"/>
  <int value="20" label="pptm suspected corrupt file"/>
  <int value="21" label="pps suspected corrupt file"/>
  <int value="22" label="ppsx suspected corrupt file"/>
  <int value="23" label="ppsm suspected corrupt file"/>
  <int value="24" label="doc qowt ui warning"/>
  <int value="25" label="docx qowt ui warning"/>
  <int value="26" label="docm qowt ui warning"/>
  <int value="27" label="xls qowt ui warning"/>
  <int value="28" label="xlsx qowt ui warning"/>
  <int value="29" label="xlsm qowt ui warning"/>
  <int value="30" label="ppt qowt ui warning"/>
  <int value="31" label="pptx qowt ui warning"/>
  <int value="32" label="pptm qowt ui warning"/>
  <int value="33" label="pps qowt ui warning"/>
  <int value="34" label="ppsx qowt ui warning"/>
  <int value="35" label="ppsm qowt ui warning"/>
  <int value="36" label="doc nacl error"/>
  <int value="37" label="docx nacl error"/>
  <int value="38" label="docm nacl error"/>
  <int value="39" label="xls nacl error"/>
  <int value="40" label="xlsx nacl error"/>
  <int value="41" label="xlsm nacl error"/>
  <int value="42" label="ppt nacl error"/>
  <int value="43" label="pptx nacl error"/>
  <int value="44" label="pptm nacl error"/>
  <int value="45" label="pps nacl error"/>
  <int value="46" label="ppsx nacl error"/>
  <int value="47" label="ppsm nacl error"/>
  <int value="48" label="doc nacl crash"/>
  <int value="49" label="docx nacl crash"/>
  <int value="50" label="docm nacl crash"/>
  <int value="51" label="xls nacl crash"/>
  <int value="52" label="xlsx nacl crash"/>
  <int value="53" label="xlsm nacl crash"/>
  <int value="54" label="ppt nacl crash"/>
  <int value="55" label="pptx nacl crash"/>
  <int value="56" label="pptm nacl crash"/>
  <int value="57" label="pps nacl crash"/>
  <int value="58" label="ppsx nacl crash"/>
  <int value="59" label="ppsm nacl crash"/>
  <int value="60" label="doc invalid file format"/>
  <int value="61" label="docx invalid file format"/>
  <int value="62" label="docm invalid file format"/>
  <int value="63" label="xls invalid file format"/>
  <int value="64" label="xlsx invalid file format"/>
  <int value="65" label="xlsm invalid file format"/>
  <int value="66" label="ppt invalid file format"/>
  <int value="67" label="pptx invalid file format"/>
  <int value="68" label="pptm invalid file format"/>
  <int value="69" label="pps invalid file format"/>
  <int value="70" label="ppsx invalid file format"/>
  <int value="71" label="ppsm invalid file format"/>
  <int value="72" label="doc editing dom sync error"/>
  <int value="73" label="docx editing dom sync error"/>
  <int value="74" label="docm editing dom sync error"/>
  <int value="75" label="xls editing dom sync error"/>
  <int value="76" label="xlsx editing dom sync error"/>
  <int value="77" label="xlsm editing dom sync error"/>
  <int value="78" label="ppt editing dom sync error"/>
  <int value="79" label="pptx editing dom sync error"/>
  <int value="80" label="pptm editing dom sync error"/>
  <int value="81" label="pps editing dom sync error"/>
  <int value="82" label="ppsx editing dom sync error"/>
  <int value="83" label="ppsm editing dom sync error"/>
</enum>

<enum name="QuickofficeFileFormat" type="int">
  <int value="0" label="doc"/>
  <int value="1" label="docx"/>
  <int value="2" label="docm"/>
  <int value="3" label="xls"/>
  <int value="4" label="xlsx"/>
  <int value="5" label="xlsm"/>
  <int value="6" label="ppt"/>
  <int value="7" label="pptx"/>
  <int value="8" label="pptm"/>
  <int value="9" label="pps"/>
  <int value="10" label="ppsx"/>
  <int value="11" label="ppsm"/>
  <int value="12" label="csv"/>
</enum>

<enum name="QuicRejectReasons" type="int">
  <int value="1" label="CLIENT_NONCE_UNKNOWN_FAILURE"/>
  <int value="2" label="CLIENT_NONCE_INVALID_FAILURE"/>
  <int value="4" label="CLIENT_NONCE_NOT_UNIQUE_FAILURE"/>
  <int value="8" label="CLIENT_NONCE_INVALID_ORBIT_FAILURE"/>
  <int value="16" label="CLIENT_NONCE_INVALID_TIME_FAILURE"/>
  <int value="32" label="CLIENT_NONCE_STRIKE_REGISTER_TIMEOUT"/>
  <int value="64" label="CLIENT_NONCE_STRIKE_REGISTER_FAILURE"/>
  <int value="128" label="SERVER_NONCE_DECRYPTION_FAILURE"/>
  <int value="256" label="SERVER_NONCE_INVALID_FAILURE"/>
  <int value="512" label="SERVER_NONCE_NOT_UNIQUE_FAILURE"/>
  <int value="1024" label="SERVER_NONCE_INVALID_TIME_FAILURE"/>
  <int value="2048" label="SERVER_CONFIG_INCHOATE_HELLO_FAILURE"/>
  <int value="4096" label="SERVER_CONFIG_UNKNOWN_CONFIG_FAILURE"/>
  <int value="8192" label="SOURCE_ADDRESS_TOKEN_INVALID_FAILURE"/>
  <int value="16384" label="SOURCE_ADDRESS_TOKEN_DECRYPTION_FAILURE"/>
  <int value="32768" label="SOURCE_ADDRESS_TOKEN_PARSE_FAILURE"/>
  <int value="65536" label="SOURCE_ADDRESS_TOKEN_DIFFERENT_IP_ADDRESS_FAILURE"/>
  <int value="131072" label="SOURCE_ADDRESS_TOKEN_CLOCK_SKEW_FAILURE"/>
  <int value="262144" label="SOURCE_ADDRESS_TOKEN_EXPIRED_FAILURE"/>
  <int value="524288" label="SERVER_NONCE_REQUIRED_FAILURE"/>
  <int value="1048576" label="INVALID_EXPECTED_LEAF_CERTIFICATE"/>
</enum>

<enum name="QuicRstStreamErrorCodes" type="int">
  <int value="0" label="NO_ERROR"/>
  <int value="1" label="ERROR_PROCESSING_STREAM"/>
  <int value="2" label="MULTIPLE_TERMINATION_OFFSETS"/>
  <int value="3" label="BAD_APPLICATION_PAYLOAD"/>
  <int value="4" label="CONNECTION_ERROR"/>
  <int value="5" label="PEER_GOING_AWAY"/>
  <int value="6" label="CANCELLED"/>
  <int value="7" label="RST_FLOW_CONTROL_ACCOUNTING"/>
</enum>

<enum name="QuicServerConfigState" type="int">
  <int value="0" label="SERVER_CONFIG_EMPTY"/>
  <int value="1" label="SERVER_CONFIG_INVALID"/>
  <int value="2" label="SERVER_CONFIG_CORRUPTED"/>
  <int value="3" label="SERVER_CONFIG_EXPIRED"/>
  <int value="4" label="SERVER_CONFIG_INVALID_EXPIRY"/>
  <int value="5" label="SERVER_CONFIG_VALID"/>
</enum>

<enum name="QuicSessionErrorCodes" type="int">
  <int value="0" label="CONNECTING_SOCKET"/>
  <int value="1" label="SETTING_RECEIVE_BUFFER"/>
  <int value="2" label="SETTING_SEND_BUFFER"/>
</enum>

<enum name="QuicSessionLocations" type="int">
  <int value="0" label="DESTRUCTOR"/>
  <int value="1" label="ADD_OBSERVER"/>
  <int value="2" label="TRY_CREATE_STREAM"/>
  <int value="3" label="CREATE_OUTGOING_RELIABLE_STREAM"/>
  <int value="4" label="NOTIFY_FACTORY_OF_SESSION_CLOSED_LATER"/>
  <int value="5" label="NOTIFY_FACTORY_OF_SESSION_CLOSED"/>
</enum>

<enum name="QuotaOriginTypes" type="int">
  <int value="0" label="Other"/>
  <int value="1" label="None"/>
  <int value="2" label="google.com durable"/>
  <int value="3" label="non-google.com durable"/>
  <int value="4" label="google.com unlimitedStorage app/ext"/>
  <int value="5" label="non-google.com unlimitedStorage app/ext"/>
  <int value="6" label="In use"/>
</enum>

<enum name="RapporDiscardReason" type="int">
  <int value="0" label="Upload Success"/>
  <int value="1" label="Upload Rejected"/>
  <int value="2" label="Queue Overflowed"/>
</enum>

<enum name="RapporLoadResultType" type="int">
  <int value="0" label="LOAD_SUCCESS"/>
  <int value="1" label="LOAD_EMPTY_VALUE"/>
  <int value="2" label="LOAD_CORRUPT_VALUE"/>
</enum>

<enum name="RecentTabsAction" type="int">
  <int value="0" label="Local Session Tab"/>
  <int value="1" label="Other Device Tab"/>
  <int value="2" label="Restore Window"/>
  <int value="3" label="Show More"/>
</enum>

<enum name="RecoveryComponentEvent" type="int">
  <int value="0" label="RunningNonElevated"/>
  <int value="1" label="ElevationNeeded"/>
  <int value="2" label="RunFailed"/>
  <int value="3" label="RunSucceeded"/>
  <int value="4" label="RunSkipped"/>
  <int value="5" label="RunningElevated"/>
  <int value="6" label="RunElevatedFailed"/>
  <int value="7" label="RunElevatedSucceeded"/>
  <int value="8" label="RunElevatedSkipped"/>
  <int value="9" label="DownloadError"/>
</enum>

<enum name="RefcountOperation" type="int">
  <int value="0" label="Decrement"/>
  <int value="1" label="Increment"/>
</enum>

<enum name="RemotePlaybackDeviceType" type="int">
  <int value="0" label="Cast Generic Media Player"/>
  <int value="1" label="Cast YouTube Player"/>
  <int value="2" label="Non-Cast YouTube Player"/>
</enum>

<enum name="RemotePlaybackUrlResolveResult" type="int">
  <int value="0" label="Successfully Resolved"/>
  <int value="1" label="Malformed or empty Url"/>
  <int value="2" label="No CORS header when required"/>
  <int value="3" label="CORS header incompatible with Chromecast"/>
  <int value="4" label="The response code indicated failure"/>
  <int value="5" label="IO exception while fetching the url"/>
  <int value="6" label="Unknown media type"/>
</enum>

<enum name="RendererType" type="int">
  <int value="1" label="Normal renderer"/>
  <int value="2" label="Extension renderer"/>
</enum>

<enum name="RenderViewContextMenuItem" type="int">
  <int value="0" label="IDC_CONTENT_CONTEXT_CUSTOM_FIRST"/>
  <int value="1" label="IDC_EXTENSIONS_CONTEXT_CUSTOM_FIRST"/>
  <int value="2" label="IDC_CONTENT_CONTEXT_PROTOCOL_HANDLER_FIRST"/>
  <int value="3" label="IDC_CONTENT_CONTEXT_OPENLINKNEWTAB"/>
  <int value="4" label="IDC_CONTENT_CONTEXT_OPENLINKNEWWINDOW"/>
  <int value="5" label="IDC_CONTENT_CONTEXT_OPENLINKOFFTHERECORD"/>
  <int value="6" label="IDC_CONTENT_CONTEXT_SAVELINKAS"/>
  <int value="7" label="IDC_CONTENT_CONTEXT_SAVEAVAS"/>
  <int value="8" label="IDC_CONTENT_CONTEXT_SAVEIMAGEAS"/>
  <int value="9" label="IDC_CONTENT_CONTEXT_COPYLINKLOCATION"/>
  <int value="10" label="IDC_CONTENT_CONTEXT_COPYIMAGELOCATION"/>
  <int value="11" label="IDC_CONTENT_CONTEXT_COPYAVLOCATION"/>
  <int value="12" label="IDC_CONTENT_CONTEXT_COPYIMAGE"/>
  <int value="13" label="IDC_CONTENT_CONTEXT_OPENIMAGENEWTAB"/>
  <int value="14" label="IDC_CONTENT_CONTEXT_OPENAVNEWTAB"/>
  <int value="15" label="IDC_CONTENT_CONTEXT_PLAYPAUSE"/>
  <int value="16" label="IDC_CONTENT_CONTEXT_MUTE"/>
  <int value="17" label="IDC_CONTENT_CONTEXT_LOOP"/>
  <int value="18" label="IDC_CONTENT_CONTEXT_CONTROLS"/>
  <int value="19" label="IDC_CONTENT_CONTEXT_ROTATECW"/>
  <int value="20" label="IDC_CONTENT_CONTEXT_ROTATECCW"/>
  <int value="21" label="IDC_BACK"/>
  <int value="22" label="IDC_FORWARD"/>
  <int value="23" label="IDC_SAVE_PAGE"/>
  <int value="24" label="IDC_RELOAD"/>
  <int value="25" label="IDC_CONTENT_CONTEXT_RELOAD_PACKAGED_APP"/>
  <int value="26" label="IDC_CONTENT_CONTEXT_RESTART_PACKAGED_APP"/>
  <int value="27" label="IDC_PRINT"/>
  <int value="28" label="IDC_VIEW_SOURCE"/>
  <int value="29" label="IDC_CONTENT_CONTEXT_INSPECTELEMENT"/>
  <int value="30" label="IDC_CONTENT_CONTEXT_INSPECTBACKGROUNDPAGE"/>
  <int value="31" label="IDC_CONTENT_CONTEXT_VIEWPAGEINFO"/>
  <int value="32" label="IDC_CONTENT_CONTEXT_TRANSLATE"/>
  <int value="33" label="IDC_CONTENT_CONTEXT_RELOADFRAME"/>
  <int value="34" label="IDC_CONTENT_CONTEXT_VIEWFRAMESOURCE"/>
  <int value="35" label="IDC_CONTENT_CONTEXT_VIEWFRAMEINFO"/>
  <int value="36" label="IDC_CONTENT_CONTEXT_UNDO"/>
  <int value="37" label="IDC_CONTENT_CONTEXT_REDO"/>
  <int value="38" label="IDC_CONTENT_CONTEXT_CUT"/>
  <int value="39" label="IDC_CONTENT_CONTEXT_COPY"/>
  <int value="40" label="IDC_CONTENT_CONTEXT_PASTE"/>
  <int value="41" label="IDC_CONTENT_CONTEXT_PASTE_AND_MATCH_STYLE"/>
  <int value="42" label="IDC_CONTENT_CONTEXT_DELETE"/>
  <int value="43" label="IDC_CONTENT_CONTEXT_SELECTALL"/>
  <int value="44" label="IDC_CONTENT_CONTEXT_SEARCHWEBFOR"/>
  <int value="45" label="IDC_CONTENT_CONTEXT_GOTOURL"/>
  <int value="46" label="IDC_CONTENT_CONTEXT_LANGUAGE_SETTINGS"/>
  <int value="47" label="IDC_CONTENT_CONTEXT_PROTOCOL_HANDLER_SETTINGS"/>
  <int value="48" label="IDC_CONTENT_CONTEXT_ADDSEARCHENGINE"/>
  <int value="49" label="IDC_CONTENT_CONTEXT_SPEECH_INPUT_FILTER_PROFANITIES"/>
  <int value="50" label="IDC_CONTENT_CONTEXT_SPEECH_INPUT_ABOUT"/>
  <int value="51" label="IDC_SPEECH_INPUT_MENU"/>
  <int value="52" label="IDC_CONTENT_CONTEXT_OPENLINKWITH"/>
  <int value="53" label="IDC_CHECK_SPELLING_WHILE_TYPING"/>
  <int value="54" label="IDC_SPELLCHECK_MENU"/>
  <int value="55" label="IDC_CONTENT_CONTEXT_SPELLING_TOGGLE"/>
  <int value="56" label="IDC_SPELLCHECK_LANGUAGES_FIRST"/>
  <int value="57" label="IDC_CONTENT_CONTEXT_SEARCHWEBFORIMAGE"/>
  <int value="58" label="IDC_SPELLCHECK_SUGGESTION"/>
  <int value="59" label="IDC_SPELLCHECK_ADD_TO_DICTIONARY"/>
  <int value="60" label="IDC_SPELLPANEL_TOGGLE"/>
  <int value="61" label="IDC_CONTENT_CONTEXT_OPENORIGINALIMAGENEWTAB"/>
  <int value="62" label="IDC_WRITING_DIRECTION_MENU"/>
  <int value="63" label="IDC_WRITING_DIRECTION_DEFAULT"/>
  <int value="64" label="IDC_WRITING_DIRECTION_LTR"/>
  <int value="65" label="IDC_WRITING_DIRECTION_RTL"/>
  <int value="66" label="IDC_CONTENT_CONTEXT_LOAD_ORIGINAL_IMAGE"/>
  <int value="67" label="IDC_CONTENT_CONTEXT_FORCESAVEPASSWORD"/>
  <int value="68" label="IDC_ROUTE_MEDIA"/>
  <int value="69" label="IDC_CONTENT_CONTEXT_COPYLINKTEXT"/>
  <int value="70" label="IDC_CONTENT_CONTEXT_OPENLINKINPROFILE"/>
  <int value="71" label="IDC_OPEN_LINK_IN_PROFILE_FIRST"/>
  <int value="72" label="IDC_CONTENT_CONTEXT_GENERATEPASSWORD"/>
  <int value="73" label="IDC_SPELLCHECK_MULTI_LINGUAL"/>
  <int value="74" label="IDC_CONTENT_CONTEXT_OPEN_WITH1"/>
  <int value="75" label="IDC_CONTENT_CONTEXT_OPEN_WITH2"/>
  <int value="76" label="IDC_CONTENT_CONTEXT_OPEN_WITH3"/>
  <int value="77" label="IDC_CONTENT_CONTEXT_OPEN_WITH4"/>
  <int value="78" label="IDC_CONTENT_CONTEXT_OPEN_WITH5"/>
  <int value="79" label="IDC_CONTENT_CONTEXT_OPEN_WITH6"/>
  <int value="80" label="IDC_CONTENT_CONTEXT_OPEN_WITH7"/>
  <int value="81" label="IDC_CONTENT_CONTEXT_OPEN_WITH8"/>
  <int value="82" label="IDC_CONTENT_CONTEXT_OPEN_WITH9"/>
  <int value="83" label="IDC_CONTENT_CONTEXT_OPEN_WITH10"/>
  <int value="84" label="IDC_CONTENT_CONTEXT_OPEN_WITH11"/>
  <int value="85" label="IDC_CONTENT_CONTEXT_OPEN_WITH12"/>
  <int value="86" label="IDC_CONTENT_CONTEXT_OPEN_WITH13"/>
  <int value="87" label="IDC_CONTENT_CONTEXT_OPEN_WITH14"/>
</enum>

<enum name="ReportProcessingResult" type="int">
  <int value="0" label="Success">A report was created and uploaded</int>
  <int value="1" label="Suppressed">
    A report was not uploaded because the CSD Whitelist killswitch was present
  </int>
  <int value="2" label="InvalidRequest">
    A report was not uploaded because it could not be serialized
  </int>
  <int value="3" label="Cancelled">
    A report upload was cancelled due to service shutdown
  </int>
  <int value="4" label="RequestFailed">A report upload failed</int>
  <int value="5" label="InvalidResponse">
    The response from a report upload was invalid
  </int>
  <int value="6" label="NoDownload">
    A report was not uploaded because no binary download was found to report
  </int>
</enum>

<enum name="RequestedImageMimeType" type="int">
  <int value="0" label="Png"/>
  <int value="1" label="Jpeg"/>
  <int value="2" label="Webp"/>
  <int value="3" label="Gif"/>
  <int value="4" label="Bmp"/>
  <int value="5" label="Ico"/>
  <int value="6" label="Tiff"/>
  <int value="7" label="Unknown"/>
</enum>

<enum name="RequestMediaKeySystemAccessStatus" type="int">
  <int value="0" label="Requested"/>
  <int value="1" label="Supported"/>
</enum>

<enum name="ResolutionCategory" type="int">
  <int value="0" label="RESOLVE_SUCCESS"/>
  <int value="1" label="RESOLVE_FAIL"/>
  <int value="2" label="RESOLVE_SPECULATIVE_SUCCESS"/>
  <int value="3" label="RESOLVE_SPECULATIVE_FAIL"/>
</enum>

<enum name="ResolutionUnspecWasteCategory" type="int">
  <int value="0" label="AF_WASTE_IPV4_ONLY">
    Running in a IPv4-only configuration.  No waste.
  </int>
  <int value="1" label="AF_WASTE_CACHE_IPV4">
    Cache contained an UNSPEC result for this IPv4 lookup.  Waste.
  </int>
  <int value="2" label="AF_WASTE_CACHE_UNSPEC">
    Cache contained an IPv4 result for this UNSPEC lookup.  Waste.
  </int>
  <int value="3" label="AF_WASTE_JOB_IPV4">
    Job pool contained an UNSPEC job for this IPv4 lookup.  Waste.
  </int>
  <int value="4" label="AF_WASTE_JOB_UNSPEC">
    Job pool contained an IPv4 job for this UNSPEC lookup.  Waste.
  </int>
  <int value="5" label="AF_WASTE_NONE_IPV4">
    A new job was needed for this IPv4 lookup.  No waste.
  </int>
  <int value="6" label="AF_WASTE_NONE_UNSPEC">
    A new job was needed for this UNSPEC lookup.  No waste.
  </int>
</enum>

<enum name="ResourceHasClient" type="int">
  <int value="0" label="No client"/>
  <int value="1" label="Has client"/>
</enum>

<enum name="ResourceLoaderInliningStatus" type="int">
  <int value="0" label="Applicable"/>
  <int value="1" label="EarlyAllocation"/>
  <int value="2" label="UnknownContentLength"/>
  <int value="3" label="LargeContent"/>
  <int value="4" label="HasTransferEncoding"/>
  <int value="5" label="HasContentEncoding"/>
</enum>

<enum name="ResourcePrefetchPredictorMainFrameRequestStats" type="int">
  <int value="0" label="MAIN_FRAME_REQUEST_STATS_TOTAL_REQUESTS"/>
  <int value="1" label="MAIN_FRAME_REQUEST_STATS_PROCESSED_REQUESTS"/>
  <int value="2" label="MAIN_FRAME_REQUEST_STATS_TOTAL_REDIRECTS"/>
  <int value="3" label="MAIN_FRAME_REQUEST_STATS_PROCESSED_REDIRECTS"/>
  <int value="4" label="MAIN_FRAME_REQUEST_STATS_TOTAL_RESPONSES"/>
  <int value="5" label="MAIN_FRAME_REQUEST_STATS_PROCESSED_RESPONSES"/>
</enum>

<enum name="ResourcePrefetchPredictorNavigationEvent" type="int">
  <int value="0" label="NAVIGATION_EVENT_REQUEST_STARTED"/>
  <int value="1" label="NAVIGATION_EVENT_REQUEST_REDIRECTED"/>
  <int value="2" label="NAVIGATION_EVENT_REQUEST_REDIRECTED_EMPTY_URL"/>
  <int value="3" label="NAVIGATION_EVENT_REQUEST_EXPIRED"/>
  <int value="4" label="NAVIGATION_EVENT_RESPONSE_STARTED"/>
  <int value="5" label="NAVIGATION_EVENT_ONLOAD"/>
  <int value="6" label="NAVIGATION_EVENT_ONLOAD_EMPTY_URL"/>
  <int value="7" label="NAVIGATION_EVENT_ONLOAD_UNTRACKED_URL"/>
  <int value="8" label="NAVIGATION_EVENT_ONLOAD_TRACKED_URL"/>
  <int value="9" label="NAVIGATION_EVENT_SHOULD_TRACK_URL"/>
  <int value="10" label="NAVIGATION_EVENT_SHOULD_NOT_TRACK_URL"/>
  <int value="11" label="NAVIGATION_EVENT_URL_TABLE_FULL"/>
  <int value="12" label="NAVIGATION_EVENT_HAVE_PREDICTIONS_FOR_URL"/>
  <int value="13" label="NAVIGATION_EVENT_NO_PREDICTIONS_FOR_URL"/>
</enum>

<enum name="ResourcePrefetchPredictorNavigationStatus" type="int">
  <int value="0" label="NAVIGATION_STATUS_COMPLETE"/>
  <int value="1" label="NAVIGATION_STATUS_COMPLETE_ABANDONED"/>
  <int value="2" label="NAVIGATION_STATUS_ABANDONED"/>
</enum>

<enum name="ResourcePrefetchPredictorNetworkType" type="int">
  <int value="-2" label="CONNECTION_ALL"/>
  <int value="-1" label="CONNECTION_CELLULAR"/>
  <int value="0" label="CONNECTION_UNKNOWN"/>
  <int value="1" label="CONNECTION_ETHERNET"/>
  <int value="2" label="CONNECTION_WIFI"/>
  <int value="3" label="CONNECTION_2G"/>
  <int value="4" label="CONNECTION_3G"/>
  <int value="5" label="CONNECTION_4G"/>
  <int value="6" label="CONNECTION_NONE"/>
  <int value="7" label="CONNECTION_BLUETOOTH"/>
</enum>

<enum name="ResourcePrefetchPredictorReportingEvent" type="int">
  <int value="0" label="REPORTING_EVENT_ALL_HISTORY_CLEARED"/>
  <int value="1" label="REPORTING_EVENT_PARTIAL_HISTORY_CLEARED"/>
</enum>

<enum name="ResourcePrefetchPredictorRequestStats" type="int">
  <int value="0" label="REQUEST_STATS_TOTAL_RESPONSES"/>
  <int value="1" label="REQUEST_STATS_TOTAL_PROCESSED_RESPONSES"/>
  <int value="2" label="REQUEST_STATS_NO_RESOURCE_REQUEST_INFO"/>
  <int value="3" label="REQUEST_STATS_NO_RENDER_VIEW_ID_FROM_REQUEST_INFO"/>
</enum>

<enum name="ResourcePrefetchPredictorResourceStatus" type="int">
  <int value="0" label="RESOURCE_STATUS_HANDLED"/>
  <int value="1" label="RESOURCE_STATUS_NOT_HTTP_PAGE"/>
  <int value="2" label="RESOURCE_STATUS_NOT_HTTP_RESOURCE"/>
  <int value="4" label="RESOURCE_STATUS_UNSUPPORTED_MIME_TYPE"/>
  <int value="8" label="RESOURCE_STATUS_NOT_GET"/>
  <int value="16" label="RESOURCE_STATUS_URL_TOO_LONG"/>
  <int value="32" label="RESOURCE_STATUS_NOT_CACHEABLE"/>
  <int value="64" label="RESOURCE_STATUS_HEADERS_MISSING"/>
</enum>

<enum name="ResourceReporterCpuUsage" type="int">
  <int value="0" label="0-10%"/>
  <int value="1" label="10%-30%"/>
  <int value="2" label="30%-60%"/>
  <int value="3" label="&gt;60%"/>
</enum>

<enum name="ResourceReporterMemoryUsage" type="int">
  <int value="0" label="0-200MB"/>
  <int value="1" label="200MB-400MB"/>
  <int value="2" label="400MB-600MB"/>
  <int value="3" label="600MB-800MB"/>
  <int value="4" label="800MB-1GB"/>
  <int value="5" label="&gt;1GB."/>
</enum>

<enum name="ResourceType" type="int">
  <int value="0" label="Main resource"/>
  <int value="1" label="Image"/>
  <int value="2" label="CSSS"/>
  <int value="3" label="Script"/>
  <int value="4" label="Font"/>
  <int value="5" label="Raw"/>
  <int value="6" label="SVG"/>
  <int value="7" label="XSL"/>
  <int value="8" label="Link prefetch"/>
  <int value="9" label="Link subresource"/>
  <int value="10" label="Text track"/>
  <int value="11" label="Shader"/>
  <int value="12" label="Import resource"/>
</enum>

<enum name="RestoredCachedStyleSheet" type="int">
  <int value="0" label="No usable cache found"/>
  <int value="1" label="Cached StyleSheetContents was reused"/>
</enum>

<enum name="RevalidationPolicy" type="int">
  <int value="0" label="Use"/>
  <int value="1" label="Revalidate"/>
  <int value="2" label="Reload"/>
  <int value="3" label="Load"/>
</enum>

<enum name="RunningMode" type="int">
  <int value="0" label="Document Mode"/>
  <int value="1" label="Tabbed Mode"/>
</enum>

<enum name="SadTabKind" type="int">
  <int value="0" label="Crash (Aw, Snap!)"/>
  <int value="1" label="Kill (He's dead, Jim!)"/>
</enum>

<enum name="SafeBrowsingParseV4HashResult" type="int">
  <int value="0" label="PARSE_FROM_STRING_ERROR"/>
  <int value="1" label="UNEXPECTED_THREAT_ENTRY_TYPE_ERROR"/>
  <int value="2" label="UNEXPECTED_THREAT_TYPE_ERROR"/>
  <int value="3" label="UNEXPECTED_PLATFORM_TYPE_ERROR"/>
  <int value="4" label="NO_METADATA_ERROR"/>
  <int value="5" label="INCONSISTENT_THREAT_TYPE_ERROR"/>
</enum>

<enum name="SafeBrowsingParseV4UpdateResult" type="int">
  <int value="0" label="PARSE_FROM_STRING_ERROR"/>
  <int value="1" label="NO_PLATFORM_TYPE_ERROR"/>
  <int value="2" label="NO_THREAT_ENTRY_TYPE_ERROR"/>
  <int value="3" label="NO_THREAT_TYPE_ERROR"/>
  <int value="4" label="NO_STATE_ERROR"/>
</enum>

<enum name="SafeBrowsingV4OperationResult" type="int">
  <int value="0" label="STATUS_200"/>
  <int value="1" label="PARSE_ERROR (subset of STATUS_200)"/>
  <int value="2" label="NETWORK_ERROR"/>
  <int value="3" label="HTTP_ERROR"/>
  <int value="4" label="BACKOFF_ERROR"/>
  <int value="5" label="MIN_WAIT_DURATION_ERROR"/>
  <int value="6" label="ALREADY_PENDING_ERROR"/>
</enum>

<enum name="SavePasswordPromptResponseType" type="int">
  <int value="0" label="NO_RESPONSE"/>
  <int value="1" label="REMEMBER_PASSWORD"/>
  <int value="2" label="DONT_REMEMBER_PASSWORD"/>
</enum>

<enum name="SB2BloomFailure" type="int">
  <obsolete>
    Bloom filter support deleted in October 2012.
  </obsolete>
  <int value="0" label="READ_OPEN"/>
  <int value="1" label="READ_VERSION"/>
  <int value="2" label="READ_NUM_KEYS"/>
  <int value="3" label="READ_KEY"/>
  <int value="4" label="READ_DATA_MINSIZE"/>
  <int value="5" label="READ_DATA_MAXSIZE"/>
  <int value="6" label="READ_DATA_SHORT"/>
  <int value="7" label="READ_DATA"/>
</enum>

<enum name="SB2BloomFilterFalsePositives" type="int">
  <obsolete>
    Bloom filter support deleted in October 2012.
  </obsolete>
  <int value="0" label="ALL_MISSES"/>
  <int value="1" label="FALSE_POSITIVE_MISSES"/>
</enum>

<enum name="SB2DatabaseFailure" type="int">
  <int value="0" label="FAILURE_DATABASE_CORRUPT"/>
  <int value="1" label="FAILURE_DATABASE_CORRUPT_HANDLER"/>
  <int value="2" label="FAILURE_BROWSE_DATABASE_UPDATE_BEGIN"/>
  <int value="3" label="FAILURE_BROWSE_DATABASE_UPDATE_FINISH"/>
  <int value="4" label="FAILURE_DATABASE_FILTER_MISSING_OBSOLETE"/>
  <int value="5" label="FAILURE_DATABASE_FILTER_READ_OBSOLETE"/>
  <int value="6" label="FAILURE_DATABASE_FILTER_WRITE_OBSOLETE"/>
  <int value="7" label="FAILURE_DATABASE_FILTER_DELETE"/>
  <int value="8" label="FAILURE_DATABASE_STORE_MISSING"/>
  <int value="9" label="FAILURE_DATABASE_STORE_DELETE"/>
  <int value="10" label="FAILURE_DOWNLOAD_DATABASE_UPDATE_BEGIN"/>
  <int value="11" label="FAILURE_DOWNLOAD_DATABASE_UPDATE_FINISH"/>
  <int value="12" label="FAILURE_WHITELIST_DATABASE_UPDATE_BEGIN"/>
  <int value="13" label="FAILURE_WHITELIST_DATABASE_UPDATE_FINISH"/>
  <int value="14" label="FAILURE_BROWSE_PREFIX_SET_READ"/>
  <int value="15" label="FAILURE_BROWSE_PREFIX_SET_WRITE"/>
  <int value="16" label="FAILURE_BROWSE_PREFIX_SET_DELETE"/>
  <int value="17" label="FAILURE_EXTENSION_BLACKLIST_UPDATE_BEGIN"/>
  <int value="18" label="FAILURE_EXTENSION_BLACKLIST_UPDATE_FINISH"/>
  <int value="19" label="FAILURE_EXTENSION_BLACKLIST_DELETE"/>
  <int value="20" label="FAILURE_SIDE_EFFECT_FREE_WHITELIST_UPDATE_BEGIN"/>
  <int value="21" label="FAILURE_SIDE_EFFECT_FREE_WHITELIST_UPDATE_FINISH"/>
  <int value="22" label="FAILURE_SIDE_EFFECT_FREE_WHITELIST_DELETE"/>
  <int value="23" label="FAILURE_SIDE_EFFECT_FREE_WHITELIST_PREFIX_SET_READ"/>
  <int value="24" label="FAILURE_SIDE_EFFECT_FREE_WHITELIST_PREFIX_SET_WRITE"/>
  <int value="25" label="FAILURE_SIDE_EFFECT_FREE_WHITELIST_PREFIX_SET_DELETE"/>
  <int value="26" label="FAILURE_IP_BLACKLIST_UPDATE_BEGIN"/>
  <int value="27" label="FAILURE_IP_BLACKLIST_UPDATE_FINISH"/>
  <int value="28" label="FAILURE_IP_BLACKLIST_UPDATE_INVALID"/>
  <int value="29" label="FAILURE_IP_BLACKLIST_DELETE"/>
  <int value="30" label="FAILURE_UNWANTED_SOFTWARE_DATABASE_UPDATE_BEGIN"/>
  <int value="31" label="FAILURE_UNWANTED_SOFTWARE_DATABASE_UPDATE_FINISH"/>
  <int value="32" label="FAILURE_UNWANTED_SOFTWARE_PREFIX_SET_READ"/>
  <int value="33" label="FAILURE_UNWANTED_SOFTWARE_PREFIX_SET_WRITE"/>
  <int value="34" label="FAILURE_UNWANTED_SOFTWARE_PREFIX_SET_DELETE"/>
  <int value="35" label="FAILURE_RESOURCE_BLACKLIST_UPDATE_BEGIN"/>
  <int value="36" label="FAILURE_RESOURCE_BLACKLIST_UPDATE_FINISH"/>
  <int value="37" label="FAILURE_RESOURCE_BLACKLIST_DELETE"/>
  <int value="38" label="FAILURE_MODULE_WHITELIST_DELETE"/>
</enum>

<enum name="SB2DownloadChecks" type="int">
  <int value="0" label="URL_CHECKS_TOTAL"/>
  <int value="1" label="URL_CHECKS_CANCELED"/>
  <int value="2" label="URL_CHECKS_MALWARE"/>
  <int value="3" label="HASH_CHECKS_TOTAL"/>
  <int value="4" label="HASH_CHECKS_MALWARE"/>
</enum>

<enum name="SB2FilterLoad" type="int">
  <int value="0" label="ALL"/>
  <int value="1" label="PREFIX_SET"/>
  <int value="2" label="BLOOM_FILTER"/>
</enum>

<enum name="SB2FormatEvent" type="int">
  <summary>
    Track information for various error cases in the safe-browsing store.
  </summary>
  <int value="0" label="FILE_CORRUPT">Store corruption detected</int>
  <int value="1" label="SQLITE_CORRUPT">
    SQLite store orruption detected (obsolete)
  </int>
  <int value="2" label="FOUND_SQLITE">SQLite store found (obsolete)</int>
  <int value="3" label="FOUND_UNKNOWN">Store format unknown at open</int>
  <int value="4" label="SQLITE_DELETED">
    Deleted SQLite-format store (obsolete)
  </int>
  <int value="5" label="SQLITE_DELETE_FAILED">
    Deletion of SQLite-format store failed (obsolete)
  </int>
  <int value="6" label="SQLITE_DELETED_ORIGINAL">
    Deleted pre-release SQLite store (obsolete)
  </int>
  <int value="7" label="SQLITE_DELETE_ORIGINAL_FAILED">
    Deletion of pre-release SQLite store failed (obsolete)
  </int>
  <int value="8" label="VALIDITY_CHECKSUM_FAILURE">
    Failed explicit checksum check on failed update from server
  </int>
  <int value="9" label="UPDATE_CHECKSUM_FAILURE">
    Failed checksum check while merging new data into store
  </int>
  <int value="10" label="HEADER_CHECKSUM_FAILURE">
    Failed header checksum check when opening store
  </int>
  <int value="11" label="FOUND_DEPRECATED">
    Store with valid magic number has deprecated version number
  </int>
</enum>

<enum name="SB2GetHashResult" type="int">
  <int value="0" label="STATUS_200"/>
  <int value="1" label="STATUS_204"/>
  <int value="2" label="FULL_HASH_EMPTY (sum of STATUS_204, *_ERROR)"/>
  <int value="3" label="FULL_HASH_HIT (subset of STATUS_200)"/>
  <int value="4" label="FULL_HASH_MISS (subset of STATUS_200)"/>
  <int value="5" label="PARSE_ERROR (subset of STATUS_200)"/>
  <int value="6" label="NETWORK_ERROR"/>
  <int value="7" label="HTTP_ERROR"/>
  <int value="8" label="BACKOFF_ERROR"/>
</enum>

<enum name="SB2InterstitialAction" type="int">
  <obsolete>
    Deprecated 9/2014.
  </obsolete>
  <int value="0" label="MALWARE_SHOW"/>
  <int value="1" label="MALWARE_DONT_PROCEED"/>
  <int value="2" label="MALWARE_FORCED_DONT_PROCEED"/>
  <int value="3" label="MALWARE_PROCEED"/>
  <int value="4" label="MULTIPLE_SHOW"/>
  <int value="5" label="MULTIPLE_DONT_PROCEED"/>
  <int value="6" label="MULTIPLE_FORCED_DONT_PROCEED"/>
  <int value="7" label="MULTIPLE_PROCEED"/>
  <int value="8" label="PHISHING_SHOW"/>
  <int value="9" label="PHISHING_DONT_PROCEED"/>
  <int value="10" label="PHISHING_FORCED_DONT_PROCEED"/>
  <int value="11" label="PHISHING_PROCEED"/>
  <int value="12" label="MALWARE_SHOW_ADVANCED"/>
  <int value="13" label="MULTIPLE_SHOW_ADVANCED"/>
  <int value="14" label="PHISHING_SHOW_ADVANCED"/>
</enum>

<enum name="SB2InterstitialActionDetails" type="int">
  <obsolete>
    Deprecated 9/2014.
  </obsolete>
  <int value="0" label="MALWARE_SHOW_NEW_SITE"/>
  <int value="1" label="MALWARE_PROCEED_NEW_SITE"/>
  <int value="2" label="MALWARE_SHOW_CROSS_SITE"/>
  <int value="3" label="MALWARE_PROCEED_CROSS_SITE"/>
  <int value="4" label="PHISHING_SHOW_NEW_SITE"/>
  <int value="5" label="PHISHING_PROCEED_NEW_SITE"/>
  <int value="6" label="PHISHING_SHOW_CROSS_SITE"/>
  <int value="7" label="PHISHING_PROCEED_CROSS_SITE"/>
</enum>

<enum name="SB2PrefixSetEvent" type="int">
  <obsolete>
    Deprecated 9/2012. No longer generated.
  </obsolete>
  <int value="0" label="PREFIX_SET_HIT"/>
  <int value="1" label="BLOOM_HIT"/>
  <int value="2" label="BLOOM_MISS_PREFIX_SET_HIT"/>
  <int value="3" label="BLOOM_MISS_PREFIX_HIT_INVALID"/>
  <int value="4" label="GETPREFIXES_BROKEN"/>
  <int value="5" label="GETPREFIXES_BROKEN_SIZE"/>
  <int value="6" label="GETPREFIXES_FIRST_BROKEN"/>
  <int value="7" label="SBPREFIX_WAS_BROKEN"/>
  <int value="8" label="GETPREFIXES_BROKEN_SORTING"/>
  <int value="9" label="GETPREFIXES_BROKEN_DUPLICATION"/>
  <int value="10" label="GETPREFIX_UNSORTED_IS_DELTA"/>
  <int value="11" label="GETPREFIX_UNSORTED_IS_INDEX"/>
  <int value="12" label="CREATE_PREFIX_SET_CHECKSUM"/>
  <int value="13" label="CREATE_BLOOM_FILTER_CHECKSUM"/>
  <int value="14" label="CREATE_ADD_PREFIXES_CHECKSUM"/>
  <int value="15" label="CREATE_PREFIXES_CHECKSUM"/>
  <int value="16" label="GET_PREFIXES_CHECKSUM"/>
  <int value="17" label="MISMATCH_PREFIX_SET_CHECKSUM"/>
  <int value="18" label="MISMATCH_BLOOM_FILTER_CHECKSUM"/>
  <int value="19" label="BLOOM_MISS_PREFIX_HIT"/>
</enum>

<enum name="SB2RemoteCallResult" type="int">
  <int value="0" label="INTERNAL_ERROR"/>
  <int value="1" label="TIMEOUT"/>
  <int value="2" label="SAFE"/>
  <int value="3" label="UNSAFE"/>
  <int value="4" label="JSON_EMPTY"/>
  <int value="5" label="JSON_FAILED_TO_PARSE"/>
  <int value="6" label="JSON_UNKNOWN_THREAT"/>
  <int value="7" label="UNSUPPORTED"/>
</enum>

<enum name="SB2RemoteCallThreatSubType" type="int">
  <int value="0" label="No subtype added"/>
  <int value="1" label="Potentially Harmful App Landing URL"/>
  <int value="2" label="Potentially Harmful App Distribution URL"/>
  <int value="3" label="Unknown"/>
  <int value="4" label="Social Engineering Ads URL"/>
  <int value="5" label="Social Engineering Landing URL"/>
  <int value="6" label="Phishing URL"/>
</enum>

<enum name="SB2SideEffectFreeWhitelistStatus" type="int">
  <int value="0" label="Enabled"/>
  <int value="1" label="Disabled"/>
</enum>

<enum name="SB2UpdateResult" type="int">
  <int value="0" label="FAIL"/>
  <int value="1" label="SUCCESS"/>
  <int value="2" label="BACKUP_CONNECT_FAIL"/>
  <int value="3" label="BACKUP_CONNECT_SUCCESS"/>
  <int value="4" label="BACKUP_HTTP_FAIL"/>
  <int value="5" label="BACKUP_HTTP_SUCCESS"/>
  <int value="6" label="BACKUP_NETWORK_FAIL"/>
  <int value="7" label="BACKUP_NETWORK_SUCCESS"/>
</enum>

<enum name="SBClientDetectionPreClassificationCheckFail" type="int">
  <int value="0" label="PROXY_FETCH"/>
  <int value="1" label="PRIVATE_IP"/>
  <int value="2" label="OFF_THE_RECORD"/>
  <int value="3" label="MATCH_CSD_WHITELIST"/>
  <int value="4" label="TOO_MANY_REPORTS"/>
  <int value="5" label="UNSUPPORTED_MIME_TYPE"/>
  <int value="6" label="NO_DATABASE_MANAGER"/>
  <int value="7" label="KILLSWITCH"/>
  <int value="8" label="CANCEL"/>
  <int value="9" label="RESULT_FROM_CACHE"/>
  <int value="10" label="NOT_HTTP_URL"/>
</enum>

<enum name="SBClientDownloadCheckDownloadStats" type="int">
  <int value="0" label="INVALID_URL"/>
  <int value="1" label="SB_DISABLED"/>
  <int value="2" label="WHITELISTED_URL"/>
  <int value="3" label="WHITELISTED_REFERRER"/>
  <int value="4" label="INVALID_REQUEST_PROTO"/>
  <int value="5" label="SERVER_PING_FAILED"/>
  <int value="6" label="INVALID_RESPONSE_PROTO"/>
  <int value="7" label="NOT_BINARY_FILE"/>
  <int value="8" label="REQUEST_CANCELED"/>
  <int value="9" label="DOWNLOAD_DANGEROUS"/>
  <int value="10" label="DOWNLOAD_SAFE"/>
  <int value="11" label="EMPTY_URL_CHAIN"/>
  <int value="12" label="HTTPS_URL"/>
  <int value="13" label="PING_DISABLED"/>
  <int value="14" label="TRUSTED_EXECUTABLE"/>
  <int value="15" label="OS_NOT_SUPPORTED"/>
  <int value="16" label="DOWNLOAD_UNCOMMON"/>
  <int value="17" label="DOWNLOAD_NOT_SUPPORTED"/>
  <int value="18" label="INVALID_RESPONSE_VERDICT"/>
  <int value="19" label="ARCHIVE_WITHOUT_BINARIES"/>
  <int value="20" label="DOWNLOAD_DANGEROUS_HOST"/>
  <int value="21" label="DOWNLOAD_POTENTIALLY_UNWANTED"/>
  <int value="22" label="UNSUPPORTED_URL_SCHEME"/>
</enum>

<enum name="SBClientDownloadExtensions" type="int">
  <int value="-1" label="File extension not categorized"/>
  <int value="0" label="EXE"/>
  <int value="1" label="MSI"/>
  <int value="2" label="CAB"/>
  <int value="3" label="SYS"/>
  <int value="4" label="SCR"/>
  <int value="5" label="DRV"/>
  <int value="6" label="BAT"/>
  <int value="7" label="ZIP"/>
  <int value="8" label="RAR"/>
  <int value="9" label="DLL"/>
  <int value="10" label="PIF"/>
  <int value="11" label="COM"/>
  <int value="12" label="JAR"/>
  <int value="13" label="CLASS"/>
  <int value="14" label="PDF"/>
  <int value="15" label="VB"/>
  <int value="16" label="REG"/>
  <int value="17" label="GRP"/>
  <int value="18" label="OTHER"/>
  <int value="19" label="CRX"/>
  <int value="20" label="APK"/>
  <int value="21" label="DMG"/>
  <int value="22" label="PKG"/>
  <int value="23" label="TORRENT"/>
  <int value="24" label="WEBSITE"/>
  <int value="25" label="URL"/>
  <int value="26" label="VBE"/>
  <int value="27" label="VBS"/>
  <int value="28" label="JS"/>
  <int value="29" label="JSE"/>
  <int value="30" label="MHT"/>
  <int value="31" label="MHTML"/>
  <int value="32" label="MSC"/>
  <int value="33" label="MSP"/>
  <int value="34" label="MST"/>
  <int value="35" label="BAS"/>
  <int value="36" label="HTA"/>
  <int value="37" label="MSH"/>
  <int value="38" label="MSH1"/>
  <int value="39" label="MSH1XML"/>
  <int value="40" label="MSH2"/>
  <int value="41" label="MSH2XML"/>
  <int value="42" label="MSHXML"/>
  <int value="43" label="PS1"/>
  <int value="44" label="PS1XML"/>
  <int value="45" label="PS2"/>
  <int value="46" label="PS2XML"/>
  <int value="47" label="PSC1"/>
  <int value="48" label="PSC2"/>
  <int value="49" label="SCF"/>
  <int value="50" label="SCT"/>
  <int value="51" label="WSF"/>
  <int value="52" label="7Z"/>
  <int value="53" label="XZ"/>
  <int value="54" label="GZ"/>
  <int value="55" label="TGZ"/>
  <int value="56" label="BZ2"/>
  <int value="57" label="TAR"/>
  <int value="58" label="ARJ"/>
  <int value="59" label="LZH"/>
  <int value="60" label="LHA"/>
  <int value="61" label="WIM"/>
  <int value="62" label="Z"/>
  <int value="63" label="LZMA"/>
  <int value="64" label="CPIO"/>
  <int value="65" label="CMD"/>
  <int value="66" label="APP"/>
  <int value="67" label="OSX -- Not supported"/>
  <int value="68" label="SWF"/>
  <int value="69" label="SPL"/>
  <int value="70" label="APPLICATION"/>
  <int value="71" label="ASP"/>
  <int value="72" label="ASX"/>
  <int value="73" label="CFG"/>
  <int value="74" label="CHI"/>
  <int value="75" label="CHM"/>
  <int value="76" label="CPL"/>
  <int value="77" label="FXP"/>
  <int value="78" label="HLP"/>
  <int value="79" label="HTT"/>
  <int value="80" label="INF"/>
  <int value="81" label="INI"/>
  <int value="82" label="INS"/>
  <int value="83" label="ISP"/>
  <int value="84" label="LNK"/>
  <int value="85" label="LOCAL"/>
  <int value="86" label="MANIFEST"/>
  <int value="87" label="MAU"/>
  <int value="88" label="MMC"/>
  <int value="89" label="MOF"/>
  <int value="90" label="OCX"/>
  <int value="91" label="OPS"/>
  <int value="92" label="PCD"/>
  <int value="93" label="PLG"/>
  <int value="94" label="PRF"/>
  <int value="95" label="PRG"/>
  <int value="96" label="PST"/>
  <int value="97" label="CRT"/>
  <int value="98" label="ADE"/>
  <int value="99" label="ADP"/>
  <int value="100" label="MAD"/>
  <int value="101" label="MAF"/>
  <int value="102" label="MAG"/>
  <int value="103" label="MAM"/>
  <int value="104" label="MAQ"/>
  <int value="105" label="MAR"/>
  <int value="106" label="MAS"/>
  <int value="107" label="MAT"/>
  <int value="108" label="MAV"/>
  <int value="109" label="MAW"/>
  <int value="110" label="MDA"/>
  <int value="111" label="MDB"/>
  <int value="112" label="MDE"/>
  <int value="113" label="MDT"/>
  <int value="114" label="MDW"/>
  <int value="115" label="MDZ"/>
  <int value="116" label="SHB"/>
  <int value="117" label="SHS"/>
  <int value="118" label="VSD"/>
  <int value="119" label="VSMACROS"/>
  <int value="120" label="VSS"/>
  <int value="121" label="VST"/>
  <int value="122" label="VSW"/>
  <int value="123" label="WS"/>
  <int value="124" label="WSC"/>
  <int value="125" label="WSH"/>
  <int value="126" label="XBAP"/>
  <int value="127" label="XNK"/>
  <int value="128" label="JNLP"/>
  <int value="129" label="PL"/>
  <int value="130" label="PY"/>
  <int value="131" label="PYC"/>
  <int value="132" label="PYW"/>
  <int value="133" label="RB"/>
  <int value="134" label="BASH"/>
  <int value="135" label="CSH"/>
  <int value="136" label="KSH"/>
  <int value="137" label="SH"/>
  <int value="138" label="SHAR"/>
  <int value="139" label="TCSH"/>
  <int value="140" label="COMMAND"/>
  <int value="141" label="DEB"/>
  <int value="142" label="RPM"/>
  <int value="143" label="DEX"/>
  <int value="144" label="APPREF_MS"/>
  <int value="145" label="GADGET"/>
  <int value="146" label="EFI"/>
  <int value="147" label="FON"/>
  <int value="148" label="BZIP2"/>
  <int value="149" label="GZIP"/>
  <int value="150" label="TAZ"/>
  <int value="151" label="TBZ"/>
  <int value="152" label="TBZ2"/>
  <int value="153" label="PARTIAL"/>
  <int value="154" label="SVG"/>
  <int value="155" label="XML"/>
  <int value="156" label="XRM_MS"/>
  <int value="157" label="XSL"/>
  <int value="158" label="ACTION"/>
  <int value="159" label="BIN"/>
  <int value="160" label="INX"/>
  <int value="161" label="IPA -- Not supported"/>
  <int value="162" label="ISU"/>
  <int value="163" label="JOB"/>
  <int value="164" label="OUT"/>
  <int value="165" label="PAD -- Not supported"/>
  <int value="166" label="PAF"/>
  <int value="167" label="RGS"/>
  <int value="168" label="U3P"/>
  <int value="169" label="VBSCRIPT"/>
  <int value="170" label="WORKFLOW"/>
  <int value="171" label="001"/>
  <int value="172" label="ACE"/>
  <int value="173" label="ARC"/>
  <int value="174" label="B64"/>
  <int value="175" label="BALZ"/>
  <int value="176" label="BHX"/>
  <int value="177" label="BZ"/>
  <int value="178" label="FAT"/>
  <int value="179" label="HFS"/>
  <int value="180" label="HQX"/>
  <int value="181" label="ISO"/>
  <int value="182" label="LPAQ1"/>
  <int value="183" label="LPAQ5"/>
  <int value="184" label="LPAQ8"/>
  <int value="185" label="MIM"/>
  <int value="186" label="NTFS"/>
  <int value="187" label="PAQ8F"/>
  <int value="188" label="PAQ8JD"/>
  <int value="189" label="PAQ8L"/>
  <int value="190" label="PAQ8O"/>
  <int value="191" label="PEA"/>
  <int value="192" label="PET"/>
  <int value="193" label="PUP"/>
  <int value="194" label="QUAD"/>
  <int value="195" label="R00"/>
  <int value="196" label="R01"/>
  <int value="197" label="R02"/>
  <int value="198" label="R03"/>
  <int value="199" label="R04"/>
  <int value="200" label="R05"/>
  <int value="201" label="R06"/>
  <int value="202" label="R07"/>
  <int value="203" label="R08"/>
  <int value="204" label="R09"/>
  <int value="205" label="R10"/>
  <int value="206" label="R11"/>
  <int value="207" label="R12"/>
  <int value="208" label="R13"/>
  <int value="209" label="R14"/>
  <int value="210" label="R15"/>
  <int value="211" label="R16"/>
  <int value="212" label="R17"/>
  <int value="213" label="R18"/>
  <int value="214" label="R19"/>
  <int value="215" label="R20"/>
  <int value="216" label="R21"/>
  <int value="217" label="R22"/>
  <int value="218" label="R23"/>
  <int value="219" label="R24"/>
  <int value="220" label="R25"/>
  <int value="221" label="R26"/>
  <int value="222" label="R27"/>
  <int value="223" label="R28"/>
  <int value="224" label="R29"/>
  <int value="225" label="SLP"/>
  <int value="226" label="SQUASHFS"/>
  <int value="227" label="SWM"/>
  <int value="228" label="TPZ"/>
  <int value="229" label="TXZ"/>
  <int value="230" label="TZ"/>
  <int value="231" label="UDF"/>
  <int value="232" label="UU"/>
  <int value="233" label="UUE"/>
  <int value="234" label="VHD"/>
  <int value="235" label="VMDK"/>
  <int value="236" label="WRC"/>
  <int value="237" label="XAR"/>
  <int value="238" label="XXE"/>
  <int value="239" label="ZIPX"/>
  <int value="240" label="ZPAQ"/>
  <int value="241" label="RELS"/>
  <int value="242" label="MSG"/>
  <int value="243" label="EML"/>
  <int value="244" label="RTF"/>
  <int value="245" label="VHDX"/>
  <int value="246" label="SEARCH_MS"/>
  <int value="247" label="IMG"/>
  <int value="248" label="SMI"/>
  <int value="249" label="SPARSEBUNDLE"/>
  <int value="250" label="SPARSEIMAGE"/>
  <int value="251" label="CDR"/>
  <int value="252" label="DMGPART"/>
  <int value="253" label="DVDR"/>
  <int value="254" label="DART"/>
  <int value="255" label="DC42"/>
  <int value="256" label="DISKCOPY42"/>
  <int value="257" label="IMGPART"/>
  <int value="258" label="NDIF"/>
  <int value="259" label="UDIF"/>
  <int value="260" label="TOAST"/>
  <int value="261" label="RUN"/>
  <int value="262" label="AD"/>
</enum>

<enum name="SBClientDownloadIsSignedBinary" type="int">
  <int value="0" label="Unsigned"/>
  <int value="1" label="Signed"/>
</enum>

<enum name="SBClientMalwareSentReports" type="int">
  <int value="0" label="Sent"/>
  <int value="1" label="Hit limit"/>
  <int value="2" label="Failed serialization"/>
</enum>

<enum name="SBClientPhishingCancelClassificationReason" type="int">
  <int value="0" label="NAVIGATE_AWAY"/>
  <int value="1" label="NAVIGATE_WITHIN_PAGE"/>
  <int value="2" label="PAGE_RECAPTURED"/>
  <int value="3" label="SHUTDOWN"/>
  <int value="4" label="NEW_PHISHING_SCORER"/>
</enum>

<enum name="SBClientPhishingClientModelStatus" type="int">
  <int value="0" label="MODEL_SUCCESS"/>
  <int value="1" label="MODEL_NOT_CHANGED"/>
  <int value="2" label="MODEL_FETCH_FAILED"/>
  <int value="3" label="MODEL_EMPTY"/>
  <int value="4" label="MODEL_TOO_LARGE"/>
  <int value="5" label="MODEL_PARSE_ERROR"/>
  <int value="6" label="MODEL_MISSING_FIELDS"/>
  <int value="7" label="MODEL_INVALID_VERSION_NUMBER"/>
  <int value="8" label="BAD_HASH_IDS"/>
</enum>

<enum name="SBClientPhishingScorerCreationStatus" type="int">
  <int value="0" label="SUCCESS"/>
  <int value="1" label="MODEL_OPEN_FAIL"/>
  <int value="2" label="MODEL_FILE_EMPTY"/>
  <int value="3" label="MODEL_FILE_TOO_LARGE"/>
  <int value="4" label="MODEL_PARSE_ERROR"/>
  <int value="5" label="MODEL_MISSING_FIELDS"/>
</enum>

<enum name="SBClientPhishingSkipClassificationReason" type="int">
  <int value="0" label="Not skipped"/>
  <int value="1" label="Skipped: HTTPS"/>
  <int value="2" label="Skipped: Not a GET request"/>
</enum>

<enum name="SBDownloadFeedbackUploadResult" type="int">
  <int value="0" label="SUCCESS"/>
  <int value="1" label="UPLOAD_SUCCESS"/>
  <int value="2" label="UPLOAD_CANCELLED"/>
  <int value="3" label="UPLOAD_METADATA_NET_ERROR"/>
  <int value="4" label="UPLOAD_METADATA_RESPONSE_ERROR"/>
  <int value="5" label="UPLOAD_FILE_NET_ERROR"/>
  <int value="6" label="UPLOAD_FILE_RESPONSE_ERROR"/>
  <int value="7" label="UPLOAD_COMPLETE_RESPONSE_ERROR"/>
</enum>

<enum name="ScrollThread" type="int">
  <int value="0" label="Scroll on impl-thread"/>
  <int value="1" label="Scroll on main-thread"/>
</enum>

<enum name="SCTOrigin" type="int">
  <int value="0" label="SCT_EMBEDDED"/>
  <int value="1" label="SCT_FROM_TLS_EXTENSION"/>
  <int value="2" label="SCT_FROM_OCSP_RESPONSE"/>
</enum>

<enum name="SCTVerifyStatus" type="int">
  <int value="0" label="SCT_STATUS_NONE"/>
  <int value="1" label="SCT_STATUS_LOG_UNKNOWN"/>
  <int value="2" label="SCT_STATUS_INVALID"/>
  <int value="3" label="SCT_STATUS_OK"/>
</enum>

<enum name="SdchDictionaryFate" type="int">
  <summary>
    Fate of an Sdch dictionary, on load and eviction. See
    net/sdch/sdch_owner.cc.
  </summary>
  <int value="1" label="GET_IGNORED"/>
  <int value="2" label="FETCH_FAILED"/>
  <int value="3" label="FETCH_IGNORED_NO_SPACE"/>
  <int value="4" label="FETCH_MANAGER_REFUSED"/>
  <int value="5" label="ADD_RESPONSE_TRIGGERRED"/>
  <int value="6" label="EVICT_FOR_DICT"/>
  <int value="7" label="EVICT_FOR_MEMORY"/>
  <int value="8" label="EVICT_FOR_DESTRUCTION"/>
  <int value="9" label="ADD_PERSISTENCE_TRIGGERRED"/>
  <int value="10" label="UNLOAD_FOR_DESTRUCTION"/>
</enum>

<enum name="SdchPersistenceFailureReason" type="int">
  <summary>
    Errors that can occur when reading in or writing out persisted dictionary
    information. See enum in net/sdch/sdch_owner.h for more information.
  </summary>
  <int value="1" label="NO_FILE"/>
  <int value="2" label="READ_FAILED"/>
  <int value="3" label="WRITE_FAILED"/>
  <int value="4" label="OTHER"/>
</enum>

<enum name="SdchProblemCode" type="int">
  <summary>
    SDCH problem codes, listed in net/base/sdch_problem_code_list.h
  </summary>
  <int value="1" label="ADDED_CONTENT_ENCODING"/>
  <int value="2" label="FIXED_CONTENT_ENCODING"/>
  <int value="3" label="FIXED_CONTENT_ENCODINGS"/>
  <int value="4" label="DECODE_HEADER_ERROR"/>
  <int value="5" label="DECODE_BODY_ERROR"/>
  <int value="6" label="OPTIONAL_GUNZIP_ENCODING_ADDED"/>
  <int value="7" label="BINARY_ADDED_CONTENT_ENCODING"/>
  <int value="8" label="BINARY_FIXED_CONTENT_ENCODING"/>
  <int value="9" label="BINARY_FIXED_CONTENT_ENCODINGS"/>
  <int value="10" label="DICTIONARY_FOUND_HAS_WRONG_DOMAIN"/>
  <int value="11" label="DICTIONARY_FOUND_HAS_WRONG_PORT_LIST"/>
  <int value="12" label="DICTIONARY_FOUND_HAS_WRONG_PATH"/>
  <int value="13" label="DICTIONARY_FOUND_HAS_WRONG_SCHEME"/>
  <int value="14" label="DICTIONARY_HASH_NOT_FOUND"/>
  <int value="15" label="DICTIONARY_HASH_MALFORMED"/>
  <int value="16" label="defunct (DICTIONARY_FOUND_EXPIRED)"/>
  <int value="20" label="DICTIONARY_HAS_NO_HEADER"/>
  <int value="21" label="DICTIONARY_HEADER_LINE_MISSING_COLON"/>
  <int value="22" label="DICTIONARY_MISSING_DOMAIN_SPECIFIER"/>
  <int value="23" label="DICTIONARY_SPECIFIES_TOP_LEVEL_DOMAIN"/>
  <int value="24" label="DICTIONARY_DOMAIN_NOT_MATCHING_SOURCE_URL"/>
  <int value="25" label="DICTIONARY_PORT_NOT_MATCHING_SOURCE_URL"/>
  <int value="26" label="DICTIONARY_HAS_NO_TEXT"/>
  <int value="27" label="DICTIONARY_REFERER_URL_HAS_DOT_IN_PREFIX"/>
  <int value="28" label="DICTIONARY_UNSUPPORTED_VERSION"/>
  <int value="30" label="DICTIONARY_LOAD_ATTEMPT_FROM_DIFFERENT_HOST"/>
  <int value="31" label="DICTIONARY_SELECTED_FOR_SSL"/>
  <int value="32" label="DICTIONARY_ALREADY_LOADED"/>
  <int value="33" label="DICTIONARY_SELECTED_FROM_NON_HTTP"/>
  <int value="34" label="defunct (DICTIONARY_IS_TOO_LARGE)">
    Recorded in separate histogram; see Sdch3.DictionaryFate.
  </int>
  <int value="35" label="defunct (DICTIONARY_COUNT_EXCEEDED)">
    Recorded in separate histogram; see Sdch3.DictionaryFate.
  </int>
  <int value="36" label="defunct">
    DICTIONARY_PREVIOUSLY_SCHEDULED_TO_DOWNLOAD used instead
  </int>
  <int value="37" label="defunct">
    DICTIONARY_PREVIOUSLY_SCHEDULED_TO_DOWNLOAD used instead
  </int>
  <int value="38" label="DICTIONARY_FETCH_READ_FAILED-defunct">
    Used to indicate a broken false return from URLRequest::Read(); no longer
    checking that return value.
  </int>
  <int value="39" label="DICTIONARY_PREVIOUSLY_SCHEDULED_TO_DOWNLOAD"/>
  <int value="40" label="ATTEMPT_TO_DECODE_NON_HTTP_DATA"/>
  <int value="44" label="DICTIONARY_NO_ROOM"/>
  <int value="50" label="MULTIENCODING_FOR_NON_SDCH_REQUEST"/>
  <int value="51" label="SDCH_CONTENT_ENCODE_FOR_NON_SDCH_REQUEST"/>
  <int value="52" label="UNADVERTISED_DICTIONARY_USED"/>
  <int value="53" label="UNADVERTISED_DICTIONARY_USED_CACHED"/>
  <int value="61" label="DOMAIN_BLACKLIST_INCLUDES_TARGET"/>
  <int value="70" label="META_REFRESH_RECOVERY"/>
  <int value="71" label="defunct">
    Almost the same as META_REFRESH_UNSUPPORTED
  </int>
  <int value="72" label="defunct">
    Almost the same as CACHED_META_REFRESH_UNSUPPORTED
  </int>
  <int value="73" label="defunct">
    PASSING_THROUGH_NON_SDCH plus DISCARD_TENTATIVE_SDCH
  </int>
  <int value="74" label="META_REFRESH_UNSUPPORTED"/>
  <int value="75" label="CACHED_META_REFRESH_UNSUPPORTED"/>
  <int value="76" label="PASSING_THROUGH_NON_SDCH"/>
  <int value="77" label="INCOMPLETE_SDCH_CONTENT"/>
  <int value="78" label="PASS_THROUGH_404_CODE"/>
  <int value="79" label="PASS_THROUGH_OLD_CACHED"/>
  <int value="80" label="META_REFRESH_CACHED_RECOVERY"/>
  <int value="81" label="defunct (DISCARD_TENTATIVE_SDCH)">
    Now tracked by ResponseCorruptionDetection.* histograms.
  </int>
  <int value="90" label="defunct (UNFLUSHED_CONTENT)"/>
  <int value="91" label="MISSING_TIME_STATS"/>
  <int value="92" label="CACHE_DECODED"/>
  <int value="93" label="defunct (OVER_10_MINUTES)"/>
  <int value="94" label="UNINITIALIZED"/>
  <int value="95" label="PRIOR_TO_DICTIONARY"/>
  <int value="96" label="DECODE_ERROR"/>
  <int value="100" label="LATENCY_TEST_DISALLOWED"/>
  <int value="105" label="defunct (DISABLED)">
    No longer centrally tracked, since SDCH is enabled or disabled per
    URLRequestContext.
  </int>
  <int value="106" label="defunct (SECURE_SCHEME_NOT_SUPPORTED)">
    SDCH support is now always enabled for secure schemes.
  </int>
  <int value="107" label="DICTIONARY_USED_AFTER_DELETION"/>
</enum>

<enum name="SdchResponseCorruptionDetectionCauses" type="int">
  <summary>
    SDCH decode corruption detection cases, listed in net/filter/sdch_filter.cc.
    See also comments in SdchFilter::ReadFilteredData in the same file.
  </summary>
  <int value="1" label="RESPONSE_404"/>
  <int value="2" label="RESPONSE_NOT_200"/>
  <int value="3" label="RESPONSE_OLD_UNENCODED"/>
  <int value="4" label="RESPONSE_TENTATIVE_SDCH"/>
  <int value="5" label="RESPONSE_NO_DICTIONARY"/>
  <int value="6" label="RESPONSE_CORRUPT_SDCH"/>
  <int value="7" label="RESPONSE_ENCODING_LIE"/>
</enum>

<enum name="SearchAccessPoint" type="int">
  <int value="0" label="Omnibox"/>
  <int value="1" label="Omnibox Instant"/>
  <int value="2" label="Direct Navigation"/>
  <int value="3" label="Direct Navigation Instant"/>
  <int value="4" label="Home Page"/>
  <int value="5" label="Home Page Instant"/>
  <int value="6" label="Search App"/>
  <int value="7" label="Search App Instant"/>
  <int value="8" label="Other"/>
  <int value="9" label="Other Instant"/>
</enum>

<enum name="SearchEngine" type="int">
  <obsolete>
    Deprecated 8/2013. No longer generated.
  </obsolete>
  <summary>
    Indices of most popular prepopulated search engines as defined in
    components/search_engines/search_engine_type.h.
  </summary>
  <int value="0" label="OTHER"/>
  <int value="1" label="GOOGLE"/>
  <int value="2" label="YAHOO"/>
  <int value="3" label="YAHOOJP"/>
  <int value="4" label="BING"/>
  <int value="5" label="ASK"/>
  <int value="6" label="YANDEX"/>
  <int value="7" label="SEZNAM"/>
  <int value="8" label="CENTRUM"/>
  <int value="9" label="NETSPRINT"/>
  <int value="10" label="VIRGILIO"/>
  <int value="11" label="MAILRU"/>
  <int value="12" label="ABCSOK"/>
  <int value="13" label="ALTAVISTA"/>
  <int value="14" label="BAIDU"/>
  <int value="15" label="DAUM"/>
  <int value="16" label="DELFI"/>
  <int value="17" label="DIRI"/>
  <int value="18" label="GOO"/>
  <int value="19" label="IN"/>
  <int value="20" label="NAJDI"/>
  <int value="21" label="NAVER"/>
  <int value="22" label="NETI"/>
  <int value="23" label="OK"/>
  <int value="24" label="POGODAK"/>
  <int value="25" label="POGODOK_MK"/>
  <int value="26" label="RAMBLER"/>
  <int value="27" label="SANOOK"/>
  <int value="28" label="SAPO"/>
  <int value="29" label="TUT"/>
  <int value="30" label="WALLA"/>
  <int value="31" label="ZOZNAM"/>
  <int value="32" label="YAHOOQC"/>
  <int value="33" label="NONE"/>
</enum>

<enum name="SecurityInterstitialDecision" type="int">
  <int value="0" label="SHOW"/>
  <int value="1" label="PROCEED"/>
  <int value="2" label="DONT_PROCEED"/>
  <int value="3" label="PROCEEDING_DISABLED"/>
</enum>

<enum name="SecurityInterstitialInteraction" type="int">
  <int value="0" label="TOTAL_VISITS"/>
  <int value="1" label="SHOW_ADVANCED"/>
  <int value="2" label="SHOW_PRIVACY"/>
  <int value="3" label="SHOW_DIAGNOSTIC"/>
  <int value="4" label="SHOW_LEARN_MORE"/>
  <int value="5" label="RELOAD"/>
  <int value="6" label="OPEN_TIME_SETTINGS"/>
  <int value="7" label="SET_EXTENDED_REPORTING_ENABLED"/>
  <int value="8" label="SET_EXTENDED_REPORTING_DISABLED"/>
  <int value="9" label="EXTENDED_REPORTING_IS_ENABLED"/>
  <int value="10" label="REPORT_PHISHING_ERROR"/>
</enum>

<enum name="ServiceProcessEventType" type="int">
  <int value="0" label="SERVICE_EVENT_INITIALIZE"/>
  <int value="1" label="SERVICE_EVENT_ENABLED_ON_LAUNCH"/>
  <int value="2" label="SERVICE_EVENT_ENABLE"/>
  <int value="3" label="SERVICE_EVENT_DISABLE"/>
  <int value="4" label="SERVICE_EVENT_DISABLE_BY_POLICY"/>
  <int value="5" label="SERVICE_EVENT_LAUNCH"/>
  <int value="6" label="SERVICE_EVENT_LAUNCHED"/>
  <int value="7" label="SERVICE_EVENT_LAUNCH_FAILED"/>
  <int value="8" label="SERVICE_EVENT_CHANNEL_CONNECTED"/>
  <int value="9" label="SERVICE_EVENT_CHANNEL_ERROR"/>
  <int value="10" label="SERVICE_EVENT_INFO_REQUEST"/>
  <int value="11" label="SERVICE_EVENT_INFO_REPLY"/>
  <int value="12" label="SERVICE_EVENT_HISTOGRAMS_REQUEST"/>
  <int value="13" label="SERVICE_EVENT_HISTOGRAMS_REPLY"/>
  <int value="14" label="SERVICE_PRINTERS_REQUEST"/>
  <int value="15" label="SERVICE_PRINTERS_REPLY"/>
</enum>

<enum name="ServicesCustomizationLoadResult" type="int">
  <int value="0" label="Manifest loaded successfully"/>
  <int value="1" label="Manifest not found on server"/>
  <int value="2" label="Manifest parsing error"/>
  <int value="3" label="Failed to load manifest after N retries"/>
</enum>

<enum name="ServiceUtilityProcessHostEventType" type="int">
  <int value="0" label="SERVICE_UTILITY_STARTED"/>
  <int value="1" label="SERVICE_UTILITY_DISCONNECTED"/>
  <int value="2" label="SERVICE_UTILITY_METAFILE_REQUEST"/>
  <int value="3" label="SERVICE_UTILITY_METAFILE_SUCCEEDED"/>
  <int value="4" label="SERVICE_UTILITY_METAFILE_FAILED"/>
  <int value="5" label="SERVICE_UTILITY_CAPS_REQUEST"/>
  <int value="6" label="SERVICE_UTILITY_CAPS_SUCCEEDED"/>
  <int value="7" label="SERVICE_UTILITY_CAPS_FAILED"/>
  <int value="8" label="SERVICE_UTILITY_SEMANTIC_CAPS_REQUEST"/>
  <int value="9" label="SERVICE_UTILITY_SEMANTIC_CAPS_SUCCEEDED"/>
  <int value="10" label="SERVICE_UTILITY_SEMANTIC_CAPS_FAILED"/>
  <int value="11" label="SERVICE_UTILITY_FAILED_TO_START"/>
</enum>

<enum name="ServiceWorkerCacheErrorType" type="int">
  <int value="0" label="OK"/>
  <int value="1" label="Exists Error"/>
  <int value="2" label="Storage Error"/>
  <int value="3" label="Not Found Error"/>
  <int value="4" label="Quota Exceeded Error"/>
</enum>

<enum name="ServiceWorkerCacheResponseType" type="int">
  <int value="0" label="Basic"/>
  <int value="1" label="CORS"/>
  <int value="2" label="Default"/>
  <int value="3" label="Error"/>
  <int value="4" label="Opaque"/>
  <int value="5" label="OpaqueRedirect"/>
</enum>

<enum name="ServiceWorkerDatabaseStatus" type="int">
  <int value="0" label="OK"/>
  <int value="1" label="Not Found Error"/>
  <int value="2" label="IO Error"/>
  <int value="3" label="Corruption Error"/>
  <int value="4" label="Operation Error"/>
  <int value="5" label="Not Supported Error"/>
</enum>

<enum name="ServiceWorkerDeleteAndStartOverResult" type="int">
  <int value="0" label="OK"/>
  <int value="1" label="Failed to delete ServiceWorkerDatabase"/>
  <int value="2" label="Failed to delete ServiceWorkerDiskCache"/>
</enum>

<enum name="ServiceWorkerDiskCacheMigrationResult" type="int">
  <obsolete>
    Deprecated because the migrator was removed as of 12/2015.
  </obsolete>
  <int value="0" label="MIGRATION_OK"/>
  <int value="1" label="MIGRATION_NOT_NECESSARY"/>
  <int value="2" label="MIGRATION_ERROR_MIGRATION_FAILED"/>
  <int value="3" label="MIGRATION_ERROR_UPDATE_DATABASE"/>
</enum>

<enum name="ServiceWorkerDiskCacheMigrationStatus" type="int">
  <obsolete>
    Deprecated because the migrator was removed as of 12/2015.
  </obsolete>
  <int value="0" label="MIGRATION_STATUS_OK"/>
  <int value="1" label="MIGRATION_ERROR_FAILED"/>
  <int value="2" label="MIGRATION_ERROR_MOVE_DISKCACHE"/>
  <int value="3" label="MIGRATION_ERROR_INIT_SRC_DISKCACHE"/>
  <int value="4" label="MIGRATION_ERROR_INIT_DEST_DISKCACHE"/>
  <int value="5" label="MIGRATION_ERROR_OPEN_NEXT_ENTRY"/>
  <int value="6" label="MIGRATION_ERROR_READ_ENTRY_KEY"/>
  <int value="7" label="MIGRATION_ERROR_READ_RESPONSE_INFO"/>
  <int value="8" label="MIGRATION_ERROR_WRITE_RESPONSE_INFO"/>
  <int value="9" label="MIGRATION_ERROR_WRITE_RESPONSE_METADATA"/>
  <int value="10" label="MIGRATION_ERROR_READ_RESPONSE_DATA"/>
  <int value="11" label="MIGRATION_ERROR_WRITE_RESPONSE_DATA"/>
</enum>

<enum name="ServiceWorkerEventHandleRatioType" type="int">
  <int value="0" label="None"/>
  <int value="1" label="Some"/>
  <int value="2" label="All"/>
</enum>

<enum name="ServiceWorkerMetrics.EventType" type="int">
  <int value="0" label="ACTIVATE"/>
  <int value="1" label="INSTALL"/>
  <int value="2" label="FETCH (unused)"/>
  <int value="3" label="SYNC"/>
  <int value="4" label="NOTIFICATION_CLICK"/>
  <int value="5" label="PUSH"/>
  <int value="6" label="GEOFENCING (unused)"/>
  <int value="7" label="SERVICE_PORT_CONNECT (unused)"/>
  <int value="8" label="MESSAGE"/>
  <int value="9" label="NOTIFICATION_CLOSE"/>
  <int value="10" label="FETCH_MAIN_FRAME"/>
  <int value="11" label="FETCH_SUB_FRAME"/>
  <int value="12" label="FETCH_SHARED_WORKER"/>
  <int value="13" label="FETCH_SUB_RESOURCE"/>
  <int value="14" label="UNKNOWN"/>
  <int value="15" label="FOREIGN_FETCH"/>
</enum>

<enum name="ServiceWorkerReadResponseResult" type="int">
  <int value="0" label="OK"/>
  <int value="1" label="Read headers error"/>
  <int value="2" label="Read data error"/>
</enum>

<enum name="ServiceWorkerResponseError" type="int">
  <int value="0" label="ErrorUnknown"/>
  <int value="1" label="ErrorPromiseRejected"/>
  <int value="2" label="ErrorDefaultPrevented"/>
  <int value="3" label="ErrorNoV8Instance"/>
  <int value="4" label="ErrorResponseTypeError"/>
  <int value="5" label="ErrorResponseTypeOpaque"/>
  <int value="6" label="ErrorResponseTypeNotBasicOrDefault"/>
  <int value="7" label="ErrorBodyUsed"/>
  <int value="8" label="ErrorResponseTypeOpaqueForClientRequest"/>
  <int value="9" label="ErrorResponseTypeOpaqueRedirect"/>
  <int value="10" label="ErrorBodyLocked"/>
</enum>

<enum name="ServiceWorkerSite" type="int">
  <int value="0" label="Other"/>
  <int value="1" label="NewTabPage"/>
</enum>

<enum name="ServiceWorkerStatusCode" type="int">
  <int value="0" label="SERVICE_WORKER_OK"/>
  <int value="1" label="SERVICE_WORKER_ERROR_FAILED"/>
  <int value="2" label="SERVICE_WORKER_ERROR_ABORT"/>
  <int value="3" label="SERVICE_WORKER_ERROR_START_WORKER_FAILED"/>
  <int value="4" label="SERVICE_WORKER_ERROR_PROCESS_NOT_FOUND"/>
  <int value="5" label="SERVICE_WORKER_ERROR_NOT_FOUND"/>
  <int value="6" label="SERVICE_WORKER_ERROR_EXISTS"/>
  <int value="7" label="SERVICE_WORKER_ERROR_INSTALL_WORKER_FAILED"/>
  <int value="8" label="SERVICE_WORKER_ERROR_ACTIVATE_WORKER_FAILED"/>
  <int value="9" label="SERVICE_WORKER_ERROR_IPC_FAILED"/>
  <int value="10" label="SERVICE_WORKER_ERROR_NETWORK"/>
  <int value="11" label="SERVICE_WORKER_ERROR_SECURITY"/>
  <int value="12" label="SERVICE_WORKER_ERROR_EVENT_WAITUNTIL_REJECTED"/>
  <int value="13" label="SERVICE_WORKER_ERROR_STATE"/>
  <int value="14" label="SERVICE_WORKER_ERROR_TIMEOUT"/>
  <int value="15" label="SERVICE_WORKER_ERROR_SCRIPT_EVALUATE_FAILED"/>
  <int value="16" label="SERVICE_WORKER_ERROR_DISK_CACHE"/>
  <int value="17" label="SERVICE_WORKER_ERROR_REDUNDANT"/>
  <int value="18" label="SERVICE_WORKER_ERROR_DISALLOWED"/>
  <int value="19" label="SERVICE_WORKER_ERROR_DISABLED_WORKER (unused)"/>
</enum>

<enum name="ServiceWorkerStoppedStatus" type="int">
  <int value="0" label="NORMAL"/>
  <int value="1" label="DETACH_BY_REGISTRY"/>
  <int value="2" label="TIMEOUT"/>
</enum>

<enum name="ServiceWorkerStopStatus" type="int">
  <obsolete>
    Deprecated Oct 2015. No longer generated in the code.
  </obsolete>
  <int value="0" label="STOP_STATUS_STOPPING"/>
  <int value="1" label="STOP_STATUS_STOPPED"/>
  <int value="2" label="STOP_STATUS_STALLED"/>
  <int value="3" label="STOP_STATUS_STALLED_THEN_STOPPED"/>
</enum>

<enum name="ServiceWorkerURLRequestJobResult" type="int">
  <int value="0" label="REQUEST_JOB_FALLBACK_RESPONSE"/>
  <int value="1" label="REQUEST_JOB_FALLBACK_FOR_CORS"/>
  <int value="2" label="REQUEST_JOB_HEADERS_ONLY_RESPONSE"/>
  <int value="3" label="REQUEST_JOB_STREAM_RESPONSE"/>
  <int value="4" label="REQUEST_JOB_BLOB_RESPONSE"/>
  <int value="5" label="REQUEST_JOB_ERROR_RESPONSE_STATUS_ZERO"/>
  <int value="6" label="REQUEST_JOB_ERROR_BAD_BLOB"/>
  <int value="7" label="REQUEST_JOB_ERROR_NO_PROVIDER_HOST"/>
  <int value="8" label="REQUEST_JOB_ERROR_NO_ACTIVE_VERSION"/>
  <int value="9" label="REQUEST_JOB_ERROR_NO_REQUEST"/>
  <int value="10" label="REQUEST_JOB_ERROR_FETCH_EVENT_DISPATCH"/>
  <int value="11" label="REQUEST_JOB_ERROR_BLOB_READ"/>
  <int value="12" label="REQUEST_JOB_ERROR_STREAM_ABORTED"/>
  <int value="13" label="REQUEST_JOB_ERROR_KILLED"/>
  <int value="14" label="REQUEST_JOB_ERROR_KILLED_WITH_BLOB"/>
  <int value="15" label="REQUEST_JOB_ERROR_KILLED_WITH_STREAM"/>
  <int value="16" label="REQUEST_JOB_ERROR_DESTROYED"/>
  <int value="17" label="REQUEST_JOB_ERROR_DESTROYED_WITH_BLOB"/>
  <int value="18" label="REQUEST_JOB_ERROR_DESTROYED_WITH_STREAM"/>
</enum>

<enum name="ServiceWorkerWriteResponseResult" type="int">
  <int value="0" label="OK"/>
  <int value="1" label="Write headers error"/>
  <int value="2" label="Write data error"/>
</enum>

<enum name="SessionCrashedBubbleUserAction" type="int">
  <int value="0" label="The bubble was shown"/>
  <int value="1" label="There was an error when showing the bubble."/>
  <int value="2" label="The Restore button was clicked"/>
  <int value="3" label="User was already opted in to UMA"/>
  <int value="4" label="User chose to opt in to UMA"/>
  <int value="5" label="User clicked on the help button"/>
  <int value="6" label="User ignored or closed the bubble"/>
  <int value="7" label="The bar with UMA opt-in option was shown."/>
</enum>

<enum name="SessionRestoreActions" type="int">
  <int value="0" label="A session restore was started"/>
  <int value="1" label="A session restore deferred one or more tabs"/>
</enum>

<enum name="SessionRestoreTabActions" type="int">
  <int value="0" label="A tab was created"/>
  <int value="1" label="A tab's content was automatically loaded"/>
  <int value="2" label="The loading of a tab's content was deferred"/>
  <int value="3" label="A deferred tab's content was loaded via user action"/>
  <int value="4" label="A tab's content automatically started to load"/>
</enum>

<enum name="SessionStartupPref" type="int">
  <int value="0" label="Open home page (unused)"/>
  <int value="1" label="Continue from last opened pages"/>
  <int value="4" label="Open URLs"/>
  <int value="5" label="Open new tab page"/>
</enum>

<enum name="SessionStartupType" type="int">
  <obsolete>
    Deprecated 8/2013. No longer generated.
  </obsolete>
  <int value="0" label="New Tab page"/>
  <int value="1" label="Homepage (DEPRECATED)"/>
  <int value="2" label="Last session"/>
  <int value="3" label="Specified URLs"/>
</enum>

<enum name="SessionStorageDatabaseOpen" type="int">
  <int value="0" label="OK">Succesfully opened the database.</int>
  <int value="1" label="Recovered">
    Failed to open the existing db, deleted it, and created a new empty db.
  </int>
  <int value="2" label="Total Fail">
    Failed to open the database and also failed to delete and start over.
  </int>
</enum>

<enum name="SetDefaultAttemptResult" type="int">
  <obsolete>
    Deprecated 2016/03. Replaced by DefaultWebClientState.
  </obsolete>
  <int value="0" label="Success">Chrome was set as the default web client.</int>
  <int value="1" label="Already default">
    Chrome was already the default web client. This counts as a successful
    attempt.
  </int>
  <int value="2" label="Failure">
    Chrome was not set as the default web client.
  </int>
  <int value="3" label="Abandoned">
    The attempt was abandoned because the observer was destroyed.
  </int>
  <int value="4" label="Launch failure">
    Failed to launch the process to set Chrome as the default web client
    asynchronously.
  </int>
  <int value="5" label="Other worker">
    Another worker is already in progress to make Chrome the default web client.
  </int>
  <int value="6" label="Retry">
    The user initiated another attempt while the asynchronous operation was
    already in progress.
  </int>
  <int value="7" label="No errors, not default">
    No errors were encountered yet Chrome is still not the default web client.
  </int>
</enum>

<enum name="SettingsInteractionConcludeReason" type="int">
  <int value="0" label="Registry watcher">
    A change to the protocol registry key was detected.
  </int>
  <int value="1" label="Timeout">
    The timer fired before a change to the protocol registry key was detected.
  </int>
</enum>

<enum name="SettingsSections" type="int">
  <summary>
    A collection of sections from chrome://settings. Used for metrics about
    searching within the settings options.
  </summary>
  <int value="0" label="No Match Found"/>
  <int value="1" label="Unknown Section"/>
  <int value="2" label="Network CROS"/>
  <int value="3" label="Proxy"/>
  <int value="4" label="Appearance"/>
  <int value="5" label="Device"/>
  <int value="6" label="Search"/>
  <int value="7" label="Sync Users"/>
  <int value="8" label="Set Default Browser"/>
  <int value="9" label="Date Time"/>
  <int value="10" label="Device Control"/>
  <int value="11" label="Privacy"/>
  <int value="12" label="Bluetooth Devices"/>
  <int value="13" label="Passwords and Autofill"/>
  <int value="14" label="Easy Unlock"/>
  <int value="15" label="Web Content"/>
  <int value="16" label="Network"/>
  <int value="17" label="Languages"/>
  <int value="18" label="Downloads"/>
  <int value="19" label="Certificates"/>
  <int value="20" label="Cloudprint Options"/>
  <int value="21" label="A11y"/>
  <int value="22" label="Factory Reset"/>
  <int value="23" label="System"/>
  <int value="24" label="Reset Profile"/>
  <int value="25" label="Sync"/>
  <int value="26" label="Startup"/>
  <int value="27" label="Mouselock"/>
  <int value="28" label="Page Zoom Levels"/>
  <int value="29" label="Status"/>
  <int value="30" label="Main"/>
  <int value="31" label="Pointer Touchpad"/>
  <int value="32" label="Pointer Mouse"/>
  <int value="33" label="Prefs Blocked Languages"/>
  <int value="34" label="Prefs Language Blacklist"/>
  <int value="35" label="Prefs Site Blacklist"/>
  <int value="36" label="Prefs Whitelists"/>
  <int value="37" label="Prefs Supported Languages"/>
  <int value="38" label="Prefs Cld Version"/>
  <int value="39" label="Prefs Cld Data Source"/>
  <int value="40" label="Prefs Dump"/>
</enum>

<enum name="SetupInstallResult" type="int">
  <int value="0" label="First install of Chrome succeeded."/>
  <int value="1" label="Same version reinstalled for repair."/>
  <int value="2" label="Chrome successfully updated to new version."/>
  <int value="3" label="No work done; launched existing Chrome."/>
  <int value="4" label="Higher version of Chrome already exists."/>
  <int value="5" label="User level install already exists."/>
  <int value="6" label="Machine level install already exists."/>
  <int value="7" label="Install/update failed."/>
  <int value="8" label="Failed to patch setup.exe."/>
  <int value="9" label="Current OS not supported."/>
  <int value="10" label="OS API call failed."/>
  <int value="11" label="Unable to get Temp directory."/>
  <int value="12" label="Failed to uncompress Chrome archive."/>
  <int value="13" label="Something wrong with the installer archive."/>
  <int value="14" label="User trying system level install is not Admin."/>
  <int value="15" label="Chrome not installed (during uninstall)."/>
  <int value="16" label="Chrome currently running (during uninstall)."/>
  <int value="17" label="User has confirmed Chrome uninstall."/>
  <int value="18" label="User okayed uninstall and profile deletion."/>
  <int value="19" label="Chrome successfully uninstalled."/>
  <int value="20" label="Chrome uninstallation failed."/>
  <int value="21" label="User cancelled Chrome uninstallation."/>
  <int value="22" label="Unknown status (this should never happen)."/>
  <int value="23" label="Rename of new_chrome.exe to chrome.exe worked."/>
  <int value="24" label="Rename of new_chrome.exe failed."/>
  <int value="25" label="EULA dialog was not accepted by user."/>
  <int value="26" label="EULA dialog was accepted by user."/>
  <int value="27" label="EULA accepted with the crash option selected."/>
  <int value="28" label="Installation directory is in use by another process."/>
  <int value="29" label="Uninstallation required a reboot."/>
  <int value="30" label="Chrome successfully updated but old version running."/>
  <int value="31" label="Chrome repair failed as Chrome was running."/>
  <int value="32" label="Setup has been re-launched as the interactive user."/>
  <int value="33"
      label="The chrome-sxs option provided does not work with other command
             line options."/>
  <int value="42" label="Failed to apply a diff patch."/>
  <int value="47"
      label="A non-install option was called with an invalid installer state."/>
  <int value="49"
      label="The arguments of --patch were missing or they were invalid for
             any reason."/>
  <int value="50"
      label="No previous version archive found for differential update."/>
  <int value="51"
      label="No multi-install products to update. The binaries will be
             uninstalled if they are not in use."/>
  <int value="52" label="The binaries were uninstalled."/>
  <int value="53" label="An unsupported legacy option was given."/>
  <int value="54" label="Current CPU not supported."/>
  <int value="55" label="Autoupdates are now enabled."/>
  <int value="56" label="Autoupdates could not be enabled."/>
  <int value="57"
      label="Unpacking the (possibly patched) uncompressed archive failed."/>
</enum>

<enum name="SHA1Status" type="int">
  <summary>
    Whether or not SHA-1 was present in a certificate chain and, if it was, when
    the leaf certificate expired.
  </summary>
  <int value="0" label="Not present"/>
  <int value="1" label="Expires after Jan 1, 2017"/>
  <int value="2" label="Expires between Jun 1, 2016 and Jan 1, 2017"/>
  <int value="3" label="Expires between Jan 1, 2016 and Jun 1, 2016"/>
  <int value="4" label="Expires before Jan 1, 2016"/>
</enum>

<enum name="ShaderModel" type="int">
  <summary>The GPU's Direct3D shader model version.</summary>
  <int value="0" label="SHADER_MODEL_UNKNOWN"/>
  <int value="1" label="SHADER_MODEL_2_0"/>
  <int value="2" label="SHADER_MODEL_3_0"/>
  <int value="3" label="SHADER_MODEL_4_0"/>
  <int value="4" label="SHADER_MODEL_4_1"/>
  <int value="5" label="SHADER_MODEL_5_0"/>
</enum>

<enum name="ShelfAlignmentValue" type="int">
  <summary>
    The alignment of the shelf area (see ash/launcher/launcher_view.cc).
  </summary>
  <int value="0" label="Bottom"/>
  <int value="1" label="Left"/>
  <int value="2" label="Right"/>
</enum>

<enum name="ShillSuspendTerminationDarkResumeActionResult" type="int">
  <summary>
    The termination/suspend/dark resume action result types come from
    SuspendActionResult in shill/metrics.h
  </summary>
  <int value="0" label="Success"/>
  <int value="1" label="Failure"/>
</enum>

<enum name="ShutdownReason" type="int">
  <summary>
    The reason that the Chrome OS power manager shut down or rebooted the
    system.
  </summary>
  <int value="0" label="User request"/>
  <int value="1" label="State transition"/>
  <int value="2" label="Low battery"/>
  <int value="3" label="Suspend failures"/>
  <int value="4" label="Dark resume"/>
  <int value="5" label="System update"/>
  <int value="6" label="Dark resume failed"/>
</enum>

<enum name="SideloadUIEvents" type="int">
  <int value="0" label="Extension installed"/>
  <int value="1" label="Extension ignored"/>
  <int value="2" label="Extension re-enabled"/>
  <int value="3" label="Extension uninstalled"/>
</enum>

<enum name="SideloadWipeoutBubble" type="int">
  <int value="0" label="Learn more"/>
  <int value="1" label="Settings page"/>
  <int value="2" label="Dismiss"/>
</enum>

<enum name="SigninAccessPoint" type="int">
  <int value="0" label="Start page"/>
  <int value="1" label="NTP Link"/>
  <int value="2" label="Menu"/>
  <int value="3" label="Settings"/>
  <int value="4" label="Supervised user"/>
  <int value="5" label="Extension install bubble"/>
  <int value="6" label="Extensions"/>
  <int value="7" label="Apps page link"/>
  <int value="8" label="Bookmark bubble"/>
  <int value="9" label="Bookmark manager"/>
  <int value="10" label="Avatar bubble sign in"/>
  <int value="11" label="User manager"/>
  <int value="12" label="Devices page"/>
  <int value="13" label="Cloud print"/>
  <int value="14" label="Content area"/>
  <int value="15" label="Signin promo"/>
  <int value="16" label="Recent tabs"/>
  <int value="17" label="Typed URL with unknown access point"/>
</enum>

<enum name="SigninAccountEquality" type="int">
  <int value="0" label="Both Equal"/>
  <int value="1" label="Both Different"/>
  <int value="2" label="Only Same Email"/>
  <int value="3" label="Only Same Id"/>
  <int value="4" label="Email Fallback"/>
</enum>

<enum name="SigninAccountReconcilorState" type="int">
  <int value="0" label="OK">
    The account reconcilor has finished running and is up-to-date.
  </int>
  <int value="1" label="Running">
    The account reconcilor is running and gathering informations.
  </int>
  <int value="2" label="Error">
    The account reconcilor has encountered an error and stopped.
  </int>
</enum>

<enum name="SigninChoice" type="int">
  <int value="0" label="Cancel"/>
  <int value="1" label="Continue"/>
  <int value="2" label="New Profile"/>
</enum>

<enum name="SigninFlowConfirmations" type="int">
  <int value="0" label="Shown"/>
  <int value="1" label="OK"/>
  <int value="2" label="Return"/>
  <int value="3" label="Advanced"/>
  <int value="4" label="Close"/>
  <int value="5" label="Escape"/>
  <int value="6" label="Undo"/>
  <int value="7" label="Learn more"/>
  <int value="8" label="Learn more ok"/>
  <int value="9" label="Learn more return"/>
  <int value="10" label="Learn more advanced"/>
  <int value="11" label="Learn more close"/>
  <int value="12" label="Learn more escape"/>
  <int value="13" label="Learn more undo"/>
</enum>

<enum name="SigninHelperFlow" type="int">
  <int value="0" label="Shown">The signin flow was shown to the user.</int>
  <int value="1" label="Accepted">The user pressed accept to sign in.</int>
  <int value="2" label="Rejected">The user pressed the reject to sign in.</int>
  <int value="3" label="Dismissed">
    The user pressed the X button to dismiss the signin promo.
  </int>
  <int value="4" label="Ignored">
    The user completely ignored the signin promo. Either they navigated away, or
    they used the page as is.
  </int>
  <int value="5" label="Learn More">
    The user clicked on the learn more link in the signin promo.
  </int>
  <int value="6" label="Accept with Defaults">
    The sync was started with default settings.
  </int>
  <int value="7" label="Accept with Advanced">
    The sync was started with advanced settings.
  </int>
  <int value="8" label="Auto-Accept with Defaults">
    The sync was started through auto-accept with default settings.
  </int>
  <int value="9" label="Auto-Accept with Advanced">
    The sync was started through auto-accept with advanced settings.
  </int>
  <int value="10" label="Undo">The sync was aborted with an undo button.</int>
</enum>

<enum name="SigninInvestigatedScenario" type="int">
  <int value="0" label="Upgrade low risk"/>
  <int value="1" label="Upgrade high risk"/>
  <int value="2" label="Same account"/>
  <int value="3" label="Different account"/>
</enum>

<enum name="SigninReason" type="int">
  <int value="0" label="Signin primary account"/>
  <int value="1" label="Add secondary account"/>
  <int value="2" label="Reauthentication"/>
  <int value="3" label="Unlock profile"/>
  <int value="4" label="Typed URL with unknown reason"/>
</enum>

<enum name="SigninReauthStates" type="int">
  <int value="0" label="Account mismatch"/>
  <int value="1" label="Reauth Shown"/>
</enum>

<enum name="SigninSignoutProfile" type="int">
  <int value="0" label="Preference changed">
    The preference or policy controlling if signin is valid has changed.
  </int>
  <int value="1" label="Google service pattern changed">
    The valid username pattern for signing in to the Google service changed.
  </int>
  <int value="2" label="Signin preference changed during signin">
    The preference or policy controlling if signin is valid changed during the
    signin process.
  </int>
  <int value="3" label="User clicked signout">User clicked to signout.</int>
  <int value="4" label="Signin aborted">
    The signin process was aborted, but signin had succeeded, so signout. This
    may be due to a server response, policy definition or user action.
  </int>
  <int value="5" label="Server forced">
    The sync server caused the profile to be signed out.
  </int>
  <int value="6" label="Credentials transfered">
    The credentials are being transfered to a new profile, so the old one is
    signed out.
  </int>
</enum>

<enum name="SigninSource" type="int">
  <int value="0" label="Start page"/>
  <int value="1" label="NTP Link"/>
  <int value="2" label="Menu"/>
  <int value="3" label="Settings"/>
  <int value="4" label="Extension install bubble"/>
  <int value="5" label="App launcher"/>
  <int value="6" label="Apps page link"/>
  <int value="7" label="Bookmark bubble"/>
  <int value="8" label="Avatar bubble sign in"/>
  <int value="9" label="Avatar bubble add account"/>
  <int value="10" label="Devices page"/>
  <int value="11" label="Reauth"/>
  <int value="12" label="Unknown"/>
</enum>

<enum name="SigninXDevicePromoEligibility" type="int">
  <int value="0" label="Eligible">The user is eligible for the promo.</int>
  <int value="1" label="Opted Out">
    The profile has previously opted out of the promo.
  </int>
  <int value="2" label="Signed In">The profile is already signed in.</int>
  <int value="3" label="Not Single GAIA Account">
    The profile does not have a single, peristent GAIA cookie.
  </int>
  <int value="4" label="Unknown count of devices">
    Yet to determine how many devices the user has.
  </int>
  <int value="5" label="Error fetching device activity">
    An error was returned trying to determine the account's devices.
  </int>
  <int value="6" label="Throttled fetching device activity">
    The call to get device activity was throttled, and never executed.
  </int>
  <int value="7" label="Zero devices found">The user has no devices.</int>
  <int value="8" label="No devices active">
    The user has no device that was recently active.
  </int>
</enum>

<enum name="SigninXDevicePromoInitialized" type="int">
  <int value="0" label="Initialized">
    The promo was initialized successfully.
  </int>
  <int value="1" label="Opted Out">
    The profile is opted out, so the promo didn't initialize.
  </int>
  <int value="2" label="No variations config">
    Unable to read the variations configuration.
  </int>
</enum>

<enum name="SimpleCache.EntryCreatedAndStream2Omitted" type="int">
  <int value="0" label="Stream 2 file was present"/>
  <int value="1" label="Empty stream 2 file was omitted"/>
</enum>

<enum name="SimpleCache.EntryOpenedAndStream2Removed" type="int">
  <int value="0" label="Stream 2 file was already omitted or not empty"/>
  <int value="1" label="Empty stream 2 file removed"/>
</enum>

<enum name="SimpleCache.FileDescriptorLimitStatus" type="int">
  <int value="0" label="Unsupported"/>
  <int value="1" label="Supported but failed"/>
  <int value="2" label="Succeeded"/>
</enum>

<enum name="SimpleCacheHeaderSizeChange" type="int">
  <int value="0" label="Written for the first time"/>
  <int value="1" label="Rewritten with same size"/>
  <int value="2" label="Rewritten with larger size"/>
  <int value="3" label="Rewritten with smaller size"/>
  <int value="4" label="Unexpected header stream write"/>
</enum>

<enum name="SimpleCacheIndexInitializeMethod" type="int">
  <int value="0" label="Directory Scan"/>
  <int value="1" label="Index File"/>
  <int value="2" label="New Cache"/>
</enum>

<enum name="SimpleCacheIndexWriteReason" type="int">
  <int value="0" label="Shutdown"/>
  <int value="1" label="Startup Merge"/>
  <int value="2" label="Saved While Idle"/>
  <int value="3" label="Stopped (Android only)"/>
</enum>

<enum name="SimpleCacheOpenEntryIndexState" type="int">
  <int value="0" label="No index"/>
  <int value="1" label="Hit"/>
  <int value="2" label="Miss"/>
</enum>

<enum name="SimpleCacheReadParallelizable" type="int">
  <int value="0" label="Standalone Read (obsolete)"/>
  <int value="1" label="Follows read"/>
  <int value="2" label="Follows conflicting write"/>
  <int value="3" label="Follows non conflicting write"/>
  <int value="4" label="Follows other operation"/>
  <int value="5" label="Read alone in queue"/>
</enum>

<enum name="SimpleCacheReadResult" type="int">
  <int value="0" label="Success"/>
  <int value="1" label="Invalid Argument"/>
  <int value="2" label="Nonblocking Empty Return"/>
  <int value="3" label="Invalid State"/>
  <int value="4" label="Fast Empty Return"/>
  <int value="5" label="Synchronous Read Failure"/>
  <int value="6" label="Synchronous Checksum Failure"/>
</enum>

<enum name="SimpleCacheStaleIndexQuality" type="int">
  <int value="0" label="OK"/>
  <int value="1" label="Missed Entries"/>
  <int value="2" label="Extra Entries"/>
  <int value="3" label="Both"/>
</enum>

<enum name="SimpleCacheSyncCheckEOFResult" type="int">
  <int value="0" label="Success"/>
  <int value="1" label="Read Failure"/>
  <int value="2" label="Magic Number Mismatch"/>
  <int value="3" label="CRC Mismatch"/>
</enum>

<enum name="SimpleCacheSyncCloseResult" type="int">
  <int value="0" label="Success"/>
  <int value="1" label="Write Failure"/>
</enum>

<enum name="SimpleCacheSyncCreateResult" type="int">
  <int value="0" label="Success"/>
  <int value="1" label="Platform File Error"/>
  <int value="2" label="Can't Write Header"/>
  <int value="3" label="Can't Write Key"/>
</enum>

<enum name="SimpleCacheSyncOpenResult" type="int">
  <int value="0" label="Success"/>
  <int value="1" label="Platform File Error"/>
  <int value="2" label="Can't Read Header"/>
  <int value="3" label="Bad Magic Number"/>
  <int value="4" label="Bad Version"/>
  <int value="5" label="Can't Read Key"/>
  <int value="6" label="Key Mismatch (obsolete)"/>
  <int value="7" label="Hash Mismatch"/>
</enum>

<enum name="SimpleCacheSyncWriteResult" type="int">
  <int value="0" label="Success"/>
  <int value="1" label="Pretruncate Failure"/>
  <int value="2" label="Write Failure"/>
  <int value="3" label="Truncate Failure"/>
</enum>

<enum name="SimpleCacheWriteDependencyType" type="int">
  <int value="0" label="First operation in the queue (Optimistic)"/>
  <int value="1" label="Follows conflicting optimistic write"/>
  <int value="2" label="Follows non conflicting optimistic write"/>
  <int value="3" label="Follows conflicting conservative write"/>
  <int value="4" label="Follows non conflicting conservative write"/>
  <int value="5" label="Follows conflicting read"/>
  <int value="6" label="Follows non conflicting read"/>
  <int value="7" label="Follows other operation"/>
</enum>

<enum name="SimpleCacheWriteResult" type="int">
  <int value="0" label="Success"/>
  <int value="1" label="Invalid Argument"/>
  <int value="2" label="Over Max Size"/>
  <int value="3" label="Bad State"/>
  <int value="4" label="Synchronous Write Failure"/>
  <int value="5" label="Fast Empty Return (Success)"/>
</enum>

<enum name="SimpleGeolocationRequestEvent" type="int">
  <int value="0" label="Request start"/>
  <int value="1" label="Response success"/>
  <int value="2" label="Response not OK"/>
  <int value="3" label="Response empty"/>
  <int value="4" label="Response malformed"/>
</enum>

<enum name="SimpleGeolocationRequestHasWiFiAccessPoints" type="int">
  <int value="0" label="No WiFi data in request."/>
  <int value="1" label="WiFi data present."/>
</enum>

<enum name="SimpleGeolocationRequestResult" type="int">
  <int value="0" label="Success"/>
  <int value="1" label="Failure"/>
  <int value="2" label="Server error"/>
  <int value="3" label="Request is cancelled."/>
</enum>

<enum name="SimpleIndexState" type="int">
  <int value="0" label="Corrupt"/>
  <int value="1" label="Stale"/>
  <int value="2" label="Fresh"/>
  <int value="3" label="Fresh index with cache updated since backend start"/>
</enum>

<enum name="SiteEngagementServiceEngagementType" type="int">
  <int value="0" label="Navigation"/>
  <int value="1" label="Keypress"/>
  <int value="2" label="Mouse down"/>
  <int value="3" label="Tap gesture"/>
  <int value="4" label="Scroll (mouse wheel or touch)"/>
  <int value="5" label="Media (foreground tab)"/>
  <int value="6" label="Media (background tab)"/>
  <int value="7" label="Webapp shortcut launch"/>
</enum>

<enum name="SiteIsolationMimeType" type="int">
  <int value="0" label="HTML"/>
  <int value="1" label="XML"/>
  <int value="2" label="JSON"/>
  <int value="3" label="Plain"/>
  <int value="4" label="Others"/>
</enum>

<enum name="SkiaLockTexturePath" type="int">
  <int value="0" label="Failure"/>
  <int value="1" label="Pre-Existing"/>
  <int value="2" label="Native"/>
  <int value="3" label="Compressed"/>
  <int value="4" label="YUV"/>
  <int value="5" label="RGBA"/>
</enum>

<enum name="SnackbarIdentifier" type="int">
  <int value="-2" label="TEST_SNACKBAR"/>
  <int value="-1" label="UNKNOWN"/>
  <int value="0" label="BOOKMARK_ADDED"/>
  <int value="1" label="BOOKMARK_DELETE_UNDO"/>
  <int value="2" label="NTP_MOST_VISITED_DELETE_UNDO"/>
  <int value="3" label="OFFLINE_PAGE_RELOAD"/>
  <int value="4" label="AUTO_LOGIN"/>
  <int value="5" label="OMNIBOX_GEOLOCATION"/>
  <int value="6" label="LOFI"/>
  <int value="7" label="DATA_USE_STARTED"/>
  <int value="8" label="DATA_USE_ENDED"/>
  <int value="9" label="DOWNLOAD_SUCCEEDED"/>
  <int value="10" label="DOWNLOAD_FAILED"/>
  <int value="11" label="TAB_CLOSE_UNDO"/>
  <int value="12" label="TAB_CLOSE_ALL_UNDO"/>
</enum>

<enum name="SnippetsInteractions" type="int">
  <int value="0" label="Snippets were shown to the user"/>
  <int value="1" label="User scrolled through the snippets"/>
  <int value="2" label="User clicked on a snippet into the host website"/>
  <int value="3" label="User swiped a snippet away (obsolete)"/>
  <int value="4" label="User swiped a snippet away after visiting"/>
  <int value="5" label="User swiped a snippet away without visiting"/>
  <int value="6" label="User scrolled below the fold (max once per NTP load)"/>
</enum>

<enum name="SocketStreamConnectionType" type="int">
  <int value="0" label="None"/>
  <int value="1" label="All"/>
  <int value="2" label="Tunnel"/>
  <int value="3" label="SOCKS"/>
  <int value="4" label="SSL"/>
  <int value="5" label="Secure proxy"/>
</enum>

<enum name="SocketStreamProtocolType" type="int">
  <int value="0" label="unknown"/>
  <int value="1" label="ws"/>
  <int value="2" label="wss"/>
</enum>

<enum name="SpdyFrameFlowControlState" type="int">
  <int value="0" label="Send not stalled"/>
  <int value="1" label="Send stalled by stream"/>
  <int value="2" label="Send stalled by session"/>
  <int value="3" label="Send stalled by stream and session"/>
</enum>

<enum name="SpdyIPPoolDomainMatch" type="int">
  <int value="0" label="mismatch"/>
  <int value="1" label="match"/>
</enum>

<!-- Replaced by SpdyProtocolErrorDetails2 on 2013-04-19. -->

<enum name="SpdyProtocolErrorDetails" type="int">
  <int value="0" label="No error"/>
  <int value="1" label="Invalid Control Frame"/>
  <int value="2" label="Control Frame Payload Too Large"/>
  <int value="3" label="Zlib Init Failure"/>
  <int value="4" label="Unsupported Version"/>
  <int value="5" label="Decompress Failure"/>
  <int value="6" label="Compress Failure"/>
  <int value="7" label="Credential Frame Corrupt"/>
  <int value="8" label="Invalid Data Frame Flags"/>
<!-- r181910 added an enum value here, so don't trust the counts for
       the values below for Chrome builds after that revision. -->

  <int value="9" label="Invalid Status Code"/>
  <int value="10" label="Protocol Error"/>
  <int value="11" label="Invalid Stream"/>
  <int value="12" label="Refused Stream"/>
  <int value="13" label="Unsupported Version"/>
  <int value="14" label="Cancel"/>
  <int value="15" label="Internal Error"/>
  <int value="16" label="Flow Control Error"/>
  <int value="17" label="Stream In Use"/>
  <int value="18" label="Stream Already Closed"/>
  <int value="19" label="Invalid Credentials"/>
  <int value="20" label="Frame Too Large"/>
  <int value="21" label="Unexpected Ping"/>
  <int value="22" label="Rst Stream For Non Active Stream"/>
  <int value="23" label="Spdy Compression Failure"/>
  <int value="24" label="Request For Secure Content Over Insecure Session"/>
  <int value="25" label="Protocol Error Syn Reply Not Received"/>
  <int value="26" label="Num Spdy Protocol Error Details"/>
</enum>

<enum name="SpdyProtocolErrorDetails2" type="int">
<!-- SpdyFramer::SpdyErrors -->

  <int value="0" label="No error"/>
  <int value="1" label="Invalid Control Frame"/>
  <int value="2" label="Control Frame Payload Too Large"/>
  <int value="3" label="Zlib Init Failure"/>
  <int value="4" label="Unsupported Version"/>
  <int value="5" label="Decompress Failure"/>
  <int value="6" label="Compress Failure"/>
  <int value="7" label="Credential Frame Corrupt"/>
  <int value="8" label="Invalid Data Frame Flags"/>
  <int value="9" label="Invalid Control Frame Flags"/>
<!-- SpdyRstStreamStatus -->

  <int value="10" label="(Unused)"/>
  <int value="11" label="Protocol Error"/>
  <int value="12" label="Invalid Stream"/>
  <int value="13" label="Refused Stream"/>
  <int value="14" label="Unsupported Version"/>
  <int value="15" label="Cancel"/>
  <int value="16" label="Internal Error"/>
  <int value="17" label="Flow Control Error"/>
  <int value="18" label="Stream In Use"/>
  <int value="19" label="Stream Already Closed"/>
  <int value="20" label="Invalid Credentials"/>
  <int value="21" label="Frame Too Large"/>
<!-- SpdySession errors -->

  <int value="22" label="Unexpected Ping"/>
  <int value="23" label="Rst Stream For Non Active Stream"/>
  <int value="24" label="Spdy Compression Failure"/>
  <int value="25" label="Request For Secure Content Over Insecure Session"/>
  <int value="26" label="Syn Reply Not Received"/>
  <int value="27" label="Invalid Window Update Size"/>
  <int value="28" label="Receive Window Size Violation"/>
<!-- More SpdyFramer::SpdyErrors -->

  <int value="29" label="GoAway Frame Corrupt"/>
  <int value="30" label="RstStream Frame Corrupt"/>
  <int value="31" label="Unexpected Frame (Expected Continuation)"/>
<!-- More SpdyRstStreamStatus -->

  <int value="32" label="Timeout waiting for settings acknowledgement"/>
  <int value="33"
      label="Connection established in response to CONNECT request was
             abnormally closed"/>
  <int value="34" label="Peer exhibiting suspect behavior."/>
  <int value="35" label="Inadequate security."/>
  <int value="36" label="HTTP/1.1 required."/>
<!-- More SpdyFramer::SpdyErrors -->

  <int value="37" label="Invalid control frame size."/>
  <int value="38" label="Invalid stream ID."/>
  <int value="39" label="Invalid padding length."/>
</enum>

<enum name="SpdyProtocolVersion" type="int">
  <summary>
    SPDY protocol version identifier, including major and minor protocol
    numbers, and draft versions where appropriate.
  </summary>
  <int value="0" label="SPDY 2.0"/>
  <int value="1" label="SPDY 3.0"/>
  <int value="2" label="SPDY 3.1"/>
  <int value="3" label="HTTP/2 draft-14"/>
  <int value="4" label="HTTP/2 draft-15"/>
  <int value="5" label="HTTP/2 draft-16"/>
  <int value="6" label="HTTP/2 draft-17"/>
  <int value="7" label="HTTP/2"/>
</enum>

<enum name="SpdySessionGet" type="int">
  <int value="0" label="created new"/>
  <int value="1" label="found existing"/>
  <int value="2" label="found existing from IP Pool"/>
  <int value="3" label="imported from socket"/>
</enum>

<enum name="SpdySettingsReceived" type="int">
  <int value="0" label="not received"/>
  <int value="1" label="received"/>
</enum>

<enum name="SpdySettingsSent" type="int">
  <int value="0" label="not sent"/>
  <int value="1" label="sent"/>
</enum>

<enum name="SpecialShFileOperationCodes" type="int">
  <summary>Legacy error codes still returned by |ShFileOperation()|</summary>
  <int value="5" label="Access denied (Win32)"/>
  <int value="32" label="Sharing violation (Win32)"/>
  <int value="87" label="Invalid parameter (Win32)"/>
  <int value="113" label="Source and Destination are same file"/>
  <int value="114" label="Multiple source mapped to single destination"/>
  <int value="115" label="Rename to different directory"/>
  <int value="116" label="Source root"/>
  <int value="117" label="Canceled by user"/>
  <int value="118" label="Destination is subtree of source"/>
  <int value="120" label="Denied by security settings"/>
  <int value="121" label="Path length exceeded MAX_PATH"/>
  <int value="122" label="Multiple destination paths"/>
  <int value="124" label="Path invalid"/>
  <int value="125" label="Source and destination have same parent"/>
  <int value="126" label="Destination exists"/>
  <int value="128" label="Destination exists as folder"/>
  <int value="129" label="Name length exceeded MAX_PATH"/>
  <int value="130" label="Destination read-only CD-ROM"/>
  <int value="131" label="Destination read-only DVD"/>
  <int value="132" label="Destination writable CD-ROM"/>
  <int value="133" label="File too large"/>
  <int value="134" label="Source read-only CD-ROM"/>
  <int value="135" label="Source read-only DVD"/>
  <int value="136" label="Source writable CD-ROM"/>
  <int value="183" label="Operation exceeded MAX_PATH"/>
  <int value="1026" label="Invalid path / unknown"/>
  <int value="65536" label="Unspecified destination error"/>
  <int value="65652" label="Destination root"/>
</enum>

<enum name="SpeculativeRestoreApplicability" type="int">
  <int value="0" label="Applicable"/>
  <int value="1" label="Not applicable (tablet)"/>
  <int value="2" label="Not applicable (low-memory device)"/>
  <int value="3" label="Not applicable (bandwidth management)"/>
</enum>

<enum name="SpeculativeRestorePredictionAccuracy" type="int">
  <int value="0" label="Hit"/>
  <int value="1" label="Miss (different tab)"/>
  <int value="2" label="Miss (tab not switched)"/>
</enum>

<enum name="SpeculativeRestoreTabStatus" type="int">
  <int value="0" label="Already loaded"/>
  <int value="1" label="Needs restore"/>
</enum>

<enum name="SplashscreenColorStatus" type="int">
  <int value="0" label="Default color"/>
  <int value="1" label="Custom color"/>
</enum>

<enum name="SplashscreenHidesReason" type="int">
  <int value="0" label="First Paint"/>
  <int value="1" label="Page Load Finished"/>
  <int value="2" label="Page Load Failed"/>
  <int value="3" label="Crash"/>
</enum>

<enum name="SplashscreenIconType" type="int">
  <int value="0" label="No splashscreen icon"/>
  <int value="1" label="Fallback icon"/>
  <int value="2" label="Custom icon"/>
  <int value="3" label="Small custom icon"/>
</enum>

<enum name="SqliteErrorCode" type="int">
  <summary>Error codes returned by SQLite - see sqlite3.h</summary>
  <int value="0" label="SQLITE_OK">Successful result</int>
  <int value="1" label="SQLITE_ERROR">SQL error or missing database</int>
  <int value="2" label="SQLITE_INTERNAL">
    NOT USED. Internal logic error in SQLite
  </int>
  <int value="3" label="SQLITE_PERM">Access permission denied</int>
  <int value="4" label="SQLITE_ABORT">Callback routine requested an abort</int>
  <int value="5" label="SQLITE_BUSY">The database file is locked</int>
  <int value="6" label="SQLITE_LOCKED">A table in the database is locked</int>
  <int value="7" label="SQLITE_NOMEM">A malloc() failed</int>
  <int value="8" label="SQLITE_READONLY">
    Attempt to write a readonly database
  </int>
  <int value="9" label="SQLITE_INTERRUPT">
    Operation terminated by sqlite3_interrupt()
  </int>
  <int value="10" label="SQLITE_IOERR">
    Some kind of disk I/O error occurred
  </int>
  <int value="11" label="SQLITE_CORRUPT">
    The database disk image is malformed
  </int>
  <int value="12" label="SQLITE_NOTFOUND">
    NOT USED. Table or record not found
  </int>
  <int value="13" label="SQLITE_FULL">
    Insertion failed because database is full
  </int>
  <int value="14" label="SQLITE_CANTOPEN">Unable to open the database file</int>
  <int value="15" label="SQLITE_PROTOCOL">
    NOT USED. Database lock protocol error
  </int>
  <int value="16" label="SQLITE_EMPTY">Database is empty</int>
  <int value="17" label="SQLITE_SCHEMA">The database schema changed</int>
  <int value="18" label="SQLITE_TOOBIG">String or BLOB exceeds size limit</int>
  <int value="19" label="SQLITE_CONSTRAINT">
    Abort due to contraint violation
  </int>
  <int value="20" label="SQLITE_MISMATCH">Data type mismatch</int>
  <int value="21" label="SQLITE_MISUSE">Library used incorrectly</int>
  <int value="22" label="SQLITE_NOLFS">
    Uses OS features not supported on host
  </int>
  <int value="23" label="SQLITE_AUTH">Authorization denied</int>
  <int value="24" label="SQLITE_FORMAT">Auxiliary database format error</int>
  <int value="25" label="SQLITE_RANGE">
    2nd parameter to sqlite3_bind() out of range
  </int>
  <int value="26" label="SQLITE_NOTADB">
    File opened that is not a database file
  </int>
  <int value="27" label="SQLITE_NOTICE">Notifications from sqlite3_log()</int>
  <int value="28" label="SQLITE_WARNING">Warnings from sqlite3_log()</int>
  <int value="100" label="SQLITE_ROW">sqlite3_step() has another row ready</int>
  <int value="101" label="SQLITE_DONE">
    sqlite3_step() has finished executing
  </int>
  <int value="261" label="SQLITE_BUSY_RECOVERY">TBD</int>
  <int value="262" label="SQLITE_LOCKED_SHAREDCACHE">TBD</int>
  <int value="264" label="SQLITE_READONLY_RECOVERY">TBD</int>
  <int value="266" label="SQLITE_IOERR_READ">Error reading from file</int>
  <int value="267" label="SQLITE_CORRUPT_VTAB">TBD</int>
  <int value="270" label="SQLITE_CANTOPEN_NOTEMPDIR">TBD</int>
  <int value="275" label="SQLITE_CONSTRAINT_CHECK">TBD</int>
  <int value="279" label="SQLITE_AUTH_USER">TBD</int>
  <int value="283" label="SQLITE_NOTICE_RECOVER_WAL">TBD</int>
  <int value="284" label="SQLITE_WARNING_AUTOINDEX">TBD</int>
  <int value="516" label="SQLITE_ABORT_ROLLBACK">TBD</int>
  <int value="517" label="SQLITE_BUSY_SNAPSHOT">TBD</int>
  <int value="520" label="SQLITE_READONLY_CANTLOCK">TBD</int>
  <int value="522" label="SQLITE_IOERR_SHORT_READ">Short read from file</int>
  <int value="526" label="SQLITE_CANTOPEN_ISDIR">
    Database file is directory
  </int>
  <int value="531" label="SQLITE_CONSTRAINT_COMMITHOOK">TBD</int>
  <int value="539" label="SQLITE_NOTICE_RECOVER_ROLLBACK">TBD</int>
  <int value="776" label="SQLITE_READONLY_ROLLBACK">
    Cannot rollback due to readonly file
  </int>
  <int value="778" label="SQLITE_IOERR_WRITE">
    Error writing to file (other than SQLITE_FULL)
  </int>
  <int value="782" label="SQLITE_CANTOPEN_FULLPATH">TBD</int>
  <int value="787" label="SQLITE_CONSTRAINT_FOREIGNKEY">
    Constraint failure due to foreign key violation
  </int>
  <int value="1032" label="SQLITE_READONLY_DBMOVED">
    Readonly because database file was moved or unlinked while open
  </int>
  <int value="1034" label="SQLITE_IOERR_FSYNC">Error syncing to disk</int>
  <int value="1038" label="SQLITE_CANTOPEN_CONVPATH">TBD</int>
  <int value="1043" label="SQLITE_CONSTRAINT_FUNCTION">TBD</int>
  <int value="1290" label="SQLITE_IOERR_DIR_FSYNC">
    Error syncing directory changes to disk
  </int>
  <int value="1299" label="SQLITE_CONSTRAINT_NOTNULL">
    NOTNULL constraint violated
  </int>
  <int value="1546" label="SQLITE_IOERR_TRUNCATE">Error truncating file</int>
  <int value="1555" label="SQLITE_CONSTRAINT_PRIMARYKEY">
    Primary key not unique
  </int>
  <int value="1802" label="SQLITE_IOERR_FSTAT">Error reading file metadata</int>
  <int value="1811" label="SQLITE_CONSTRAINT_TRIGGER">
    Constraint failed due to trigger raise
  </int>
  <int value="2058" label="SQLITE_IOERR_UNLOCK">Error unlocking file</int>
  <int value="2067" label="SQLITE_CONSTRAINT_UNIQUE">
    Unique constraint failed
  </int>
  <int value="2314" label="SQLITE_IOERR_RDLOCK">
    Error getting read lock - should not be possible
  </int>
  <int value="2323" label="SQLITE_CONSTRAINT_VTAB">TBD</int>
  <int value="2570" label="SQLITE_IOERR_DELETE">Error deleting file</int>
  <int value="2579" label="SQLITE_CONSTRAINT_ROWID">Rowid not unique</int>
  <int value="2826" label="SQLITE_IOERR_BLOCKED">
    Deadlock due to other process access to SQLite files
  </int>
  <int value="3082" label="SQLITE_IOERR_NOMEM">Error mapping shared memory</int>
  <int value="3338" label="SQLITE_IOERR_ACCESS">
    Error getting file attributes (other than not found)
  </int>
  <int value="3594" label="SQLITE_IOERR_CHECKRESERVEDLOCK">
    Error while querying lock status
  </int>
  <int value="3850" label="SQLITE_IOERR_LOCK">Error acquiring lock</int>
  <int value="4106" label="SQLITE_IOERR_CLOSE">Error closing file</int>
  <int value="4362" label="SQLITE_IOERR_DIR_CLOSE">Unused</int>
  <int value="4618" label="SQLITE_IOERR_SHMOPEN">Error mmapping file</int>
  <int value="4874" label="SQLITE_IOERR_SHMSIZE">
    Error in stat while mmapping file
  </int>
  <int value="5130" label="SQLITE_IOERR_SHMLOCK">Unused</int>
  <int value="5386" label="SQLITE_IOERR_SHMMAP">TBD</int>
  <int value="5642" label="SQLITE_IOERR_SEEK">TBD</int>
  <int value="5898" label="SQLITE_IOERR_DELETE_NOENT">TBD</int>
  <int value="6154" label="SQLITE_IOERR_MMAP">TBD</int>
  <int value="6410" label="SQLITE_IOERR_GETTEMPPATH">TBD</int>
  <int value="6666" label="SQLITE_IOERR_CONVPATH">TBD</int>
</enum>

<enum name="SqliteIOERRCode" type="int">
  <obsolete>
    Replaced 5/14/2013 by expanded Sqlite.Error histogram.
  </obsolete>
  <summary>Extended error codes returned by SQLite - see sqlite3.h</summary>
  <int value="0" label="SQLITE_IOERR">No extended code given</int>
  <int value="1" label="SQLITE_IOERR_READ">Error reading from file</int>
  <int value="2" label="SQLITE_IOERR_SHORT_READ">Short read from file</int>
  <int value="3" label="SQLITE_IOERR_WRITE">
    Error writing to file (other than SQLITE_FULL)
  </int>
  <int value="4" label="SQLITE_IOERR_FSYNC">Error syncing to disk</int>
  <int value="5" label="SQLITE_IOERR_DIR_FSYNC">
    Error syncing directory changes to disk
  </int>
  <int value="6" label="SQLITE_IOERR_TRUNCATE">Error truncating file</int>
  <int value="7" label="SQLITE_IOERR_FSTAT">Error reading file metadata</int>
  <int value="8" label="SQLITE_IOERR_UNLOCK">Error unlocking file</int>
  <int value="9" label="SQLITE_IOERR_RDLOCK">
    Error getting read lock - should not be possible
  </int>
  <int value="10" label="SQLITE_IOERR_DELETE">Error deleting file</int>
  <int value="11" label="SQLITE_IOERR_BLOCKED">
    Deadlock due to other process access to SQLite files
  </int>
  <int value="12" label="SQLITE_IOERR_NOMEM">Error mapping shared memory</int>
  <int value="13" label="SQLITE_IOERR_ACCESS">
    Error getting file attributes (other than not found)
  </int>
  <int value="14" label="SQLITE_IOERR_CHECKRESERVEDLOCK">
    Error while querying lock status
  </int>
  <int value="15" label="SQLITE_IOERR_LOCK">Error acquiring lock</int>
  <int value="16" label="SQLITE_IOERR_CLOSE">Error closing file</int>
  <int value="17" label="SQLITE_IOERR_DIR_CLOSE">Unused</int>
  <int value="18" label="SQLITE_IOERR_SHMOPEN">Error mmapping file</int>
  <int value="19" label="SQLITE_IOERR_SHMSIZE">
    Error in stat while mmapping file
  </int>
  <int value="20" label="SQLITE_IOERR_SHMLOCK">Unused</int>
</enum>

<enum name="SqliteRecoveryEventEnum" type="int">
  <summary>
    Track successful completion or failure of sql::Recovery implementation.
  </summary>
  <int value="0" label="RECOVERY_SUCCESS_BEGIN">
    sql::Recovery::Init() (helper for Begin()) completely successfully.
  </int>
  <int value="1" label="RECOVERY_FAILED_OPEN_TEMPORARY">
    Failed to open temporary database to recover into.
  </int>
  <int value="2" label="RECOVERY_FAILED_VIRTUAL_TABLE_INIT">
    Failed to initialize recover vtable subsystem for connection.
  </int>
  <int value="3" label="RECOVERY_FAILED_VIRTUAL_TABLE_SYSTEM_SQLITE">
    USE_SYSTEM_SQLITE in force, recovery virtual table not available.
  </int>
  <int value="4" label="RECOVERY_FAILED_WRITABLE_SCHEMA">
    Failed to enable writable_schema.
  </int>
  <int value="5" label="RECOVERY_FAILED_ATTACH">
    Failed to attach corrupt database to recovery database.
  </int>
  <int value="6" label="RECOVERY_SUCCESS_BACKUP">
    sql::Recovery::Backup() (helper for Recovered()) completely successfully.
  </int>
  <int value="7" label="RECOVERY_FAILED_BACKUP_INIT">
    Failed sqlite3_backup_init().  Error code in Sqlite.RecoveryHandle.
  </int>
  <int value="8" label="RECOVERY_FAILED_BACKUP_STEP">
    Failed sqlite3_backup_step().  Error code in Sqlite.RecoveryStep.
  </int>
  <int value="9" label="RECOVERY_SUCCESS_AUTORECOVER">
    sql::Recovery::AutoRecoverTable() completed successfully.
  </int>
  <int value="10" label="RECOVERY_FAILED_AUTORECOVER_UNRECOGNIZED_TYPE">
    Failed sqlite3_backup_step().  Error code in Sqlite.RecoveryStep.
  </int>
  <int value="11" label="RECOVERY_FAILED_AUTORECOVER_MISSING_TABLE">
    AutoRecoverTable() could not find the target table.
  </int>
  <int value="12" label="RECOVERY_FAILED_AUTORECOVER_CREATE">
    AutoRecoverTable() failed creating recovery vtable.
  </int>
  <int value="13" label="RECOVERY_FAILED_AUTORECOVER_INSERT">
    AutoRecoverTable() failed copying data from recovery to target table.
  </int>
  <int value="14" label="RECOVERY_FAILED_AUTORECOVER_DROP">
    AutoRecoverTable() failed to drop recovery table.
  </int>
  <int value="15" label="RECOVERY_SUCCESS_SETUP_META">
    sql::Recovery::SetupMeta() completed successfully.
  </int>
  <int value="16" label="RECOVERY_FAILED_META_CREATE">
    SetupMeta() failed to create meta recovery table.
  </int>
  <int value="17" label="RECOVERY_SUCCESS_META_VERSION">
    GetMetaVersionNumber() found no version row in meta table.
  </int>
  <int value="18" label="RECOVERY_FAILED_META_QUERY">
    GetMetaVersionNumber() failed querying recovery meta table.
  </int>
  <int value="19" label="RECOVERY_FAILED_META_NO_VERSION">
    GetMetaVersionNumber() found no version row in meta table.
  </int>
</enum>

<enum name="SqliteStatsEnum" type="int">
  <summary/>
  <int value="0" label="EVENT_STATEMENT_RUN">
    Count statements initiated by Step(), Run(), or Execute*().
  </int>
  <int value="1" label="EVENT_STATEMENT_ROWS">
    Count steps which returned SQLITE_ROW.
  </int>
  <int value="2" label="EVENT_STATEMENT_SUCCESS">
    Count statements which ran to completion with no errors.
  </int>
  <int value="3" label="EVENT_EXECUTE">Count calls to Execute*().</int>
  <int value="4" label="EVENT_CHANGES_AUTOCOMMIT">
    Count rows changed without an explicit transaction.
  </int>
  <int value="5" label="EVENT_CHANGES">
    Count rows changed in an explicit transaction.
  </int>
  <int value="6" label="EVENT_BEGIN">Explicit transactions begun.</int>
  <int value="7" label="EVENT_COMMIT">Explicit transactions committed.</int>
  <int value="8" label="EVENT_ROLLBACK">Explicit transactions rolled back.</int>
  <int value="9" label="EVENT_MMAP_META_MISSING">
    No meta table in mmap probe.
  </int>
  <int value="10" label="EVENT_MMAP_META_FAILURE_READ">
    Failed to read meta table in mmap probe.
  </int>
  <int value="11" label="EVENT_MMAP_META_FAILURE_UPDATE">
    Failed to update meta table in mmap probe.
  </int>
  <int value="12" label="EVENT_MMAP_VFS_FAILURE">
    Failed to access SQLite vfs in mmap probe.
  </int>
  <int value="13" label="EVENT_MMAP_FAILED">
    Found cached failure status in mmap probe.
  </int>
  <int value="14" label="EVENT_MMAP_FAILED_NEW">
    Error while reading database in mmap probe.
  </int>
  <int value="15" label="EVENT_MMAP_SUCCESS_NEW">
    Successfully read to end of database in mmap probe.
  </int>
  <int value="16" label="EVENT_MMAP_SUCCESS_PARTIAL">
    Successfully read some of database in mmap probe.
  </int>
  <int value="17" label="EVENT_MMAP_SUCCESS_NO_PROGRESS">
    Exhausted read quota in mmap probe.
  </int>
</enum>

<enum name="SqliteVersionDeprecation" type="int">
  <summary>Sqlite database version deprecation status</summary>
  <int value="0" label="DEPRECATION_DATABASE_NOT_EMPTY">
    Database has tables, but no meta table.
  </int>
  <int value="1" label="DEPRECATION_DATABASE_UNKNOWN">
    Failure figuring out if database has tables.
  </int>
  <int value="2" label="DEPRECATION_FAILED_VERSION">
    Failed querying meta table.
  </int>
  <int value="3" label="DEPRECATION_NO_VERSION">
    No version row in meta table.
  </int>
  <int value="4" label="DEPRECATION_RAZED">Raze succeeded.</int>
  <int value="5" label="DEPRECATION_RAZE_FAILED">Raze failed.</int>
</enum>

<enum name="SRIResourceIntegrityMismatchEvent" type="int">
  <int value="0" label="CHECKING_FOR_INTEGRITY_MISMATCH"/>
  <int value="1" label="REFETCH_DUE_TO_INTEGRITY_MISMATCH"/>
</enum>

<enum name="SRTCompleted" type="int">
  <int value="0" label="Not Completed"/>
  <int value="1" label="Completed"/>
  <int value="2" label="Completed Later"/>
</enum>

<enum name="SRTPromptUsage" type="int">
  <int value="0" label="Shown"/>
  <int value="1" label="Accepted"/>
  <int value="2" label="Denied"/>
  <int value="3" label="Fell back to download page."/>
  <int value="4" label="SRT download unavailable, no prompt shown."/>
  <int value="5" label="Closed"/>
  <int value="6" label="Shown from menu."/>
</enum>

<enum name="SSLCaptivePortal" type="int">
  <int value="0" label="All captive portal events (CAPTIVE_PORTAL_ALL)"/>
  <int value="1"
      label="Chrome captive portal detection enabled
             (CAPTIVE_PORTAL_DETECTION_ENABLED)"/>
  <int value="2"
      label="Chrome captive portal detection enabled on an overridable SSL
             error page (CAPTIVE_PORTAL_DETECTION_ENABLED_OVERRIDABLE)">
    This is a subset of CAPTIVE_PORTAL_DETECTION_ENABLED (bucket 1), the only
    difference is that it is for overridable errors.
  </int>
  <int value="3"
      label="Received a captive portal probe result.
             (CAPTIVE_PORTAL_PROBE_COMPLETED)">
    Was the captive portal probe completed before the interstitial was closed?
    Captive Portal won't be detected unless ::Observe is triggered which might
    be a few seconds later.
  </int>
  <int value="4"
      label="Received a captive portal result on an overridable SSL error page
             (CAPTIVE_PORTAL_PROBE_COMPLETED_OVERRIDABLE)">
    This is a subset of CAPTIVE_PORTAL_PROBE_COMPLETED (bucket 3), the only
    difference is that it is for overridable errors.
  </int>
  <int value="5"
      label="Received no response or Non-HTTP login page
             (CAPTIVE_PORTAL_NO_RESPONSE)"/>
  <int value="6"
      label="Received no response or Non-HTTP login page on an overridable
             SSL error page (CAPTIVE_PORTAL_NO_RESPONSE_OVERRIDABLE)"/>
  <int value="7" label="Detected captive portal (CAPTIVE_PORTAL_DETECTED)"/>
  <int value="8"
      label="Detected captive portal on an overridable SSL error page
             (CAPTIVE_PORTAL_DETECTED_OVERRIDABLE)">
    This is a subset of CAPTIVE_PORTAL_DETECTED (bucket 7), the only difference
    is that it is for overridable errors.
  </int>
</enum>

<enum name="SSLCipherSuite" type="int">
  <summary>SSL/TLS cipher suites from the IANA registry</summary>
  <int value="0" label="TLS_NULL_WITH_NULL_NULL"/>
  <int value="1" label="TLS_RSA_WITH_NULL_MD5"/>
  <int value="2" label="TLS_RSA_WITH_NULL_SHA"/>
  <int value="3" label="TLS_RSA_EXPORT_WITH_RC4_40_MD5"/>
  <int value="4" label="TLS_RSA_WITH_RC4_128_MD5"/>
  <int value="5" label="TLS_RSA_WITH_RC4_128_SHA"/>
  <int value="6" label="TLS_RSA_EXPORT_WITH_RC2_CBC_40_MD5"/>
  <int value="7" label="TLS_RSA_WITH_IDEA_CBC_SHA"/>
  <int value="8" label="TLS_RSA_EXPORT_WITH_DES40_CBC_SHA"/>
  <int value="9" label="TLS_RSA_WITH_DES_CBC_SHA"/>
  <int value="10" label="TLS_RSA_WITH_3DES_EDE_CBC_SHA"/>
  <int value="11" label="TLS_DH_DSS_EXPORT_WITH_DES40_CBC_SHA"/>
  <int value="12" label="TLS_DH_DSS_WITH_DES_CBC_SHA"/>
  <int value="13" label="TLS_DH_DSS_WITH_3DES_EDE_CBC_SHA"/>
  <int value="14" label="TLS_DH_RSA_EXPORT_WITH_DES40_CBC_SHA"/>
  <int value="15" label="TLS_DH_RSA_WITH_DES_CBC_SHA"/>
  <int value="16" label="TLS_DH_RSA_WITH_3DES_EDE_CBC_SHA"/>
  <int value="17" label="TLS_DHE_DSS_EXPORT_WITH_DES40_CBC_SHA"/>
  <int value="18" label="TLS_DHE_DSS_WITH_DES_CBC_SHA"/>
  <int value="19" label="TLS_DHE_DSS_WITH_3DES_EDE_CBC_SHA"/>
  <int value="20" label="TLS_DHE_RSA_EXPORT_WITH_DES40_CBC_SHA"/>
  <int value="21" label="TLS_DHE_RSA_WITH_DES_CBC_SHA"/>
  <int value="22" label="TLS_DHE_RSA_WITH_3DES_EDE_CBC_SHA"/>
  <int value="23" label="TLS_DH_anon_EXPORT_WITH_RC4_40_MD5"/>
  <int value="24" label="TLS_DH_anon_WITH_RC4_128_MD5"/>
  <int value="25" label="TLS_DH_anon_EXPORT_WITH_DES40_CBC_SHA"/>
  <int value="26" label="TLS_DH_anon_WITH_DES_CBC_SHA"/>
  <int value="27" label="TLS_DH_anon_WITH_3DES_EDE_CBC_SHA"/>
  <int value="30" label="TLS_KRB5_WITH_DES_CBC_SHA"/>
  <int value="31" label="TLS_KRB5_WITH_3DES_EDE_CBC_SHA"/>
  <int value="32" label="TLS_KRB5_WITH_RC4_128_SHA"/>
  <int value="33" label="TLS_KRB5_WITH_IDEA_CBC_SHA"/>
  <int value="34" label="TLS_KRB5_WITH_DES_CBC_MD5"/>
  <int value="35" label="TLS_KRB5_WITH_3DES_EDE_CBC_MD5"/>
  <int value="36" label="TLS_KRB5_WITH_RC4_128_MD5"/>
  <int value="37" label="TLS_KRB5_WITH_IDEA_CBC_MD5"/>
  <int value="38" label="TLS_KRB5_EXPORT_WITH_DES_CBC_40_SHA"/>
  <int value="39" label="TLS_KRB5_EXPORT_WITH_RC2_CBC_40_SHA"/>
  <int value="40" label="TLS_KRB5_EXPORT_WITH_RC4_40_SHA"/>
  <int value="41" label="TLS_KRB5_EXPORT_WITH_DES_CBC_40_MD5"/>
  <int value="42" label="TLS_KRB5_EXPORT_WITH_RC2_CBC_40_MD5"/>
  <int value="43" label="TLS_KRB5_EXPORT_WITH_RC4_40_MD5"/>
  <int value="44" label="TLS_PSK_WITH_NULL_SHA"/>
  <int value="45" label="TLS_DHE_PSK_WITH_NULL_SHA"/>
  <int value="46" label="TLS_RSA_PSK_WITH_NULL_SHA"/>
  <int value="47" label="TLS_RSA_WITH_AES_128_CBC_SHA"/>
  <int value="48" label="TLS_DH_DSS_WITH_AES_128_CBC_SHA"/>
  <int value="49" label="TLS_DH_RSA_WITH_AES_128_CBC_SHA"/>
  <int value="50" label="TLS_DHE_DSS_WITH_AES_128_CBC_SHA"/>
  <int value="51" label="TLS_DHE_RSA_WITH_AES_128_CBC_SHA"/>
  <int value="52" label="TLS_DH_anon_WITH_AES_128_CBC_SHA"/>
  <int value="53" label="TLS_RSA_WITH_AES_256_CBC_SHA"/>
  <int value="54" label="TLS_DH_DSS_WITH_AES_256_CBC_SHA"/>
  <int value="55" label="TLS_DH_RSA_WITH_AES_256_CBC_SHA"/>
  <int value="56" label="TLS_DHE_DSS_WITH_AES_256_CBC_SHA"/>
  <int value="57" label="TLS_DHE_RSA_WITH_AES_256_CBC_SHA"/>
  <int value="58" label="TLS_DH_anon_WITH_AES_256_CBC_SHA"/>
  <int value="59" label="TLS_RSA_WITH_NULL_SHA256"/>
  <int value="60" label="TLS_RSA_WITH_AES_128_CBC_SHA256"/>
  <int value="61" label="TLS_RSA_WITH_AES_256_CBC_SHA256"/>
  <int value="62" label="TLS_DH_DSS_WITH_AES_128_CBC_SHA256"/>
  <int value="63" label="TLS_DH_RSA_WITH_AES_128_CBC_SHA256"/>
  <int value="64" label="TLS_DHE_DSS_WITH_AES_128_CBC_SHA256"/>
  <int value="65" label="TLS_RSA_WITH_CAMELLIA_128_CBC_SHA"/>
  <int value="66" label="TLS_DH_DSS_WITH_CAMELLIA_128_CBC_SHA"/>
  <int value="67" label="TLS_DH_RSA_WITH_CAMELLIA_128_CBC_SHA"/>
  <int value="68" label="TLS_DHE_DSS_WITH_CAMELLIA_128_CBC_SHA"/>
  <int value="69" label="TLS_DHE_RSA_WITH_CAMELLIA_128_CBC_SHA"/>
  <int value="70" label="TLS_DH_anon_WITH_CAMELLIA_128_CBC_SHA"/>
  <int value="103" label="TLS_DHE_RSA_WITH_AES_128_CBC_SHA256"/>
  <int value="104" label="TLS_DH_DSS_WITH_AES_256_CBC_SHA256"/>
  <int value="105" label="TLS_DH_RSA_WITH_AES_256_CBC_SHA256"/>
  <int value="106" label="TLS_DHE_DSS_WITH_AES_256_CBC_SHA256"/>
  <int value="107" label="TLS_DHE_RSA_WITH_AES_256_CBC_SHA256"/>
  <int value="108" label="TLS_DH_anon_WITH_AES_128_CBC_SHA256"/>
  <int value="109" label="TLS_DH_anon_WITH_AES_256_CBC_SHA256"/>
  <int value="132" label="TLS_RSA_WITH_CAMELLIA_256_CBC_SHA"/>
  <int value="133" label="TLS_DH_DSS_WITH_CAMELLIA_256_CBC_SHA"/>
  <int value="134" label="TLS_DH_RSA_WITH_CAMELLIA_256_CBC_SHA"/>
  <int value="135" label="TLS_DHE_DSS_WITH_CAMELLIA_256_CBC_SHA"/>
  <int value="136" label="TLS_DHE_RSA_WITH_CAMELLIA_256_CBC_SHA"/>
  <int value="137" label="TLS_DH_anon_WITH_CAMELLIA_256_CBC_SHA"/>
  <int value="138" label="TLS_PSK_WITH_RC4_128_SHA"/>
  <int value="139" label="TLS_PSK_WITH_3DES_EDE_CBC_SHA"/>
  <int value="140" label="TLS_PSK_WITH_AES_128_CBC_SHA"/>
  <int value="141" label="TLS_PSK_WITH_AES_256_CBC_SHA"/>
  <int value="142" label="TLS_DHE_PSK_WITH_RC4_128_SHA"/>
  <int value="143" label="TLS_DHE_PSK_WITH_3DES_EDE_CBC_SHA"/>
  <int value="144" label="TLS_DHE_PSK_WITH_AES_128_CBC_SHA"/>
  <int value="145" label="TLS_DHE_PSK_WITH_AES_256_CBC_SHA"/>
  <int value="146" label="TLS_RSA_PSK_WITH_RC4_128_SHA"/>
  <int value="147" label="TLS_RSA_PSK_WITH_3DES_EDE_CBC_SHA"/>
  <int value="148" label="TLS_RSA_PSK_WITH_AES_128_CBC_SHA"/>
  <int value="149" label="TLS_RSA_PSK_WITH_AES_256_CBC_SHA"/>
  <int value="150" label="TLS_RSA_WITH_SEED_CBC_SHA"/>
  <int value="151" label="TLS_DH_DSS_WITH_SEED_CBC_SHA"/>
  <int value="152" label="TLS_DH_RSA_WITH_SEED_CBC_SHA"/>
  <int value="153" label="TLS_DHE_DSS_WITH_SEED_CBC_SHA"/>
  <int value="154" label="TLS_DHE_RSA_WITH_SEED_CBC_SHA"/>
  <int value="155" label="TLS_DH_anon_WITH_SEED_CBC_SHA"/>
  <int value="156" label="TLS_RSA_WITH_AES_128_GCM_SHA256"/>
  <int value="157" label="TLS_RSA_WITH_AES_256_GCM_SHA384"/>
  <int value="158" label="TLS_DHE_RSA_WITH_AES_128_GCM_SHA256"/>
  <int value="159" label="TLS_DHE_RSA_WITH_AES_256_GCM_SHA384"/>
  <int value="160" label="TLS_DH_RSA_WITH_AES_128_GCM_SHA256"/>
  <int value="161" label="TLS_DH_RSA_WITH_AES_256_GCM_SHA384"/>
  <int value="162" label="TLS_DHE_DSS_WITH_AES_128_GCM_SHA256"/>
  <int value="163" label="TLS_DHE_DSS_WITH_AES_256_GCM_SHA384"/>
  <int value="164" label="TLS_DH_DSS_WITH_AES_128_GCM_SHA256"/>
  <int value="165" label="TLS_DH_DSS_WITH_AES_256_GCM_SHA384"/>
  <int value="166" label="TLS_DH_anon_WITH_AES_128_GCM_SHA256"/>
  <int value="167" label="TLS_DH_anon_WITH_AES_256_GCM_SHA384"/>
  <int value="168" label="TLS_PSK_WITH_AES_128_GCM_SHA256"/>
  <int value="169" label="TLS_PSK_WITH_AES_256_GCM_SHA384"/>
  <int value="170" label="TLS_DHE_PSK_WITH_AES_128_GCM_SHA256"/>
  <int value="171" label="TLS_DHE_PSK_WITH_AES_256_GCM_SHA384"/>
  <int value="172" label="TLS_RSA_PSK_WITH_AES_128_GCM_SHA256"/>
  <int value="173" label="TLS_RSA_PSK_WITH_AES_256_GCM_SHA384"/>
  <int value="174" label="TLS_PSK_WITH_AES_128_CBC_SHA256"/>
  <int value="175" label="TLS_PSK_WITH_AES_256_CBC_SHA384"/>
  <int value="176" label="TLS_PSK_WITH_NULL_SHA256"/>
  <int value="177" label="TLS_PSK_WITH_NULL_SHA384"/>
  <int value="178" label="TLS_DHE_PSK_WITH_AES_128_CBC_SHA256"/>
  <int value="179" label="TLS_DHE_PSK_WITH_AES_256_CBC_SHA384"/>
  <int value="180" label="TLS_DHE_PSK_WITH_NULL_SHA256"/>
  <int value="181" label="TLS_DHE_PSK_WITH_NULL_SHA384"/>
  <int value="182" label="TLS_RSA_PSK_WITH_AES_128_CBC_SHA256"/>
  <int value="183" label="TLS_RSA_PSK_WITH_AES_256_CBC_SHA384"/>
  <int value="184" label="TLS_RSA_PSK_WITH_NULL_SHA256"/>
  <int value="185" label="TLS_RSA_PSK_WITH_NULL_SHA384"/>
  <int value="186" label="TLS_RSA_WITH_CAMELLIA_128_CBC_SHA256"/>
  <int value="187" label="TLS_DH_DSS_WITH_CAMELLIA_128_CBC_SHA256"/>
  <int value="188" label="TLS_DH_RSA_WITH_CAMELLIA_128_CBC_SHA256"/>
  <int value="189" label="TLS_DHE_DSS_WITH_CAMELLIA_128_CBC_SHA256"/>
  <int value="190" label="TLS_DHE_RSA_WITH_CAMELLIA_128_CBC_SHA256"/>
  <int value="191" label="TLS_DH_anon_WITH_CAMELLIA_128_CBC_SHA256"/>
  <int value="192" label="TLS_RSA_WITH_CAMELLIA_256_CBC_SHA256"/>
  <int value="193" label="TLS_DH_DSS_WITH_CAMELLIA_256_CBC_SHA256"/>
  <int value="194" label="TLS_DH_RSA_WITH_CAMELLIA_256_CBC_SHA256"/>
  <int value="195" label="TLS_DHE_DSS_WITH_CAMELLIA_256_CBC_SHA256"/>
  <int value="196" label="TLS_DHE_RSA_WITH_CAMELLIA_256_CBC_SHA256"/>
  <int value="197" label="TLS_DH_anon_WITH_CAMELLIA_256_CBC_SHA256"/>
  <int value="255" label="TLS_EMPTY_RENEGOTIATION_INFO_SCSV"/>
  <int value="49153" label="TLS_ECDH_ECDSA_WITH_NULL_SHA"/>
  <int value="49154" label="TLS_ECDH_ECDSA_WITH_RC4_128_SHA"/>
  <int value="49155" label="TLS_ECDH_ECDSA_WITH_3DES_EDE_CBC_SHA"/>
  <int value="49156" label="TLS_ECDH_ECDSA_WITH_AES_128_CBC_SHA"/>
  <int value="49157" label="TLS_ECDH_ECDSA_WITH_AES_256_CBC_SHA"/>
  <int value="49158" label="TLS_ECDHE_ECDSA_WITH_NULL_SHA"/>
  <int value="49159" label="TLS_ECDHE_ECDSA_WITH_RC4_128_SHA"/>
  <int value="49160" label="TLS_ECDHE_ECDSA_WITH_3DES_EDE_CBC_SHA"/>
  <int value="49161" label="TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA"/>
  <int value="49162" label="TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA"/>
  <int value="49163" label="TLS_ECDH_RSA_WITH_NULL_SHA"/>
  <int value="49164" label="TLS_ECDH_RSA_WITH_RC4_128_SHA"/>
  <int value="49165" label="TLS_ECDH_RSA_WITH_3DES_EDE_CBC_SHA"/>
  <int value="49166" label="TLS_ECDH_RSA_WITH_AES_128_CBC_SHA"/>
  <int value="49167" label="TLS_ECDH_RSA_WITH_AES_256_CBC_SHA"/>
  <int value="49168" label="TLS_ECDHE_RSA_WITH_NULL_SHA"/>
  <int value="49169" label="TLS_ECDHE_RSA_WITH_RC4_128_SHA"/>
  <int value="49170" label="TLS_ECDHE_RSA_WITH_3DES_EDE_CBC_SHA"/>
  <int value="49171" label="TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA"/>
  <int value="49172" label="TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA"/>
  <int value="49173" label="TLS_ECDH_anon_WITH_NULL_SHA"/>
  <int value="49174" label="TLS_ECDH_anon_WITH_RC4_128_SHA"/>
  <int value="49175" label="TLS_ECDH_anon_WITH_3DES_EDE_CBC_SHA"/>
  <int value="49176" label="TLS_ECDH_anon_WITH_AES_128_CBC_SHA"/>
  <int value="49177" label="TLS_ECDH_anon_WITH_AES_256_CBC_SHA"/>
  <int value="49178" label="TLS_SRP_SHA_WITH_3DES_EDE_CBC_SHA"/>
  <int value="49179" label="TLS_SRP_SHA_RSA_WITH_3DES_EDE_CBC_SHA"/>
  <int value="49180" label="TLS_SRP_SHA_DSS_WITH_3DES_EDE_CBC_SHA"/>
  <int value="49181" label="TLS_SRP_SHA_WITH_AES_128_CBC_SHA"/>
  <int value="49182" label="TLS_SRP_SHA_RSA_WITH_AES_128_CBC_SHA"/>
  <int value="49183" label="TLS_SRP_SHA_DSS_WITH_AES_128_CBC_SHA"/>
  <int value="49184" label="TLS_SRP_SHA_WITH_AES_256_CBC_SHA"/>
  <int value="49185" label="TLS_SRP_SHA_RSA_WITH_AES_256_CBC_SHA"/>
  <int value="49186" label="TLS_SRP_SHA_DSS_WITH_AES_256_CBC_SHA"/>
  <int value="49187" label="TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256"/>
  <int value="49188" label="TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA384"/>
  <int value="49189" label="TLS_ECDH_ECDSA_WITH_AES_128_CBC_SHA256"/>
  <int value="49190" label="TLS_ECDH_ECDSA_WITH_AES_256_CBC_SHA384"/>
  <int value="49191" label="TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256"/>
  <int value="49192" label="TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384"/>
  <int value="49193" label="TLS_ECDH_RSA_WITH_AES_128_CBC_SHA256"/>
  <int value="49194" label="TLS_ECDH_RSA_WITH_AES_256_CBC_SHA384"/>
  <int value="49195" label="TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256"/>
  <int value="49196" label="TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384"/>
  <int value="49197" label="TLS_ECDH_ECDSA_WITH_AES_128_GCM_SHA256"/>
  <int value="49198" label="TLS_ECDH_ECDSA_WITH_AES_256_GCM_SHA384"/>
  <int value="49199" label="TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256"/>
  <int value="49200" label="TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384"/>
  <int value="49201" label="TLS_ECDH_RSA_WITH_AES_128_GCM_SHA256"/>
  <int value="49202" label="TLS_ECDH_RSA_WITH_AES_256_GCM_SHA384"/>
  <int value="49203" label="TLS_ECDHE_PSK_WITH_RC4_128_SHA"/>
  <int value="49204" label="TLS_ECDHE_PSK_WITH_3DES_EDE_CBC_SHA"/>
  <int value="49205" label="TLS_ECDHE_PSK_WITH_AES_128_CBC_SHA"/>
  <int value="49206" label="TLS_ECDHE_PSK_WITH_AES_256_CBC_SHA"/>
  <int value="49207" label="TLS_ECDHE_PSK_WITH_AES_128_CBC_SHA256"/>
  <int value="49208" label="TLS_ECDHE_PSK_WITH_AES_256_CBC_SHA384"/>
  <int value="49209" label="TLS_ECDHE_PSK_WITH_NULL_SHA"/>
  <int value="49210" label="TLS_ECDHE_PSK_WITH_NULL_SHA256"/>
  <int value="49211" label="TLS_ECDHE_PSK_WITH_NULL_SHA384"/>
  <int value="49212" label="TLS_RSA_WITH_ARIA_128_CBC_SHA256"/>
  <int value="49213" label="TLS_RSA_WITH_ARIA_256_CBC_SHA384"/>
  <int value="49214" label="TLS_DH_DSS_WITH_ARIA_128_CBC_SHA256"/>
  <int value="49215" label="TLS_DH_DSS_WITH_ARIA_256_CBC_SHA384"/>
  <int value="49216" label="TLS_DH_RSA_WITH_ARIA_128_CBC_SHA256"/>
  <int value="49217" label="TLS_DH_RSA_WITH_ARIA_256_CBC_SHA384"/>
  <int value="49218" label="TLS_DHE_DSS_WITH_ARIA_128_CBC_SHA256"/>
  <int value="49219" label="TLS_DHE_DSS_WITH_ARIA_256_CBC_SHA384"/>
  <int value="49220" label="TLS_DHE_RSA_WITH_ARIA_128_CBC_SHA256"/>
  <int value="49221" label="TLS_DHE_RSA_WITH_ARIA_256_CBC_SHA384"/>
  <int value="49222" label="TLS_DH_anon_WITH_ARIA_128_CBC_SHA256"/>
  <int value="49223" label="TLS_DH_anon_WITH_ARIA_256_CBC_SHA384"/>
  <int value="49224" label="TLS_ECDHE_ECDSA_WITH_ARIA_128_CBC_SHA256"/>
  <int value="49225" label="TLS_ECDHE_ECDSA_WITH_ARIA_256_CBC_SHA384"/>
  <int value="49226" label="TLS_ECDH_ECDSA_WITH_ARIA_128_CBC_SHA256"/>
  <int value="49227" label="TLS_ECDH_ECDSA_WITH_ARIA_256_CBC_SHA384"/>
  <int value="49228" label="TLS_ECDHE_RSA_WITH_ARIA_128_CBC_SHA256"/>
  <int value="49229" label="TLS_ECDHE_RSA_WITH_ARIA_256_CBC_SHA384"/>
  <int value="49230" label="TLS_ECDH_RSA_WITH_ARIA_128_CBC_SHA256"/>
  <int value="49231" label="TLS_ECDH_RSA_WITH_ARIA_256_CBC_SHA384"/>
  <int value="49232" label="TLS_RSA_WITH_ARIA_128_GCM_SHA256"/>
  <int value="49233" label="TLS_RSA_WITH_ARIA_256_GCM_SHA384"/>
  <int value="49234" label="TLS_DHE_RSA_WITH_ARIA_128_GCM_SHA256"/>
  <int value="49235" label="TLS_DHE_RSA_WITH_ARIA_256_GCM_SHA384"/>
  <int value="49236" label="TLS_DH_RSA_WITH_ARIA_128_GCM_SHA256"/>
  <int value="49237" label="TLS_DH_RSA_WITH_ARIA_256_GCM_SHA384"/>
  <int value="49238" label="TLS_DHE_DSS_WITH_ARIA_128_GCM_SHA256"/>
  <int value="49239" label="TLS_DHE_DSS_WITH_ARIA_256_GCM_SHA384"/>
  <int value="49240" label="TLS_DH_DSS_WITH_ARIA_128_GCM_SHA256"/>
  <int value="49241" label="TLS_DH_DSS_WITH_ARIA_256_GCM_SHA384"/>
  <int value="49242" label="TLS_DH_anon_WITH_ARIA_128_GCM_SHA256"/>
  <int value="49243" label="TLS_DH_anon_WITH_ARIA_256_GCM_SHA384"/>
  <int value="49244" label="TLS_ECDHE_ECDSA_WITH_ARIA_128_GCM_SHA256"/>
  <int value="49245" label="TLS_ECDHE_ECDSA_WITH_ARIA_256_GCM_SHA384"/>
  <int value="49246" label="TLS_ECDH_ECDSA_WITH_ARIA_128_GCM_SHA256"/>
  <int value="49247" label="TLS_ECDH_ECDSA_WITH_ARIA_256_GCM_SHA384"/>
  <int value="49248" label="TLS_ECDHE_RSA_WITH_ARIA_128_GCM_SHA256"/>
  <int value="49249" label="TLS_ECDHE_RSA_WITH_ARIA_256_GCM_SHA384"/>
  <int value="49250" label="TLS_ECDH_RSA_WITH_ARIA_128_GCM_SHA256"/>
  <int value="49251" label="TLS_ECDH_RSA_WITH_ARIA_256_GCM_SHA384"/>
  <int value="49252" label="TLS_PSK_WITH_ARIA_128_CBC_SHA256"/>
  <int value="49253" label="TLS_PSK_WITH_ARIA_256_CBC_SHA384"/>
  <int value="49254" label="TLS_DHE_PSK_WITH_ARIA_128_CBC_SHA256"/>
  <int value="49255" label="TLS_DHE_PSK_WITH_ARIA_256_CBC_SHA384"/>
  <int value="49256" label="TLS_RSA_PSK_WITH_ARIA_128_CBC_SHA256"/>
  <int value="49257" label="TLS_RSA_PSK_WITH_ARIA_256_CBC_SHA384"/>
  <int value="49258" label="TLS_PSK_WITH_ARIA_128_GCM_SHA256"/>
  <int value="49259" label="TLS_PSK_WITH_ARIA_256_GCM_SHA384"/>
  <int value="49260" label="TLS_DHE_PSK_WITH_ARIA_128_GCM_SHA256"/>
  <int value="49261" label="TLS_DHE_PSK_WITH_ARIA_256_GCM_SHA384"/>
  <int value="49262" label="TLS_RSA_PSK_WITH_ARIA_128_GCM_SHA256"/>
  <int value="49263" label="TLS_RSA_PSK_WITH_ARIA_256_GCM_SHA384"/>
  <int value="49264" label="TLS_ECDHE_PSK_WITH_ARIA_128_CBC_SHA256"/>
  <int value="49265" label="TLS_ECDHE_PSK_WITH_ARIA_256_CBC_SHA384"/>
  <int value="49266" label="TLS_ECDHE_ECDSA_WITH_CAMELLIA_128_CBC_SHA256"/>
  <int value="49267" label="TLS_ECDHE_ECDSA_WITH_CAMELLIA_256_CBC_SHA384"/>
  <int value="49268" label="TLS_ECDH_ECDSA_WITH_CAMELLIA_128_CBC_SHA256"/>
  <int value="49269" label="TLS_ECDH_ECDSA_WITH_CAMELLIA_256_CBC_SHA384"/>
  <int value="49270" label="TLS_ECDHE_RSA_WITH_CAMELLIA_128_CBC_SHA256"/>
  <int value="49271" label="TLS_ECDHE_RSA_WITH_CAMELLIA_256_CBC_SHA384"/>
  <int value="49272" label="TLS_ECDH_RSA_WITH_CAMELLIA_128_CBC_SHA256"/>
  <int value="49273" label="TLS_ECDH_RSA_WITH_CAMELLIA_256_CBC_SHA384"/>
  <int value="49274" label="TLS_RSA_WITH_CAMELLIA_128_GCM_SHA256"/>
  <int value="49275" label="TLS_RSA_WITH_CAMELLIA_256_GCM_SHA384"/>
  <int value="49276" label="TLS_DHE_RSA_WITH_CAMELLIA_128_GCM_SHA256"/>
  <int value="49277" label="TLS_DHE_RSA_WITH_CAMELLIA_256_GCM_SHA384"/>
  <int value="49278" label="TLS_DH_RSA_WITH_CAMELLIA_128_GCM_SHA256"/>
  <int value="49279" label="TLS_DH_RSA_WITH_CAMELLIA_256_GCM_SHA384"/>
  <int value="49280" label="TLS_DHE_DSS_WITH_CAMELLIA_128_GCM_SHA256"/>
  <int value="49281" label="TLS_DHE_DSS_WITH_CAMELLIA_256_GCM_SHA384"/>
  <int value="49282" label="TLS_DH_DSS_WITH_CAMELLIA_128_GCM_SHA256"/>
  <int value="49283" label="TLS_DH_DSS_WITH_CAMELLIA_256_GCM_SHA384"/>
  <int value="49284" label="TLS_DH_anon_WITH_CAMELLIA_128_GCM_SHA256"/>
  <int value="49285" label="TLS_DH_anon_WITH_CAMELLIA_256_GCM_SHA384"/>
  <int value="49286" label="TLS_ECDHE_ECDSA_WITH_CAMELLIA_128_GCM_SHA256"/>
  <int value="49287" label="TLS_ECDHE_ECDSA_WITH_CAMELLIA_256_GCM_SHA384"/>
  <int value="49288" label="TLS_ECDH_ECDSA_WITH_CAMELLIA_128_GCM_SHA256"/>
  <int value="49289" label="TLS_ECDH_ECDSA_WITH_CAMELLIA_256_GCM_SHA384"/>
  <int value="49290" label="TLS_ECDHE_RSA_WITH_CAMELLIA_128_GCM_SHA256"/>
  <int value="49291" label="TLS_ECDHE_RSA_WITH_CAMELLIA_256_GCM_SHA384"/>
  <int value="49292" label="TLS_ECDH_RSA_WITH_CAMELLIA_128_GCM_SHA256"/>
  <int value="49293" label="TLS_ECDH_RSA_WITH_CAMELLIA_256_GCM_SHA384"/>
  <int value="49294" label="TLS_PSK_WITH_CAMELLIA_128_GCM_SHA256"/>
  <int value="49295" label="TLS_PSK_WITH_CAMELLIA_256_GCM_SHA384"/>
  <int value="49296" label="TLS_DHE_PSK_WITH_CAMELLIA_128_GCM_SHA256"/>
  <int value="49297" label="TLS_DHE_PSK_WITH_CAMELLIA_256_GCM_SHA384"/>
  <int value="49298" label="TLS_RSA_PSK_WITH_CAMELLIA_128_GCM_SHA256"/>
  <int value="49299" label="TLS_RSA_PSK_WITH_CAMELLIA_256_GCM_SHA384"/>
  <int value="49300" label="TLS_PSK_WITH_CAMELLIA_128_CBC_SHA256"/>
  <int value="49301" label="TLS_PSK_WITH_CAMELLIA_256_CBC_SHA384"/>
  <int value="49302" label="TLS_DHE_PSK_WITH_CAMELLIA_128_CBC_SHA256"/>
  <int value="49303" label="TLS_DHE_PSK_WITH_CAMELLIA_256_CBC_SHA384"/>
  <int value="49304" label="TLS_RSA_PSK_WITH_CAMELLIA_128_CBC_SHA256"/>
  <int value="49305" label="TLS_RSA_PSK_WITH_CAMELLIA_256_CBC_SHA384"/>
  <int value="49306" label="TLS_ECDHE_PSK_WITH_CAMELLIA_128_CBC_SHA256"/>
  <int value="49307" label="TLS_ECDHE_PSK_WITH_CAMELLIA_256_CBC_SHA384"/>
  <int value="49308" label="TLS_RSA_WITH_AES_128_CCM"/>
  <int value="49309" label="TLS_RSA_WITH_AES_256_CCM"/>
  <int value="49310" label="TLS_DHE_RSA_WITH_AES_128_CCM"/>
  <int value="49311" label="TLS_DHE_RSA_WITH_AES_256_CCM"/>
  <int value="49312" label="TLS_RSA_WITH_AES_128_CCM_8"/>
  <int value="49313" label="TLS_RSA_WITH_AES_256_CCM_8"/>
  <int value="49314" label="TLS_DHE_RSA_WITH_AES_128_CCM_8"/>
  <int value="49315" label="TLS_DHE_RSA_WITH_AES_256_CCM_8"/>
  <int value="49316" label="TLS_PSK_WITH_AES_128_CCM"/>
  <int value="49317" label="TLS_PSK_WITH_AES_256_CCM"/>
  <int value="49318" label="TLS_DHE_PSK_WITH_AES_128_CCM"/>
  <int value="49319" label="TLS_DHE_PSK_WITH_AES_256_CCM"/>
  <int value="49320" label="TLS_PSK_WITH_AES_128_CCM_8"/>
  <int value="49321" label="TLS_PSK_WITH_AES_256_CCM_8"/>
  <int value="49322" label="TLS_PSK_DHE_WITH_AES_128_CCM_8"/>
  <int value="49323" label="TLS_PSK_DHE_WITH_AES_256_CCM_8"/>
  <int value="52243"
      label="TLS_ECDHE_RSA_WITH_CHACHA20_POLY1305 (non-standard)"/>
  <int value="52244"
      label="TLS_ECDHE_ECDSA_WITH_CHACHA20_POLY1305 (non-standard)"/>
  <int value="52245" label="TLS_DHE_RSA_WITH_CHACHA20_POLY1305 (non-standard)"/>
  <int value="52392" label="TLS_ECDHE_RSA_WITH_CHACHA20_POLY1305_SHA256"/>
  <int value="52393" label="TLS_ECDHE_ECDSA_WITH_CHACHA20_POLY1305_SHA256"/>
</enum>

<enum name="SSLErrorCauses" type="int">
  <int value="0" label="CLOCK_PAST: System clock set early">
    This cause is recorded if the SSL error is CERT_DATE_INVALID and Chrome had
    reason to believe that the system clock was behind.  Methods of detecting
    clock inaccuracy have changed over time.
  </int>
  <int value="1" label="CLOCK_FUTURE: System clock set late">
    This cause is recorded if the SSL error is CERT_DATE_INVALID and Chrome had
    reason to believe that the system clock was behind.  Methods of detecting
    clock inaccuracy have changed over time.
  </int>
  <int value="2"
      label="WWW_SUBDOMAIN_MATCH: Difference between the URL and the DNS is
             www">
    This cause is recorded if the ssl error is CERT_COMMON_NAME_INVALID and the
    hostname differs from one of the DNS names in the certificate (CN or SANs)
    only by the presence or absence of the single-label prefix &quot;www&quot;.
    This case is not recored if the host name is not a known TLD.
  </int>
  <int value="3" label="SUBDOMAIN_MATCH: The URL is a subdomain of the DNS">
    This cause is recorded if the ssl error is CERT_COMMON_NAME_INVALID and the
    difference between the URL and the DNS name is not &quot;www&quot;. This
    case is not recorded if the host name is not a known TLD.
  </int>
  <int value="4"
      label="SUBDOMAIN_INVERSE_MATCH: The DNS is a subdomain of the URL">
    This cause is recorded if the ssl error is CERT_COMMON_NAME_INVALID and the
    difference between the DNS name and the URL is not &quot;www&quot;. This
    case is not recorded if the host name is not a known TLD.
  </int>
  <int value="5"
      label="SUBDOMAIN_OUTSIDE_WILDCARD: The URL is outside the scope of the
             wildcard certificate">
    This cause is recorded only if the ssl error is CERT_COMMON_NAME_INVALID, we
    have received a wildcard certificate and the scope of a wildcard certificate
    is too narrow for the hostname. This case is not recorded if the host name
    is not a known TLD.
  </int>
  <int value="6"
      label="HOST_NAME_NOT_KNOWN_TLD: The host name is not a known TLD">
    This cause is recorded only for CERT_COMMON_NAME_INVALID errors.
  </int>
  <int value="7"
      label="LIKELY_MULTI_TENANT_HOSTING: The certificate is a shared
             certificate">
    This cause is recorded only for CERT_COMMON_NAME_INVALID errors. It is
    possible that this error overlaps with others but it is not likely because
    of the heuristics which decide as to what constitutes a shared certificate.
    In cases of overlap, we emit to only one bucket.
  </int>
  <int value="8" label="LOCALHOST: The user is trying to connect to local host">
    This cause is recorded only for CERT_AUTHORITY_INVALID errors.
  </int>
  <int value="9" label="PRIVATE_URL: The user is trying to connect to a VPN">
    This cause is recorded only for CERT_AUTHORITY_INVALID errors. The user did
    not receive a certificate signed by a valid CA.
  </int>
  <int value="10"
      label="AUTHORTIY_ERROR_CAPTIVE_PORTAL: Captive portal was detected">
    This cause is recorded only for CERT_AUTHORITY_INVALID errors. (Deprecated
    in M47.)
  </int>
  <int value="11" label="SELF_SIGNED: The cert is self-signed">
    This cause is recorded only for CERT_AUTHORITY_INVALID errors.
  </int>
  <int value="12" label="EXPIRED_RECENTLY: Cert expired within last 28 days.">

  </int>
  <int value="13"
      label="LIKELY_SAME_DOMAIN: Cert likely belongs to the same domain">
    This case is recorded if the SSL error is CERT_COMMON_NAME_INVALID error and
    the hostname in request URL has the same domain (effective TLD + 1 label) as
    the common name or at least one of the subject alternative names in
    certificate. This case is not recorded if the host name is not a known tld.
  </int>
</enum>

<enum name="SSLErrorHandlerEvent" type="int">
  <int value="0" label="HANDLE_ALL"/>
  <int value="1" label="SHOW_CAPTIVE_PORTAL_INTERSTITIAL_NONOVERRIDABLE"/>
  <int value="2" label="SHOW_CAPTIVE_PORTAL_INTERSTITIAL_OVERRIDABLE"/>
  <int value="3" label="SHOW_SSL_INTERSTITIAL_NONOVERRIDABLE"/>
  <int value="4" label="SHOW_SSL_INTERSTITIAL_OVERRIDABLE"/>
  <int value="5" label="WWW_MISMATCH_FOUND"/>
  <int value="6" label="WWW_MISMATCH_URL_AVAILABLE"/>
  <int value="7" label="WWW_MISMATCH_URL_NOT_AVAILABLE"/>
  <int value="8" label="SHOW_BAD_CLOCK"/>
</enum>

<enum name="SSLErrorTypes" type="int">
  <int value="0" label="CERT_COMMON_NAME_INVALID"/>
  <int value="1" label="CERT_DATE_INVALID"/>
  <int value="2" label="CERT_AUTHORITY_INVALID"/>
  <int value="3" label="CERT_CONTAINS_ERRORS"/>
  <int value="4" label="CERT_NO_REVOCATION_MECHANISM"/>
  <int value="5" label="CERT_UNABLE_TO_CHECK_REVOCATION"/>
  <int value="6" label="CERT_REVOKED"/>
  <int value="7" label="CERT_INVALID"/>
  <int value="8" label="CERT_WEAK_SIGNATURE_ALGORITHM"/>
  <int value="9" label="CERT_WEAK_KEY"/>
  <int value="10" label="CERT_NAME_CONSTRAINT_VIOLATION"/>
  <int value="11" label="UNKNOWN"/>
  <int value="12" label="CERT_WEAK_KEY_DH"/>
  <int value="13" label="CERT_PINNED_KEY_MISSING"/>
  <int value="14" label="CERT_VALIDITY_TOO_LONG"/>
</enum>

<enum name="SSLFailureState" type="int">
  <int value="0" label="No failure"/>
  <int value="1" label="Unknown failure"/>
  <int value="2" label="Failed to process ClientHello"/>
  <int value="3" label="Buggy AES-GCM"/>
  <int value="4" label="Failed with client authentication"/>
  <int value="5" label="Session version mismatch"/>
  <int value="6" label="Failed with Next Proto Negotiation"/>
</enum>

<enum name="SSLGoodCertSeenEvent" type="int">
  <int value="0" label="NO_PREVIOUS_EXCEPTION"/>
  <int value="1" label="HAD_PREVIOUS_EXCEPTION"/>
</enum>

<enum name="SSLHashAlgorithm" type="int">
  <int value="0" label="None (unused)"/>
  <int value="1" label="MD5"/>
  <int value="2" label="SHA-1"/>
  <int value="3" label="SHA-224"/>
  <int value="4" label="SHA-256"/>
  <int value="5" label="SHA-384"/>
  <int value="6" label="SHA-512"/>
</enum>

<enum name="SSLIsExpiredAndDecision" type="int">
  <int value="0" label="EXPIRED_AND_PROCEED"/>
  <int value="1" label="EXPIRED_AND_DO_NOT_PROCEED"/>
  <int value="2" label="NOT_EXPIRED_AND_PROCEED"/>
  <int value="3" label="NOT_EXPIRED_AND_DO_NOT_PROCEED"/>
</enum>

<enum name="SSLOrQUICVersion" type="int">
  <int value="0" label="Unknown"/>
  <int value="1" label="SSL 2.0"/>
  <int value="2" label="SSL 3.0"/>
  <int value="3" label="TLS 1.0"/>
  <int value="4" label="TLS 1.1"/>
  <int value="5" label="TLS 1.2"/>
  <int value="7" label="QUIC"/>
</enum>

<enum name="SSLProtocolNegotiation" type="int">
  <int value="1" label="ALPN, HTTP/1.1"/>
  <int value="100" label="ALPN, SPDY 2.0"/>
  <int value="101" label="ALPN, SPDY 3.0"/>
  <int value="102" label="ALPN, SPDY 3.1"/>
  <int value="103" label="ALPN, HTTP/2 draft-14"/>
  <int value="104" label="ALPN, HTTP/2 draft-15"/>
  <int value="107" label="ALPN, HTTP/2"/>
  <int value="200" label="ALPN, QUIC/1 + SPDY/3"/>
  <int value="501" label="NPN, HTTP/1.1"/>
  <int value="600" label="NPN, SPDY 2.0"/>
  <int value="601" label="NPN, SPDY 3.0"/>
  <int value="602" label="NPN, SPDY 3.1"/>
  <int value="603" label="NPN, HTTP/2 draft-14"/>
  <int value="604" label="NPN, HTTP/2 draft-15"/>
  <int value="607" label="NPN, HTTP/2"/>
  <int value="700" label="NPN, QUIC/1 + SPDY/3"/>
  <int value="1001" label="NPN, fallback to HTTP/1.1"/>
  <int value="1100" label="NPN, fallback to SPDY 2.0"/>
  <int value="1101" label="NPN, fallback to SPDY 3.0"/>
  <int value="1102" label="NPN, fallback to SPDY 3.1"/>
  <int value="1103" label="NPN, fallback to HTTP/2 draft-14"/>
  <int value="1104" label="NPN, fallback to HTTP/2 draft-15"/>
  <int value="1107" label="NPN, fallback to HTTP/2"/>
  <int value="1200" label="NPN, fallback to QUIC/1 + SPDY/3"/>
</enum>

<enum name="SSLResponseTypesV2" type="int">
  <int value="0" label="SHOW_ALL"/>
  <int value="1" label="SHOW_OVERRIDABLE"/>
  <int value="2" label="PROCEED_OVERRIDABLE"/>
  <int value="3" label="PROCEED_NAME"/>
  <int value="4" label="PROCEED_DATE"/>
  <int value="5" label="PROCEED_AUTHORITY"/>
  <int value="6" label="DONT_PROCEED_OVERRIDABLE"/>
  <int value="7" label="DONT_PROCEED_NAME"/>
  <int value="8" label="DONT_PROCEED_DATE"/>
  <int value="9" label="DONT_PROCEED_AUTHORITY"/>
  <int value="10" label="MORE"/>
  <int value="11" label="SHOW_UNDERSTAND"/>
  <int value="12" label="SHOW_INTERNAL_HOSTNAME">
    As of M40, this now also includes dotless domains.
  </int>
  <int value="13" label="PROCEED_INTERNAL_HOSTNAME">
    As of M40, this now also includes dotless domains.
  </int>
  <int value="14" label="SHOW_NEW_SITE"/>
  <int value="15" label="PROCEED_NEW_SITE"/>
  <int value="16"
      label="User manually typed proceed (PROCEED_MANUAL_NONOVERRIDABLE)"/>
  <int value="17"
      label="Chrome captive portal detection enabled
             (DEPRECATED_CAPTIVE_PORTAL_DETECTION_ENABLED)"/>
  <int value="18"
      label="Chrome captive portal detection enabled on an overridable SSL
             error page
             (DEPRECATED_CAPTIVE_PORTAL_DETECTION_ENABLED_OVERRIDABLE)"/>
  <int value="19"
      label="Received a captive portal result
             (DEPRECATED_CAPTIVE_PORTAL_PROBE_COMPLETED)"/>
  <int value="20"
      label="Received a captive portal result on an overridable SSL error
             page (DEPRECATED_CAPTIVE_PORTAL_PROBE_COMPLETED_OVERRIDABLE)"/>
  <int value="21"
      label="Received no response or Non-HTTP login page
             (DEPRECATED_CAPTIVE_PORTAL_NO_RESPONSE)"/>
  <int value="22"
      label="Received no response or Non-HTTP login page on an overridable
             SSL error page
             (DEPRECATED_CAPTIVE_PORTAL_NO_RESPONSE_OVERRIDABLE)"/>
  <int value="23"
      label="Detected captive portal (DEPRECATED_CAPTIVE_PORTAL_DETECTED)"/>
  <int value="24"
      label="Detected captive portal on an overridable SSL error page
             (DEPRECATED_CAPTIVE_PORTAL_DETECTED_OVERRIDABLE)"/>
  <int value="25"
      label="Displayed clock interstitial. (DISPLAYED_CLOCK_INTERSTITIAL)"/>
</enum>

<enum name="StarsLaunchLocation" type="int">
  <int value="0" label="All Items"/>
  <int value="1" label="Uncategorized"/>
  <int value="2" label="Folder"/>
  <int value="3" label="Filter"/>
  <int value="4" label="Search"/>
  <int value="5" label="Bookmark Editor"/>
  <int value="6" label="Omnibox"/>
</enum>

<enum name="StartupProfilingFinishReason" type="int">
  <int value="0" label="Done (all metrics gathered)"/>
  <int value="1"
      label="Abandoned because blocking UI was displayed on startup"/>
  <int value="2" label="Abandoned because profiled content was hidden"/>
  <int value="3" label="Abandoned because profiled content was destroyed"/>
  <int value="4"
      label="Abandoned because profiled content was navigated away from"/>
  <int value="5"
      label="Abandoned because profiled content failed to load its main
             resource"/>
</enum>

<enum name="StartupTemperature" type="int">
  <int value="0" label="Cold startup (mostly hard faults)"/>
  <int value="1" label="Warm startup (nearly no hard faults)"/>
  <int value="2" label="Lukewarm startup (in between cold and warm)"/>
</enum>

<enum name="StartupURLsMigration" type="int">
  <int value="0" label="Performed migration"/>
  <int value="1" label="No migration value"/>
  <int value="2" label="Reset migration"/>
</enum>

<enum name="State" type="int">
  <int value="0" label="Canceled"/>
  <int value="1" label="Dropped"/>
  <int value="2" label="Created"/>
  <int value="3" label="Unknown"/>
  <int value="4" label="Initializing"/>
  <int value="5" label="Connecting"/>
  <int value="6" label="Authenticated"/>
  <int value="7" label="Connected"/>
  <int value="8" label="Closed"/>
  <int value="9" label="Failed"/>
</enum>

<enum name="StateStoreInitResult" type="int">
  <int value="0"
      label="Kept pref: platform-specific store non-existent or not
             supported."/>
  <int value="1" label="Erased pref: platform-specific store was empty"/>
  <int value="2" label="Overwrote pref: platform-specific store differed"/>
  <int value="3" label="No pref change: was equal to platform-specific store"/>
</enum>

<enum name="StayVsLeave" type="int">
  <int value="0" label="Stay on the current page"/>
  <int value="1" label="Leave the current page"/>
</enum>

<enum name="StyleSheetCacheStatus" type="int">
  <int value="0" label="No usable cache found"/>
  <int value="1" label="DiskCache served the CSS source"/>
  <int value="2" label="MemoryCached StyleSheetContents was reused"/>
</enum>

<enum name="SuggestAppsDialogCloseReason" type="int">
  <int value="0" label="Unknown error"/>
  <int value="1" label="Item installed"/>
  <int value="2" label="User cancelled"/>
  <int value="3" label="Webstore link clicked"/>
</enum>

<enum name="SuggestAppsDialogInstall" type="int">
  <int value="0" label="Install succeeded"/>
  <int value="1" label="Install cancelled"/>
  <int value="2" label="Install failed"/>
</enum>

<enum name="SuggestAppsDialogLoad" type="int">
  <int value="0" label="Load succeeded"/>
  <int value="1" label="Load cancelled"/>
  <int value="2" label="Load failed"/>
</enum>

<enum name="SuggestionsResponseState" type="int">
  <int value="0" label="Empty response received from the server."/>
  <int value="1" label="Invalid response received from the server."/>
  <int value="2" label="Valid response received from the server."/>
</enum>

<enum name="SupervisedUserSafetyFilterResult" type="int">
  <int value="100" label="LINK_ALLOWED">Link; Allowed as safe</int>
  <int value="101" label="TYPED_ALLOWED">Typed URL; Allowed as safe</int>
  <int value="102" label="AUTO_BOOKMARK_ALLOWED">Bookmark; Allowed as safe</int>
  <int value="103" label="AUTO_SUBFRAME_ALLOWED">
    Subframe navigation; Allowed as safe
  </int>
  <int value="104" label="MANUAL_SUBFRAME_ALLOWED">
    Manual subframe navigation; Allowed as safe
  </int>
  <int value="105" label="GENERATED_ALLOWED">
    Generated from Omnibox; Allowed as safe
  </int>
  <int value="106" label="AUTO_TOPLEVEL_ALLOWED">
    Automatic toplevel navigation; Allowed as safe
  </int>
  <int value="107" label="FORM_SUBMIT_ALLOWED">
    Form submission; Allowed as safe
  </int>
  <int value="108" label="RELOAD_ALLOWED">Reload; Allowed as safe</int>
  <int value="109" label="KEYWORD_ALLOWED">
    Omnibox keyword; Allowed as safe
  </int>
  <int value="110" label="KEYWORD_GENERATED_ALLOWED">
    URL generated from Omnibox keyword; Allowed as safe
  </int>
  <int value="199" label="OTHER_ALLOWED">Other navigation; Allowed as safe</int>
  <int value="200" label="LINK_ALLOWED_UNKNOWN">
    Link; Allowed by default (safety state unknown)
  </int>
  <int value="201" label="TYPED_ALLOWED_UNKNOWN">
    Typed URL; Allowed by default (safety state unknown)
  </int>
  <int value="202" label="AUTO_BOOKMARK_ALLOWED_UNKNOWN">
    Bookmark; Allowed by default (safety state unknown)
  </int>
  <int value="203" label="AUTO_SUBFRAME_ALLOWED_UNKNOWN">
    Subframe navigation; Allowed by default (safety state unknown)
  </int>
  <int value="204" label="MANUAL_SUBFRAME_ALLOWED_UNKNOWN">
    Manual subframe navigation; Allowed by default (safety state unknown)
  </int>
  <int value="205" label="GENERATED_ALLOWED_UNKNOWN">
    Generated from Omnibox; Allowed by default (safety state unknown)
  </int>
  <int value="206" label="AUTO_TOPLEVEL_ALLOWED_UNKNOWN">
    Automatic toplevel navigation; Allowed by default (safety state unknown)
  </int>
  <int value="207" label="FORM_SUBMIT_ALLOWED_UNKNOWN">
    Form submission; Allowed by default (safety state unknown)
  </int>
  <int value="208" label="RELOAD_ALLOWED_UNKNOWN">
    Reload; Allowed by default (safety state unknown)
  </int>
  <int value="209" label="KEYWORD_ALLOWED_UNKNOWN">
    Omnibox keyword; Allowed by default (safety state unknown)
  </int>
  <int value="210" label="KEYWORD_GENERATED_ALLOWED_UNKNOWN">
    URL generated from Omnibox keyword; Allowed by default (safety state
    unknown)
  </int>
  <int value="299" label="OTHER_ALLOWED_UNKNOWN">
    Other navigation; Allowed by default (safety state unknown)
  </int>
  <int value="300" label="LINK_BLOCKED_BLACKLIST">
    Link; Blocked by static blacklist
  </int>
  <int value="301" label="TYPED_BLOCKED_BLACKLIST">
    Typed URL; Blocked by static blacklist
  </int>
  <int value="302" label="AUTO_BOOKMARK_BLOCKED_BLACKLIST">
    Bookmark; Blocked by static blacklist
  </int>
  <int value="303" label="AUTO_SUBFRAME_BLOCKED_BLACKLIST">
    Subframe navigation; Blocked by static blacklist
  </int>
  <int value="304" label="MANUAL_SUBFRAME_BLOCKED_BLACKLIST">
    Manual subframe navigation; Blocked by static blacklist
  </int>
  <int value="305" label="GENERATED_BLOCKED_BLACKLIST">
    Generated from Omnibox; Blocked by static blacklist
  </int>
  <int value="306" label="AUTO_TOPLEVEL_BLOCKED_BLACKLIST">
    Automatic toplevel navigation; Blocked by static blacklist
  </int>
  <int value="307" label="FORM_SUBMIT_BLOCKED_BLACKLIST">
    Form submission; Blocked by static blacklist
  </int>
  <int value="308" label="RELOAD_BLOCKED_BLACKLIST">
    Reload; Blocked by static blacklist
  </int>
  <int value="309" label="KEYWORD_BLOCKED_BLACKLIST">
    Omnibox keyword; Blocked by static blacklist
  </int>
  <int value="310" label="KEYWORD_GENERATED_BLOCKED_BLACKLIST">
    URL generated from Omnibox keyword; Blocked by static blacklist
  </int>
  <int value="399" label="OTHER_BLOCKED_BLACKLIST">
    Other navigation; Blocked by static blacklist
  </int>
  <int value="400" label="LINK_BLOCKED_SAFESITES">
    Link; Blocked by SafeSites
  </int>
  <int value="401" label="TYPED_BLOCKED_SAFESITES">
    Typed URL; Blocked by SafeSites
  </int>
  <int value="402" label="AUTO_BOOKMARK_BLOCKED_SAFESITES">
    Bookmark; Blocked by SafeSites
  </int>
  <int value="403" label="AUTO_SUBFRAME_BLOCKED_SAFESITES">
    Subframe navigation; Blocked by SafeSites
  </int>
  <int value="404" label="MANUAL_SUBFRAME_BLOCKED_SAFESITES">
    Manual subframe navigation; Blocked by SafeSites
  </int>
  <int value="405" label="GENERATED_BLOCKED_SAFESITES">
    Generated from Omnibox; Blocked by SafeSites
  </int>
  <int value="406" label="AUTO_TOPLEVEL_BLOCKED_SAFESITES">
    Automatic toplevel navigation; Blocked by SafeSites
  </int>
  <int value="407" label="FORM_SUBMIT_BLOCKED_SAFESITES">
    Form submission; Blocked by SafeSites
  </int>
  <int value="408" label="RELOAD_BLOCKED_SAFESITES">
    Reload; Blocked by SafeSites
  </int>
  <int value="409" label="KEYWORD_BLOCKED_SAFESITES">
    Omnibox keyword; Blocked by SafeSites
  </int>
  <int value="410" label="KEYWORD_GENERATED_BLOCKED_SAFESITES">
    URL generated from Omnibox keyword; Blocked by SafeSites
  </int>
  <int value="499" label="OTHER_BLOCKED_SAFESITES">
    Other navigation; Blocked by SafeSites
  </int>
  <int value="500" label="LINK_BLOCKED_MANUAL">
    Link; Blocked by manual exception
  </int>
  <int value="501" label="TYPED_BLOCKED_MANUAL">
    Typed URL; Blocked by manual exception
  </int>
  <int value="502" label="AUTO_BOOKMARK_BLOCKED_MANUAL">
    Bookmark; Blocked by manual exception
  </int>
  <int value="503" label="AUTO_SUBFRAME_BLOCKED_MANUAL">
    Subframe navigation; Blocked by manual exception
  </int>
  <int value="504" label="MANUAL_SUBFRAME_BLOCKED_MANUAL">
    Manual subframe navigation; Blocked by manual exception
  </int>
  <int value="505" label="GENERATED_BLOCKED_MANUAL">
    Generated from Omnibox; Blocked by manual exception
  </int>
  <int value="506" label="AUTO_TOPLEVEL_BLOCKED_MANUAL">
    Automatic toplevel navigation; Blocked by manual exception
  </int>
  <int value="507" label="FORM_SUBMIT_BLOCKED_MANUAL">
    Form submission; Blocked by manual exception
  </int>
  <int value="508" label="RELOAD_BLOCKED_MANUAL">
    Reload; Blocked by manual exception
  </int>
  <int value="509" label="KEYWORD_BLOCKED_MANUAL">
    Omnibox keyword; Blocked by manual exception
  </int>
  <int value="510" label="KEYWORD_GENERATED_BLOCKED_MANUAL">
    URL generated from Omnibox keyword; Blocked by manual exception
  </int>
  <int value="599" label="OTHER_BLOCKED_MANUAL">
    Other navigation; Blocked by manual exception
  </int>
  <int value="600" label="LINK_BLOCKED_DEFAULT">
    Link; Blocked by global settings
  </int>
  <int value="601" label="TYPED_BLOCKED_DEFAULT">
    Typed URL; Blocked by global settings
  </int>
  <int value="602" label="AUTO_BOOKMARK_BLOCKED_DEFAULT">
    Bookmark; Blocked by global settings
  </int>
  <int value="603" label="AUTO_SUBFRAME_BLOCKED_DEFAULT">
    Subframe navigation; Blocked by global settings
  </int>
  <int value="604" label="MANUAL_SUBFRAME_BLOCKED_DEFAULT">
    Manual subframe navigation; Blocked by global settings
  </int>
  <int value="605" label="GENERATED_BLOCKED_DEFAULT">
    Generated from Omnibox; Blocked by global settings
  </int>
  <int value="606" label="AUTO_TOPLEVEL_BLOCKED_DEFAULT">
    Automatic toplevel navigation; Blocked by global settings
  </int>
  <int value="607" label="FORM_SUBMIT_BLOCKED_DEFAULT">
    Form submission; Blocked by global settings
  </int>
  <int value="608" label="RELOAD_BLOCKED_DEFAULT">
    Reload; Blocked by global settings
  </int>
  <int value="609" label="KEYWORD_BLOCKED_DEFAULT">
    Omnibox keyword; Blocked by global settings
  </int>
  <int value="610" label="KEYWORD_GENERATED_BLOCKED_DEFAULT">
    URL generated from Omnibox keyword; Blocked by global settings
  </int>
  <int value="699" label="OTHER_BLOCKED_DEFAULT">
    Other navigation; Blocked by global settings
  </int>
  <int value="700" label="LINK_ALLOWED_WHITELIST">
    Link; Allowed by whitelist
  </int>
  <int value="701" label="TYPED_ALLOWED_WHITELIST">
    Typed URL; Allowed by whitelist
  </int>
  <int value="702" label="AUTO_BOOKMARK_ALLOWED_WHITELIST">
    Bookmark; Allowed by whitelist
  </int>
  <int value="703" label="AUTO_SUBFRAME_ALLOWED_WHITELIST">
    Subframe navigation; Allowed by whitelist
  </int>
  <int value="704" label="MANUAL_SUBFRAME_ALLOWED_WHITELIST">
    Manual subframe navigation; Allowed by whitelist
  </int>
  <int value="705" label="GENERATED_ALLOWED_WHITELIST">
    Generated from Omnibox; Allowed by whitelist
  </int>
  <int value="706" label="AUTO_TOPLEVEL_ALLOWED_WHITELIST">
    Automatic toplevel navigation; Allowed by whitelist
  </int>
  <int value="707" label="FORM_SUBMIT_ALLOWED_WHITELIST">
    Form submission; Allowed by whitelist
  </int>
  <int value="708" label="RELOAD_ALLOWED_WHITELIST">
    Reload; Allowed by whitelist
  </int>
  <int value="709" label="KEYWORD_ALLOWED_WHITELIST">
    Omnibox keyword; Allowed by whitelist
  </int>
  <int value="710" label="KEYWORD_GENERATED_ALLOWED_WHITELIST">
    URL generated from Omnibox keyword; Allowed by whitelist
  </int>
  <int value="799" label="OTHER_ALLOWED_WHITELIST">
    Other navigation; Allowed by whitelist
  </int>
</enum>

<enum name="SuspendAttempt" type="int">
  <int value="0" label="Attempted"/>
</enum>

<enum name="SuspendResult" type="int">
  <int value="0" label="Succeeded"/>
  <int value="1" label="Failed"/>
  <int value="2" label="Canceled (before writing wakeup count)"/>
  <int value="3" label="Canceled (after writing wakeup count)"/>
</enum>

<enum name="SuspendStatus" type="int">
  <int value="0" label="Success"/>
  <int value="1" label="Failure"/>
  <int value="2" label="Cancelled"/>
  <int value="3" label="Attempted"/>
</enum>

<enum name="SwReporterRunningTimeRegistryError" type="int">
  <int value="0" label="No error"/>
  <int value="1" label="Registry key invalid"/>
  <int value="2" label="Missing start time"/>
  <int value="3" label="Missing end time"/>
  <int value="4" label="Missing start and end times"/>
</enum>

<enum name="SwReporterStep" type="int">
  <int value="0" label="Explicit request"/>
  <int value="1" label="Startup retry"/>
  <int value="2" label="Retried too many times"/>
  <int value="3" label="Start execution"/>
  <int value="4" label="Failed to start"/>
  <int value="5" label="Registry exit code"/>
  <int value="6" label="Reset retries"/>
  <int value="7" label="Begin SRT download"/>
  <int value="8" label="No browser to show prompt"/>
  <int value="9" label="No local state"/>
  <int value="10" label="No prompt needed"/>
  <int value="11" label="No prompt field trial"/>
  <int value="12" label="Already prompted"/>
  <int value="13" label="Daily run"/>
  <int value="14" label="Added to menu"/>
</enum>

<enum name="SyncAttachmentStoreResult" type="int">
  <int value="0" label="SUCCESS"/>
  <int value="1" label="UNSPECIFIED_ERROR"/>
  <int value="2" label="STORE_INITIALIZATION_FAILED"/>
</enum>

<enum name="SyncAuthError" type="int">
  <int value="0"
      label="Number of times clients have encountered an Auth error."/>
  <int value="1" label="Number of times clients have fixed an auth error."/>
</enum>

<enum name="SyncBackendInitializeRestoreState" type="int">
  <int value="0" label="Expected restored types and found some"/>
  <int value="1" label="Expected restored types but found none"/>
  <int value="2" label="Did not expect restored types and found none"/>
  <int value="3" label="Did not expect restored types but found some"/>
</enum>

<enum name="SyncBookmarkModelSyncState" type="int">
  <summary>
    The state of the local bookmark model version compared to Sync. Corresponds
    to NativeModelSyncState in bookmark_model_associator.h.
  </summary>
  <int value="0" label="Local version is unset"/>
  <int value="1" label="Local version is in sync"/>
  <int value="2" label="Local version is behind"/>
  <int value="3" label="Local version is ahead"/>
</enum>

<enum name="SyncConfigureResult" type="int">
  <summary>
    Sync data type configure results. The codes are listed in
    data_type_controller.h with more details.
  </summary>
  <int value="0" label="OK"/>
  <int value="1" label="OK_FIRST_RUN"/>
  <int value="2" label="ASSOCIATION_FAILED"/>
  <int value="3" label="ABORTED"/>
  <int value="4" label="UNRECOVERABLE_ERROR"/>
  <int value="5" label="NEEDS_CRYPTO"/>
  <int value="6" label="RUNTIME_ERROR"/>
</enum>

<enum name="SyncConflictResolutions" type="int">
  <summary>
    Sync conflict resolutions. The codes are listed in conflict_resolution.h,
    and correspond to all the different ways a sync conflict can be resolved.
  </summary>
  <int value="0" label="Changes match"/>
  <int value="1" label="Use local"/>
  <int value="2" label="Use remote"/>
  <int value="3" label="Use new"/>
</enum>

<enum name="SyncCryptographerPendingKeysState" type="int">
  <int value="0" label="Does not have pending keys"/>
  <int value="1" label="Has pending keys"/>
</enum>

<enum name="SyncCryptographerReadyState" type="int">
  <int value="0" label="Not Ready"/>
  <int value="1" label="Ready"/>
</enum>

<enum name="SyncCustomEncryptionEvent" type="int">
  <int value="0" label="Default setup with an implicit passphrase"/>
  <int value="1" label="Advanced setup with a custom passphrase"/>
</enum>

<enum name="SyncDeferredInitTrigger" type="int">
  <int value="0" label="Data type requested init."/>
  <int value="1" label="Fallback timer triggered init."/>
</enum>

<enum name="SyncDirectoryOpenResult" type="int">
  <summary>Possible outcomes of an attempt to load the sync directory.</summary>
  <int value="0" label="FIRST_TRY_SUCCESS"/>
  <int value="1" label="SECOND_TRY_SUCCESS"/>
  <int value="2" label="SECOND_TRY_FAILURE"/>
</enum>

<enum name="SyncedNotificationActionType" type="int">
  <int value="0" label="Unknown"/>
  <int value="1" label="Notification clicked"/>
  <int value="2" label="Notification button clicked"/>
  <int value="3" label="Notification closed by user"/>
  <int value="4" label="Notification closed by system"/>
</enum>

<enum name="SyncedSearchEngineDeleteEvent" type="int">
  <summary>Possible events that delete a synced search engine.</summary>
  <int value="0" label="USER_INITIATED"/>
  <int value="1" label="PRE_SYNC_DELETE"/>
  <int value="2" label="EMPTY_FIELD"/>
</enum>

<enum name="SyncErrorInfobarTypes" type="int">
  <summary>Possible errors that can trigger a sync error infobar.</summary>
  <int value="1" label="Sign in needs update"/>
  <int value="2" label="Service unavailable"/>
  <int value="3" label="Needs passphrase"/>
  <int value="4" label="Unrecoverable error"/>
</enum>

<enum name="SyncEventCode" type="int">
  <summary>
    Sync UI events. The codes are listed in profile_syncer_service.h with more
    details.
  </summary>
  <int value="1" label="START_FROM_NTP"/>
  <int value="2" label="START_FROM_WRENCH"/>
  <int value="3" label="START_FROM_OPTIONS"/>
  <int value="10" label="CANCEL_FROM_SIGNON_WITHOUT_AUTH"/>
  <int value="11" label="CANCEL_DURING_SIGNON"/>
  <int value="12" label="CANCEL_DURING_SIGNON_AFTER_MERGE"/>
  <int value="20" label="STOP_FROM_OPTIONS"/>
  <int value="21" label="STOP_FROM_ADVANCED_DIALOG"/>
  <int value="30" label="MERGE_AND_SYNC_NEEDED"/>
</enum>

<enum name="SyncFaviconsAvailable" type="int">
  <int value="0" label="Synced favicons full"/>
  <int value="1" label="Synced favicons not full"/>
</enum>

<enum name="SyncFSConflictResolutionPolicy" type="int">
  <int value="0" label="Unknown"/>
  <int value="1" label="LastWriteWin"/>
  <int value="2" label="Manual"/>
</enum>

<enum name="SyncFSRemoteServiceState" type="int">
  <int value="0" label="OK"/>
  <int value="1" label="TemporaryUnavailable"/>
  <int value="2" label="AuthenticationRequired"/>
  <int value="3" label="Disabled"/>
</enum>

<enum name="SyncInitialState" type="int">
  <int value="0" label="Can attempt to start"/>
  <int value="1" label="No signed in user"/>
  <int value="2" label="Turned off by user"/>
  <int value="3" label="Turned off and setup not completed"/>
  <int value="4" label="Must confirm sync settings"/>
  <int value="5" label="Disallowed by enterprise policy"/>
  <int value="6" label="Disallowed by the platform"/>
</enum>

<enum name="SyncKeystoreDecryptionFailure" type="int">
  <int value="0" label="No keystore key"/>
  <int value="1" label="Unknown reason"/>
</enum>

<enum name="SyncModelTypes" type="int">
  <int value="0" label="Unspecified"/>
  <int value="1" label="Top level folder"/>
  <int value="2" label="Bookmarks"/>
  <int value="3" label="Preferences"/>
  <int value="4" label="Passwords"/>
  <int value="5" label="Autofill Profile"/>
  <int value="6" label="Autocomplete"/>
  <int value="7" label="Themes"/>
  <int value="8" label="Typed URLs"/>
  <int value="9" label="Extensions"/>
  <int value="10" label="Search Engines"/>
  <int value="11" label="Sessions"/>
  <int value="12" label="Apps"/>
  <int value="13" label="App Settings"/>
  <int value="14" label="Extension Settings"/>
  <int value="15" label="App Notifications"/>
  <int value="16" label="History Delete Directives"/>
  <int value="17" label="Nigori"/>
  <int value="18" label="Device Information"/>
  <int value="19" label="Experiments"/>
  <int value="20" label="Synced Notifications"/>
  <int value="21" label="Priority Preferences"/>
  <int value="22" label="Dictionary"/>
  <int value="23" label="Favicon Images"/>
  <int value="24" label="Favicon Tracking"/>
  <int value="25" label="Proxy Tabs"/>
  <int value="26" label="Managed User Settings"/>
  <int value="27" label="Managed Users"/>
  <int value="28" label="Articles"/>
  <int value="29" label="App list"/>
  <int value="30" label="Managed User Shared Settings"/>
  <int value="31" label="Synced Notification App Info"/>
  <int value="32" label="Wifi Credentials"/>
  <int value="33" label="Managed User Whitelists"/>
  <int value="34" label="Autofill Wallet"/>
  <int value="35" label="Autofill Wallet Metadata"/>
</enum>

<enum name="SyncNigoriMigrationResult" type="int">
  <int value="0" label="Failed to set default encryption key"/>
  <int value="1" label="Failed to set nondefault encryption key"/>
  <int value="2" label="Failed to extract keystore decryptor"/>
  <int value="3" label="Failed to extract encryption keybag"/>
  <int value="4"
      label="Successfully migrated to non-backwards compatible keystore mode"/>
  <int value="5"
      label="Successfully migrated to backwards compatible keystore mode"/>
  <int value="6" label="Successfully migrated with frozen implicit passphrase"/>
  <int value="7" label="Successfully migrated with custom passphrase"/>
</enum>

<enum name="SyncNigoriMigrationState" type="int">
  <int value="0" label="Fully migrated"/>
  <int value="1" label="Not migrated due to cryptographer not ready"/>
  <int value="2" label="Not migrated due to missing keystore key"/>
  <int value="3" label="Not migrated for an unknown reason"/>
</enum>

<enum name="SyncPassphraseDismissal" type="int">
  <int value="0" label="Passphrase accepted"/>
  <int value="1" label="Cancel with wrong passphrase error"/>
  <int value="2" label="Cancel without any passphrase attempted"/>
  <int value="3" label="Followed reset link"/>
</enum>

<enum name="SyncPassphraseType" type="int">
  <int value="0" label="IMPLICIT_PASSPHRASE"/>
  <int value="1" label="KEYSTORE_PASSPHRASE"/>
  <int value="2" label="FROZEN_IMPLICIT_PASSPHRASE"/>
  <int value="3" label="CUSTOM_PASSPHRASE"/>
</enum>

<enum name="SyncPromoAction" type="int">
  <int value="0" label="The promo was shown to the user"/>
  <int value="1" label="The user clicked the promo to sign in"/>
</enum>

<enum name="SyncSimpleConflictResolutions" type="int">
  <summary>
    Sync simple conflict resolutions. The codes are listed in
    conflict_resolver.h, and correspond to the different methods we have for
    resolving simple sync conflicts.
  </summary>
  <int value="0" label="Overwrite local"/>
  <int value="1" label="Overwrite server"/>
  <int value="2" label="Undelete"/>
  <int value="3" label="Ignore encryption"/>
  <int value="4" label="Nigori merge"/>
  <int value="5" label="Changes match"/>
</enum>

<enum name="SyncStartResult" type="int">
  <summary>
    Sync data type start results. The codes are listed in data_type_controller.h
    with more details.
  </summary>
  <int value="0" label="OK"/>
  <int value="1" label="OK_FIRST_RUN"/>
  <int value="2" label="BUSY"/>
  <int value="3" label="NOT_ENABLED"/>
  <int value="4" label="ASSOCIATION_FAILED"/>
  <int value="5" label="ABORTED"/>
  <int value="6" label="UNRECOVERABLE_ERROR"/>
  <int value="7" label="NEEDS_CRYPTO"/>
</enum>

<enum name="SyncStopSource" type="int">
  <int value="0" label="Profile destruction"/>
  <int value="1" label="Sign out"/>
  <int value="2" label="Birthday error"/>
  <int value="3" label="Chrome sync settings"/>
  <int value="4" label="Android Chrome sync setting"/>
  <int value="5" label="Android master sync setting"/>
</enum>

<enum name="SyncUnrecoverableErrorReason" type="int">
  <summary>Reasons for sync unrecoverable errors.</summary>
  <int value="0" label="No error"/>
  <int value="1" label="Syncer error"/>
  <int value="2" label="Backend initialization error"/>
  <int value="3" label="Configuration retry"/>
  <int value="4" label="Configuration failure"/>
  <int value="5" label="Actionable error"/>
</enum>

<enum name="SystemLogPIIType" type="int">
  <obsolete>
    Deprecated and removed from code as of 01/2016.
  </obsolete>
  <int value="0" label="Email address"/>
  <int value="1" label="IP address"/>
  <int value="2" label="Web URL"/>
  <int value="3" label="SSID"/>
</enum>

<enum name="TabBackgroundLoadStatus" type="int">
  <int value="0" label="Loaded on creation and shown"/>
  <int value="1" label="Loaded on creation and lost"/>
  <int value="2" label="Not loaded on creation"/>
</enum>

<enum name="TabDiscardingEvents" type="int">
  <int value="0" label="Switched to an active tab"/>
  <int value="1" label="Switched to a discarded tab"/>
  <int value="2" label="Discarded a tab"/>
  <int value="3"
      label="Discarded a tab playing audio (included in the previous one)"/>
</enum>

<enum name="TabRendererCrashStatus" type="int">
  <int value="0" label="Shown in foreground app"/>
  <int value="1" label="Hidden in foreground app"/>
  <int value="2" label="Hidden in background app"/>
</enum>

<enum name="TabRendererDetailedExitStatus" type="int">
  <int value="0" label="Empty minidump in running app"/>
  <int value="1" label="Empty minidump in paused app"/>
  <int value="2" label="Empty minidump in background app"/>
  <int value="3" label="Valid minidump in running app"/>
  <int value="4" label="Valid minidump in paused app"/>
  <int value="5" label="Valid minidump in background app"/>
</enum>

<enum name="TabRendererExitStatus" type="int">
  <int value="0" label="OOM protected in running app"/>
  <int value="1" label="OOM protected in paused app"/>
  <int value="2" label="OOM protected in background app"/>
  <int value="3" label="Not protected in running app"/>
  <int value="4" label="Not protected in paused app"/>
  <int value="5" label="Not protected in background app"/>
</enum>

<enum name="TabRestoreResult" type="int">
  <int value="0" label="Failure (other)"/>
  <int value="1" label="Success"/>
  <int value="2" label="Failure due to network connectivity"/>
</enum>

<enum name="TabRestoreUserAction" type="int">
  <int value="0" label="Wait for completion"/>
  <int value="1" label="Leave tab (close tab/switch tab/go to tab switcher)"/>
  <int value="2" label="Leave Chrome"/>
</enum>

<enum name="TabStatus" type="int">
  <int value="0" label="Memory resident"/>
  <int value="1" label="Evicted and reloaded"/>
  <int value="2" label="Reloaded due to cold start"/>
  <int value="3" label="Partially evicted"/>
  <int value="4" label="Reloaded due to backgrounding"/>
  <int value="5" label="Reloaded due to incognito"/>
  <int value="6" label="Reloaded due to cold start (fg tab on start)"/>
  <int value="7" label="Reloaded due to cold start (bg tab on switch)"/>
  <int value="8" label="Lazy load for 'Open in new tab'"/>
  <int value="9" label="Stopped due to page loading when backgrounding"/>
  <int value="10" label="Evicted due to page loading when backgrounding"/>
  <int value="11" label="Evicted due to OS terminating the renderer."/>
</enum>

<enum name="TabStripState" type="int">
  <int value="0" label="Initial state"/>
  <int value="1" label="Tab is active, shown foreground."/>
  <int value="2" label="Tab is inactive, in background."/>
  <int value="3" label="Tab is detached from tab-strip."/>
  <int value="4" label="Tab is closed."/>
</enum>

<enum name="TabSwitchedToForegroundLaunchedWithURL" type="int">
  <obsolete>
    Deprecated as of 04/2014.
  </obsolete>
  <int value="0" label="Launched without an URL"/>
  <int value="1" label="Launched with an URL"/>
</enum>

<enum name="TabSwitchedToForegroundRevisit" type="int">
  <obsolete>
    Deprecated as of 04/2014.
  </obsolete>
  <int value="0" label="First time"/>
  <int value="1" label="Revisit"/>
</enum>

<enum name="TapDelayType" type="int">
  <int value="0" label="Delayed Tap"/>
  <int value="1" label="Undelayed Tap"/>
</enum>

<enum name="TcpSocketStatus" type="int">
  <int value="0" label="Unknown"/>
  <int value="1" label="Fast Connection Return"/>
  <int value="2" label="Slow Connection Return"/>
  <int value="3" label="Connection Error"/>
  <int value="4" label="Syn Data Acknowledged"/>
  <int value="5" label="Syn Data Nacked"/>
  <int value="6" label="Syn Data Getsockopt Failed"/>
  <int value="7" label="No Syn Data + Ack (can't happen)"/>
  <int value="8" label="No Syn Data + Nack"/>
  <int value="9" label="No Syn Data + Getsockopt Failed"/>
  <int value="10" label="Fast Connect + Read Failed"/>
  <int value="11" label="Slow Connect + Read Failed"/>
  <int value="12" label="Previously Failed"/>
</enum>

<enum name="TempFileFailure" type="int">
  <int value="0" label="Creating"/>
  <int value="1" label="Opening"/>
  <int value="2" label="Closing (unused)"/>
  <int value="3" label="Writing"/>
  <int value="4" label="Renaming"/>
  <int value="5" label="Flushing"/>
</enum>

<enum name="ThreadType" type="int">
  <int value="0" label="UI"/>
  <int value="1" label="Blocking"/>
</enum>

<enum name="ThrottleInfobarResponse" type="int">
  <int value="0" label="No response"/>
  <int value="1" label="Try again"/>
  <int value="2" label="Wait"/>
  <int value="3" label="Infobar dismissed"/>
</enum>

<enum name="TileMemoryBudget" type="int">
  <int value="0" label="Within memory budget"/>
  <int value="1" label="Exceeded memory budget"/>
</enum>

<enum name="TimeZoneRequestEvent" type="int">
  <int value="0" label="Request start"/>
  <int value="1" label="Response success"/>
  <int value="2" label="Response not OK"/>
  <int value="3" label="Response empty"/>
  <int value="4" label="Response malformed"/>
</enum>

<enum name="TimeZoneRequestResult" type="int">
  <int value="0" label="Success"/>
  <int value="1" label="Failure"/>
  <int value="2" label="Server error"/>
  <int value="3" label="Request is cancelled."/>
</enum>

<enum name="TLSRenegotiationPatched" type="int">
  <int value="0" label="Not renegotiation patched"/>
  <int value="1" label="Renegotiation patched"/>
</enum>

<enum name="TokenBinding.KeyMatch" type="int">
  <int value="0" label="No keys"/>
  <int value="1" label="Keys match"/>
  <int value="2" label="Socket (Channel ID) key missing"/>
  <int value="3" label="Request (Token Binding) key missing"/>
  <int value="4" label="Keys present but don't match"/>
  <int value="5" label="Error looking up request key"/>
</enum>

<enum name="TokenBinding.StoreEphemerality" type="int">
  <int value="0" label="CID_EPHEMERAL_COOKIE_EPHEMERAL">
    This value has been deprecated and replaced by EPHEMERAL_MATCH and
    EPHEMERAL_MISMATCH.
  </int>
  <int value="1" label="CID_EPHEMERAL_COOKIE_PERSISTENT"/>
  <int value="2" label="CID_PERSISTENT_COOKIE_EPHEMERAL"/>
  <int value="3" label="CID_PERSISTENT_COOKIE_PERSISTENT">
    This value has been deprecated and replaced by PERSISTENT_MATCH and
    PERSISTENT_MISMATCH.
  </int>
  <int value="4" label="NO_COOKIE_STORE"/>
  <int value="5" label="NO_CHANNEL_ID_STORE"/>
  <int value="6" label="KNOWN_MISMATCH"/>
  <int value="7" label="EPHEMERAL_MATCH"/>
  <int value="8" label="EPHEMERAL_MISMATCH"/>
  <int value="9" label="PERSISTENT_MATCH"/>
  <int value="10" label="PERSISTENT_MISMATCH"/>
  <int value="11" label="EPHEMERAL_UNKNOWN"/>
  <int value="12" label="PERSISTENT_UNKNOWN"/>
</enum>

<enum name="TokenBinding.Support" type="int">
  <int value="0" label="DISABLED"/>
  <int value="1" label="CLIENT_ONLY"/>
  <int value="2" label="CLIENT_AND_SERVER"/>
  <int value="3" label="CLIENT_NO_CHANNEL_ID_SERVICE"/>
</enum>

<enum name="TouchEventDispatchResultType" type="int">
  <int value="0" label="Unhandled touch events"/>
  <int value="1" label="Handled touch events"/>
</enum>

<enum name="TouchEventsState" type="int">
  <int value="0" label="Enabled"/>
  <int value="1" label="Automatic - enabled"/>
  <int value="2" label="Automatic - disabled"/>
  <int value="3" label="Disabled"/>
</enum>

<enum name="TouchpadDeviceState" type="int">
  <int value="0" label="NO_TP_PRESENT_NO_TP_EXPECTED">
    No touchpad detected on a device without built-in touchpad
  </int>
  <int value="1" label="TP_PRESENT_NO_TP_EXPECTED">
    External touchpad detected on a device without built-in touchpad
  </int>
  <int value="2" label="NO_TP_PRESENT_TP_EXPECTED_BOOT">
    Built-in touchpad not detected at boot time on a device with built-in
    touchpad (touchpad failure at boot time)
  </int>
  <int value="3" label="TP_PRESENT_TP_EXPECTED_BOOT">
    Built-in touchpad detected at boot time on a device with built-in touchpad
  </int>
  <int value="4" label="NO_TP_PRESENT_TP_EXPECTED_RESUME">
    Built-in touchpad not detected at resume time on a device with built-in
    touchpad (touchpad failure at resume time)
  </int>
  <int value="5" label="TP_PRESENT_TP_EXPECTED_RESUME">
    Built-in touchpad detected at resume time on a device with built-in touchpad
  </int>
</enum>

<enum name="TouchpadProblemType" type="int">
  <int value="0" label="All events">
    All observed input events from touchpad. Serves as a reference.
  </int>
  <int value="1" label="Noisy Ground">
    The touchpad noise events (e.g. abrupt cursor jumps) caused by the noisy
    ground.
  </int>
</enum>

<enum name="TouchTargetAndDispatchResultType" type="int">
  <int value="0"
      label="Non-root-scroller, non-scrollable document, not handled"/>
  <int value="1"
      label="Non-root-scroller, non-scrollable document, handled application"/>
  <int value="2" label="Non-root-scroller, scrollable document, not handled"/>
  <int value="3"
      label="Non-root-scroller, scrollable document, handled application"/>
  <int value="4" label="Root-scroller, non-scrollable document, not handled"/>
  <int value="5"
      label="Root-scroller, non-scrollable document, handled application"/>
  <int value="6" label="Root-scroller, scrollable document, not handled"/>
  <int value="7"
      label="Root-scroller, scrollable document, handled application"/>
</enum>

<enum name="TPMResultCodeEnum" type="int">
  <int value="0" label="TPM_SUCCESS"/>
  <int value="1" label="TPM_E_AUTHFAIL"/>
  <int value="2" label="TPM_E_BADINDEX"/>
  <int value="3" label="TPM_E_BAD_PARAMETER"/>
  <int value="4" label="TPM_E_AUDITFAILURE"/>
  <int value="5" label="TPM_E_CLEAR_DISABLED"/>
  <int value="6" label="TPM_E_DEACTIVATED"/>
  <int value="7" label="TPM_E_DISABLED"/>
  <int value="8" label="TPM_E_DISABLED_CMD"/>
  <int value="9" label="TPM_E_FAIL"/>
  <int value="10" label="TPM_E_BAD_ORDINAL"/>
  <int value="11" label="TPM_E_INSTALL_DISABLED"/>
  <int value="12" label="TPM_E_INVALID_KEYHANDLE"/>
  <int value="13" label="TPM_E_KEYNOTFOUND"/>
  <int value="14" label="TPM_E_INAPPROPRIATE_ENC"/>
  <int value="15" label="TPM_E_MIGRATEFAIL"/>
  <int value="16" label="TPM_E_INVALID_PCR_INFO"/>
  <int value="17" label="TPM_E_NOSPACE"/>
  <int value="18" label="TPM_E_NOSRK"/>
  <int value="19" label="TPM_E_NOTSEALED_BLOB"/>
  <int value="20" label="TPM_E_OWNER_SET"/>
  <int value="21" label="TPM_E_RESOURCES"/>
  <int value="22" label="TPM_E_SHORTRANDOM"/>
  <int value="23" label="TPM_E_SIZE"/>
  <int value="24" label="TPM_E_WRONGPCRVAL"/>
  <int value="25" label="TPM_E_BAD_PARAM_SIZE"/>
  <int value="26" label="TPM_E_SHA_THREAD"/>
  <int value="27" label="TPM_E_SHA_ERROR"/>
  <int value="28" label="TPM_E_FAILEDSELFTEST"/>
  <int value="29" label="TPM_E_AUTH2FAIL"/>
  <int value="30" label="TPM_E_BADTAG"/>
  <int value="31" label="TPM_E_IOERROR"/>
  <int value="32" label="TPM_E_ENCRYPT_ERROR"/>
  <int value="33" label="TPM_E_DECRYPT_ERROR"/>
  <int value="34" label="TPM_E_INVALID_AUTHHANDLE"/>
  <int value="35" label="TPM_E_NO_ENDORSEMENT"/>
  <int value="36" label="TPM_E_INVALID_KEYUSAGE"/>
  <int value="37" label="TPM_E_WRONG_ENTITYTYPE"/>
  <int value="38" label="TPM_E_INVALID_POSTINIT"/>
  <int value="39" label="TPM_E_INAPPROPRIATE_SIG"/>
  <int value="40" label="TPM_E_BAD_KEY_PROPERTY"/>
  <int value="41" label="TPM_E_BAD_MIGRATION"/>
  <int value="42" label="TPM_E_BAD_SCHEME"/>
  <int value="43" label="TPM_E_BAD_DATASIZE"/>
  <int value="44" label="TPM_E_BAD_MODE"/>
  <int value="45" label="TPM_E_BAD_PRESENCE"/>
  <int value="46" label="TPM_E_BAD_VERSION"/>
  <int value="47" label="TPM_E_NO_WRAP_TRANSPORT"/>
  <int value="48" label="TPM_E_AUDITFAIL_UNSUCCESSFUL"/>
  <int value="49" label="TPM_E_AUDITFAIL_SUCCESSFUL"/>
  <int value="50" label="TPM_E_NOTRESETABLE"/>
  <int value="51" label="TPM_E_NOTLOCAL"/>
  <int value="52" label="TPM_E_BAD_TYPE"/>
  <int value="53" label="TPM_E_INVALID_RESOURCE"/>
  <int value="54" label="TPM_E_NOTFIPS"/>
  <int value="55" label="TPM_E_INVALID_FAMILY"/>
  <int value="56" label="TPM_E_NO_NV_PERMISSION"/>
  <int value="57" label="TPM_E_REQUIRES_SIGN"/>
  <int value="58" label="TPM_E_KEY_NOTSUPPORTED"/>
  <int value="59" label="TPM_E_AUTH_CONFLICT"/>
  <int value="60" label="TPM_E_AREA_LOCKED"/>
  <int value="61" label="TPM_E_BAD_LOCALITY"/>
  <int value="62" label="TPM_E_READ_ONLY"/>
  <int value="63" label="TPM_E_PER_NOWRITE"/>
  <int value="64" label="TPM_E_FAMILYCOUNT"/>
  <int value="65" label="TPM_E_WRITE_LOCKED"/>
  <int value="66" label="TPM_E_BAD_ATTRIBUTES"/>
  <int value="67" label="TPM_E_INVALID_STRUCTURE"/>
  <int value="68" label="TPM_E_KEY_OWNER_CONTROL"/>
  <int value="69" label="TPM_E_BAD_COUNTER"/>
  <int value="70" label="TPM_E_NOT_FULLWRITE"/>
  <int value="71" label="TPM_E_CONTEXT_GAP"/>
  <int value="72" label="TPM_E_MAXNVWRITES"/>
  <int value="73" label="TPM_E_NOOPERATOR"/>
  <int value="74" label="TPM_E_RESOURCEMISSING"/>
  <int value="75" label="TPM_E_DELEGATE_LOCK"/>
  <int value="76" label="TPM_E_DELEGATE_FAMILY"/>
  <int value="77" label="TPM_E_DELEGATE_ADMIN"/>
  <int value="78" label="TPM_E_TRANSPORT_NOTEXCLUSIVE"/>
  <int value="79" label="TPM_E_OWNER_CONTROL"/>
  <int value="80" label="TPM_E_DAA_RESOURCES"/>
  <int value="81" label="TPM_E_DAA_INPUT_DATA0"/>
  <int value="82" label="TPM_E_DAA_INPUT_DATA1"/>
  <int value="83" label="TPM_E_DAA_ISSUER_SETTINGS"/>
  <int value="84" label="TPM_E_DAA_TPM_SETTINGS"/>
  <int value="85" label="TPM_E_DAA_STAGE"/>
  <int value="86" label="TPM_E_DAA_ISSUER_VALIDITY"/>
  <int value="87" label="TPM_E_DAA_WRONG_W"/>
  <int value="88" label="TPM_E_BAD_HANDLE"/>
  <int value="89" label="TPM_E_BAD_DELEGATE"/>
  <int value="90" label="TPM_E_BADCONTEXT"/>
  <int value="91" label="TPM_E_TOOMANYCONTEXTS"/>
  <int value="92" label="TPM_E_MA_TICKET_SIGNATURE"/>
  <int value="93" label="TPM_E_MA_DESTINATION"/>
  <int value="94" label="TPM_E_MA_SOURCE"/>
  <int value="95" label="TPM_E_MA_AUTHORITY"/>
  <int value="97" label="TPM_E_PERMANENTEK"/>
  <int value="98" label="TPM_E_BAD_SIGNATURE"/>
  <int value="99" label="TPM_E_NOCONTEXTSPACE"/>
  <int value="2048" label="TPM_E_RETRY"/>
  <int value="2049" label="TPM_E_NEEDS_SELFTEST"/>
  <int value="2050" label="TPM_E_DOING_SELFTEST"/>
  <int value="2051" label="TPM_E_DEFEND_LOCK_RUNNING"/>
</enum>

<enum name="TrackedPreference" type="int">
  <int value="0" label="kShowHomeButton"/>
  <int value="1" label="kHomePageIsNewTabPage"/>
  <int value="2" label="kHomePage"/>
  <int value="3" label="kRestoreOnStartup"/>
  <int value="4" label="kURLsToRestoreOnStartup"/>
  <int value="5" label="extensions::pref_names::kExtensions"/>
  <int value="6" label="kGoogleServicesLastUsername"/>
  <int value="7" label="kSearchProviderOverrides"/>
  <int value="8" label="kDefaultSearchProviderSearchURL"/>
  <int value="9" label="kDefaultSearchProviderKeyword"/>
  <int value="10" label="kDefaultSearchProviderName"/>
  <int value="11" label="kPinnedTabs"/>
  <int value="12" label="kKnownDisabled (Obsolete 07/2014)"/>
  <int value="13" label="kProfileResetPromptMemento (Obsolete 11/2015)"/>
  <int value="14" label="kDefaultSearchProviderDataPrefName"/>
  <int value="15" label="kPreferenceResetTime"/>
  <int value="16" label="kSafeBrowsingIncidentReportSent"/>
  <int value="17" label="kSyncRemainingRollbackTries"/>
  <int value="18" label="kSafeBrowsingIncidentsSent"/>
  <int value="19" label="kSwReporterPromptVersion"/>
  <int value="20" label="kSwReporterPromptReason"/>
  <int value="21" label="kGoogleServicesUsername"/>
  <int value="22" label="kSwReporterPromptSeed"/>
  <int value="23" label="kGoogleServicesAccountId"/>
  <int value="24" label="kGoogleServicesLastAccountId"/>
</enum>

<enum name="TranslateBubbleUiEvent" type="int">
  <int value="1" label="Switch to Options page"/>
  <int value="2" label="Leave Options page"/>
  <int value="3" label="Advanced Link clicked"/>
  <int value="4" label="Always Translate checked"/>
  <int value="5" label="Always Translate unchecked"/>
  <int value="6" label="Nope menu clicked"/>
  <int value="7" label="Never Translate Language menu clicked"/>
  <int value="8" label="Never Translate This Site menu clicked"/>
  <int value="9" label="Translate button clicked"/>
  <int value="10" label="Done button clicked"/>
  <int value="11" label="Cancel button clicked"/>
  <int value="12" label="Close button clicked"/>
  <int value="13" label="Try Again button clicked"/>
  <int value="14" label="Show Original button clicked"/>
  <int value="15" label="Language Settings link clicked"/>
  <int value="16" label="Source Language menu clicked"/>
  <int value="17" label="Target Language menu clicked"/>
  <int value="18" label="Page Action icon activated"/>
  <int value="19" label="Page Action icon deactivated"/>
  <int value="20" label="Bubble was shown"/>
</enum>

<enum name="TranslateError" type="int">
  <int value="0" label="No error"/>
  <int value="1" label="Network error"/>
  <int value="2" label="Initialization error"/>
  <int value="3" label="Unknown language"/>
  <int value="4" label="Unsupported language"/>
  <int value="5" label="Identical language"/>
  <int value="6" label="Translation error"/>
</enum>

<enum name="TranslateInitiationStatus" type="int">
  <int value="0" label="Completely disabled by prefs"/>
  <int value="1" label="Completely disabled by switch"/>
  <int value="2" label="Disabled by user configuration"/>
  <int value="3" label="Unsupported Language"/>
  <int value="4" label="Unsupported URL"/>
  <int value="5" label="Do nothing for similar languages"/>
  <int value="6" label="Do nothing for accepted languages"/>
  <int value="7" label="Auto translation by user configuration"/>
  <int value="8" label="Auto translation by linked from a translated page"/>
  <int value="9" label="Show infobar"/>
  <int value="10" label="MIME-type is not supported"/>
</enum>

<enum name="TranslateLanguage" type="int">
  <int value="0" label="No language code"/>
  <int value="1" label="Valid language code"/>
  <int value="2" label="Invalid language code"/>
</enum>

<enum name="TranslateLanguageDetectionTiming" type="int">
  <int value="0" label="On time"/>
  <int value="1" label="Deferred"/>
  <int value="2" label="Resumed"/>
</enum>

<enum name="TranslateLanguageVerification" type="int">
  <int value="0" label="CLD is disabled"/>
  <int value="1" label="No Content-Language"/>
  <int value="2" label="CLD can not determine a language"/>
  <int value="3" label="CLD agrees with Content-Language"/>
  <int value="4" label="CLD disagrees with Content-Language"/>
  <int value="5" label="CLD can be trusted"/>
  <int value="6" label="CLD can complement a sub code"/>
</enum>

<enum name="TranslateScheme" type="int">
  <int value="0" label="http"/>
  <int value="1" label="https"/>
  <int value="2" label="unexpected other schemes"/>
</enum>

<enum name="UIEventType" type="int">
  <int value="0" label="Unknown"/>
  <int value="1" label="Touch released"/>
  <int value="2" label="Touch pressed"/>
  <int value="3" label="Touch moved"/>
  <int value="4" label="Touch stationary"/>
  <int value="5" label="Touch cancelled"/>
  <int value="6" label="Gesture scroll begin"/>
  <int value="7" label="Gesture scroll end"/>
  <int value="8" label="Gesture scroll update"/>
  <int value="9" label="Gesture tap"/>
  <int value="10" label="Gesture tap down"/>
  <int value="11" label="Gesture finger down"/>
  <int value="12" label="Gesture finger up"/>
  <int value="13" label="Gesture double tap"/>
  <int value="14" label="Gesture triple tap"/>
  <int value="15" label="Gesture two-finger tap"/>
  <int value="16" label="Gesture pinch begin"/>
  <int value="17" label="Gesture pinch end"/>
  <int value="18" label="Gesture pinch update (2 fingers)"/>
  <int value="19" label="Long press"/>
  <int value="20" label="Multi-finger swipe (2 fingers)"/>
  <int value="21" label="Scroll"/>
  <int value="22" label="Scroll fling start"/>
  <int value="23" label="Scroll fling cancel"/>
  <int value="24" label="Multi-finger swipe (3 fingers)"/>
  <int value="25" label="Multi-finger swipe (4+ fingers)"/>
  <int value="26" label="Gesture scroll update (2 fingers)"/>
  <int value="27" label="Gesture scroll update (3 fingers)"/>
  <int value="28" label="Gesture scroll update (4+ fingers)"/>
  <int value="29" label="Gesture pinch update (3 fingers)"/>
  <int value="30" label="Gesture pinch update (4+ fingers)"/>
  <int value="31" label="Long tap"/>
  <int value="32" label="Show Press"/>
  <int value="33" label="Tap Cancel"/>
  <int value="34" label="Edge swipe"/>
  <int value="35" label="One-finger swipe"/>
  <int value="36" label="Tap unconfirmed"/>
</enum>

<enum name="UmaCleanExitConsistency" type="int">
  <int value="0" label="Dirty/Dirty (Registry/Local State)"/>
  <int value="1" label="Dirty/Clean (Registry/Local State)"/>
  <int value="2" label="Clean/Dirty (Registry/Local State)"/>
  <int value="3" label="Clean/Clean (Registry/Local State)"/>
  <int value="4" label="Missing/Dirty (Registry/Local State)"/>
  <int value="5" label="Missing/Clean (Registry/Local State)"/>
</enum>

<enum name="UmaEntropySourceType" type="int">
  <int value="0" label="No entropy source (never hit)"/>
  <int value="1" label="Low Entropy Source"/>
  <int value="2" label="High Entropy Source"/>
</enum>

<enum name="UmaInitSequence" type="int">
  <int value="0" label="Timer fired first"/>
  <int value="1" label="Init task completed first"/>
</enum>

<enum name="UmaMachineIdState" type="int">
  <int value="0" label="ID generation failed"/>
  <int value="1" label="No stored value"/>
  <int value="2" label="Machine ID changed"/>
  <int value="3" label="Machine ID unchanged"/>
</enum>

<enum name="UmaUploadResponseStatus" type="int">
  <int value="0" label="Unknown failure"/>
  <int value="1" label="Success"/>
  <int value="2" label="Bad request"/>
  <int value="3" label="No response"/>
</enum>

<enum name="UncacheableReason" type="int">
  <int value="0" label="kNoData"/>
  <int value="1" label="kPre11PartialResponse"/>
  <int value="2" label="kNoStrongValidatorOnPartialResponse"/>
  <int value="3" label="kShortMaxAge"/>
  <int value="4" label="kExpiresTooSoon"/>
  <int value="5" label="kHasMustRevalidate"/>
  <int value="6" label="kNoCache"/>
  <int value="7" label="kNoStore"/>
</enum>

<enum name="UniformityTrialGroupNotActive" type="int">
  <int value="0" label="Invalid"/>
  <int value="1" label="Group not reported"/>
  <int value="2" label="Trial was disabled"/>
  <int value="3" label="Group not reported and trial was disabled"/>
</enum>

<enum name="UpdateEngineAttemptResult" type="int">
  <int value="0" label="Update Succeeded"/>
  <int value="1" label="Internal Error"/>
  <int value="2" label="Payload Download Error"/>
  <int value="3" label="Metadata Malformed"/>
  <int value="4" label="Operation Malformed"/>
  <int value="5" label="Operation Execution Error"/>
  <int value="6" label="Metadata Verification Failed"/>
  <int value="7" label="Payload Verification Failed"/>
  <int value="8" label="Verification Failed"/>
  <int value="9" label="Post-install Failed"/>
  <int value="10" label="Abnormal Termination"/>
</enum>

<enum name="UpdateEngineCertificateCheckStatus" type="int">
  <int value="0" label="Valid certificate">
    The certificate is valid and the same as seen before or the first time we
    see a certificate.
  </int>
  <int value="1" label="Changed certificate">
    The certificate is valid, but is different than a previously seen
    certificate for the selected server.
  </int>
  <int value="2" label="Certificate check failed">
    The certificate validation failed.
  </int>
</enum>

<enum name="UpdateEngineCheckReaction" type="int">
  <int value="0" label="Updating"/>
  <int value="1" label="Ignoring"/>
  <int value="2" label="Deferring"/>
  <int value="3" label="Backing Off"/>
</enum>

<enum name="UpdateEngineCheckResult" type="int">
  <int value="0" label="Update Available"/>
  <int value="1" label="No Update Available"/>
  <int value="2" label="Response Download Error"/>
  <int value="3" label="Response Parsing Error"/>
  <int value="4" label="Reboot Pending"/>
</enum>

<enum name="UpdateEngineConnectionType" type="int">
  <int value="0" label="Unknown"/>
  <int value="1" label="Ethernet"/>
  <int value="2" label="Wifi"/>
  <int value="3" label="WiMAX"/>
  <int value="4" label="Bluetooth"/>
  <int value="5" label="Cellular"/>
  <int value="6" label="Tethered (Ethernet)"/>
  <int value="7" label="Tethered (Wifi)"/>
</enum>

<enum name="UpdateEngineDownloadErrorCode" type="int">
  <int value="0" label="Download Error"/>
  <int value="100" label="Input Malformed (Internal Error)"/>
  <int value="101" label="Unknown HTTP Status (not 200-599)"/>
  <int value="400" label="Bad Request (HTTP Status 400)"/>
  <int value="401" label="Unauthorized (HTTP Status 401)"/>
  <int value="402" label="Payment Required (HTTP Status 402)"/>
  <int value="403" label="Forbidden (HTTP Status 403)"/>
  <int value="404" label="Not Found (HTTP Status 404)"/>
  <int value="405" label="Method Not Allowed (HTTP Status 405)"/>
  <int value="406" label="Not Acceptable (HTTP Status 406)"/>
  <int value="407" label="Proxy Auth Req (HTTP Status 407)"/>
  <int value="408" label="Request Timeout (HTTP Status 408)"/>
  <int value="409" label="Conflict (HTTP Status 409)"/>
  <int value="410" label="Gone (HTTP Status 410)"/>
  <int value="500" label="Internal Server Error (HTTP Status 500)"/>
  <int value="501" label="Not Implemented (HTTP Status 501)"/>
  <int value="502" label="Bad Gateway (HTTP Status 502)"/>
  <int value="503" label="Service Unavailable (HTTP Status 503)"/>
  <int value="504" label="Gateway Timeout (HTTP Status 504)"/>
</enum>

<enum name="UpdateEngineDownloadSource" type="int">
  <int value="0" label="HTTPS Server"/>
  <int value="1" label="HTTP Server"/>
  <int value="2" label="HTTP Peer"/>
</enum>

<enum name="UpdateEngineDownloadSources" type="int">
  <int value="0" label="Other"/>
  <int value="1" label="HTTPS Server Only"/>
  <int value="2" label="HTTP Server Only"/>
  <int value="3" label="HTTP Server, HTTPS Server"/>
  <int value="4" label="HTTP Peer Only"/>
  <int value="5" label="HTTP Peer and HTTPS Server"/>
  <int value="6" label="HTTP Peer and HTTP Server"/>
  <int value="7" label="HTTP Peer, HTTPS Server, and HTTP Server"/>
</enum>

<enum name="UpdateEngineErrorCode" type="int">
  <int value="0" label="kErrorCodeSuccess"/>
  <int value="1" label="kErrorCodeError"/>
  <int value="2" label="kErrorCodeOmahaRequestError"/>
  <int value="3" label="kErrorCodeOmahaResponseHandlerError"/>
  <int value="4" label="kErrorCodeFilesystemCopierError"/>
  <int value="5" label="kErrorCodePostinstallRunnerError"/>
  <int value="6" label="kErrorCodeSetBootableFlagError"/>
  <int value="7" label="kErrorCodeInstallDeviceOpenError"/>
  <int value="8" label="kErrorCodeKernelDeviceOpenError"/>
  <int value="9" label="kErrorCodeDownloadTransferError"/>
  <int value="10" label="kErrorCodePayloadHashMismatchError"/>
  <int value="11" label="kErrorCodePayloadSizeMismatchError"/>
  <int value="12" label="kErrorCodeDownloadPayloadVerificationError"/>
  <int value="13" label="kErrorCodeDownloadNewPartitionInfoError"/>
  <int value="14" label="kErrorCodeDownloadWriteError"/>
  <int value="15" label="kErrorCodeNewRootfsVerificationError"/>
  <int value="16" label="kErrorCodeNewKernelVerificationError"/>
  <int value="17" label="kErrorCodeSignedDeltaPayloadExpectedError"/>
  <int value="18" label="kErrorCodeDownloadPayloadPubKeyVerificationError"/>
  <int value="19" label="kErrorCodePostinstallBootedFromFirmwareB"/>
  <int value="20" label="kErrorCodeDownloadStateInitializationError"/>
  <int value="21" label="kErrorCodeDownloadInvalidMetadataMagicString"/>
  <int value="22" label="kErrorCodeDownloadSignatureMissingInManifest"/>
  <int value="23" label="kErrorCodeDownloadManifestParseError"/>
  <int value="24" label="kErrorCodeDownloadMetadataSignatureError"/>
  <int value="25" label="kErrorCodeDownloadMetadataSignatureVerificationError"/>
  <int value="26" label="kErrorCodeDownloadMetadataSignatureMismatch"/>
  <int value="27" label="kErrorCodeDownloadOperationHashVerificationError"/>
  <int value="28" label="kErrorCodeDownloadOperationExecutionError"/>
  <int value="29" label="kErrorCodeDownloadOperationHashMismatch"/>
  <int value="30" label="kErrorCodeOmahaRequestEmptyResponseError"/>
  <int value="31" label="kErrorCodeOmahaRequestXMLParseError"/>
  <int value="32" label="kErrorCodeDownloadInvalidMetadataSize"/>
  <int value="33" label="kErrorCodeDownloadInvalidMetadataSignature"/>
  <int value="34" label="kErrorCodeOmahaRequestResponseInvalid"/>
  <int value="35" label="kErrorCodeOmahaUpdateIgnoredPerPolicy"/>
  <int value="36" label="kErrorCodeOmahaUpdateDeferredPerPolicy"/>
  <int value="37" label="kErrorCodeOmahaErrorInHTTPResponse"/>
  <int value="38" label="kErrorCodeDownloadOperationHashMissingError"/>
  <int value="39" label="kErrorCodeDownloadMetadataSignatureMissingError"/>
  <int value="40" label="kErrorCodeOmahaUpdateDeferredForBackoff"/>
  <int value="41" label="kErrorCodePostinstallPowerwashError"/>
  <int value="42" label="kErrorCodeUpdateCanceledByChannelChange"/>
  <int value="43" label="kErrorCodePostinstallFirmwareRONotUpdatable"/>
  <int value="44" label="kErrorCodeUnsupportedMajorPayloadVersion"/>
  <int value="45" label="kErrorCodeUnsupportedMinorPayloadVersion"/>
  <int value="46" label="kErrorCodeOmahaRequestXMLHasEntityDecl"/>
  <int value="47" label="kErrorCodeFilesystemVerifierError"/>
  <int value="48" label="kErrorCodeUserCanceled"/>
  <int value="49" label="kErrorCodeNonCriticalUpdateInOOBE"/>
</enum>

<enum name="UpdateEngineInstallDateProvisioningSource" type="int">
  <int value="0" label="Omaha Response"/>
  <int value="1" label="OOBE Marker"/>
</enum>

<enum name="UpdateEnginePayloadFormat" type="int">
  <int value="0" label="Full"/>
  <int value="1" label="Delta"/>
  <int value="2" label="Forced Full"/>
</enum>

<enum name="UpdatePasswordSubmissionEvent" type="int">
  <int value="0" label="NO_ACCOUNTS_CLICKED_UPDATE"/>
  <int value="1" label="NO_ACCOUNTS_CLICKED_NOPE"/>
  <int value="2" label="NO_ACCOUNTS_NO_INTERACTION"/>
  <int value="3" label="ONE_ACCOUNT_CLICKED_UPDATE"/>
  <int value="4" label="ONE_ACCOUNT_CLICKED_NOPE"/>
  <int value="5" label="ONE_ACCOUNT_NO_INTERACTION"/>
  <int value="6" label="MULTIPLE_ACCOUNTS_CLICKED_UPDATE"/>
  <int value="7" label="MULTIPLE_ACCOUNTS_CLICKED_NOPE"/>
  <int value="8" label="MULTIPLE_ACCOUNTS_NO_INTERACTION"/>
  <int value="9" label="PASSWORD_OVERRIDDEN_CLICKED_UPDATE"/>
  <int value="10" label="PASSWORD_OVERRIDDEN_CLICKED_NOPE"/>
  <int value="11" label="PASSWORD_OVERRIDDEN_NO_INTERACTION"/>
</enum>

<enum name="UpdatePolicy" type="int">
  <int value="0" label="UPDATES_DISABLED"/>
  <int value="1" label="AUTOMATIC_UPDATES"/>
  <int value="2" label="MANUAL_UPDATES_ONLY"/>
  <int value="3" label="AUTO_UPDATES_ONLY"/>
</enum>

<enum name="UrlResolutionResult" type="int">
  <int value="0" label="Absolute URL"/>
  <int value="1" label="Resolutions Differ"/>
  <int value="2" label="Resolutions Agree"/>
</enum>

<enum name="URLSchemeForHistogram" type="int">
  <int value="0" label="kUnknownURLScheme"/>
  <int value="1" label="kMissingURLScheme"/>
  <int value="2" label="kHttpURLScheme"/>
  <int value="3" label="kHttpsURLScheme"/>
  <int value="4" label="kFtpURLScheme"/>
  <int value="5" label="kChromeExtensionURLScheme"/>
  <int value="6" label="kJavascriptURLScheme"/>
  <int value="7" label="kFileURLScheme"/>
  <int value="8" label="kBlobURLScheme"/>
  <int value="9" label="kDataURLScheme"/>
  <int value="10" label="kFileSystemScheme"/>
</enum>

<enum name="UsedInDraw" type="int">
  <int value="0" label="Was not used in draw"/>
  <int value="1" label="Was used in draw"/>
</enum>

<enum name="UserCertContentDisposition" type="int">
  <int value="0" label="No Content-Disposition"/>
  <int value="1" label="Content-Disposition"/>
</enum>

<enum name="UserChannels" type="int">
  <int value="-1" label="Unknown"/>
  <int value="0" label="Canary"/>
  <int value="1" label="Dev"/>
  <int value="2" label="Beta"/>
  <int value="3" label="Stable"/>
</enum>

<enum name="UserInitiatedEvent" type="int">
  <int value="0" label="WiFi Scan"/>
</enum>

<enum name="UserPodsDisplay" type="int">
  <int value="0" label="Enabled by local settings"/>
  <int value="1" label="Enabled by domain policy"/>
  <int value="2" label="Disabled by local settings"/>
  <int value="3" label="Disabled by domain policy"/>
</enum>

<enum name="UserSelectableSyncType" type="int">
  <int value="0" label="Bookmarks"/>
  <int value="1" label="Preferences"/>
  <int value="2" label="Passwords"/>
  <int value="3" label="Autofill"/>
  <int value="4" label="Themes"/>
  <int value="5" label="Omnibox History"/>
  <int value="6" label="Extensions"/>
  <int value="7" label="Open Tabs"/>
  <int value="8" label="Apps"/>
</enum>

<enum name="UserType" type="int">
  <int value="0" label="Regular"/>
  <int value="1" label="Guest"/>
  <int value="2" label="Retail Mode"/>
  <int value="3" label="Public Account"/>
  <int value="4" label="Locally Managed"/>
  <int value="5" label="Kiosk App"/>
  <int value="6" label="Regular Supervised"/>
</enum>

<enum name="V8CodeCacheRejectReason" type="int">
  <int value="1" label="MAGIC_NUMBER_MISMATCH">
    Reject due to magic number mismatch
  </int>
  <int value="2" label="VERSION_MISMATCH">
    Reject due to version hash mismatch
  </int>
  <int value="3" label="SOURCE_MISMATCH">
    Reject due to source hash mismatch
  </int>
  <int value="4" label="CPU_FEATURES_MISMATCH">
    Reject due to CPU features mismatch
  </int>
  <int value="5" label="FLAGS_MISMATCH">Reject due to flags hash mismatch</int>
  <int value="6" label="CHECKSUM_MISMATCH">Reject due to checksum mismatch</int>
</enum>

<enum name="V8DebugFeature" type="int">
  <int value="1" label="kActive">Debugger has been active</int>
  <int value="2" label="kBreakPoint">
    Debugger has been used to set break points
  </int>
  <int value="3" label="kStepping">
    Debugger has been used to step through Javascript code
  </int>
  <int value="4" label="kHeapSnapshot">
    Heap profiler has been used to take heap snapshots
  </int>
  <int value="5" label="kAllocationTracking">
    Heap profiler has been used to track allocations
  </int>
  <int value="6" label="kProfiler">
    Cpu profiler has been used to profile execution
  </int>
  <int value="7" label="kLiveEdit">
    LiveEdit has been used to replace Javascript code on-the-fly
  </int>
</enum>

<enum name="V8InitializerLoadV8SnapshotResult" type="int">
  <int value="0" label="SUCCESS">Load succeeded</int>
  <int value="1" label="FAILED_OPEN">Failure to open snapshot file</int>
  <int value="2" label="FAILED_MAP">Failed to map snapshot</int>
  <int value="3" label="FAILED_VERIFY">Failed to verify snapshot</int>
</enum>

<enum name="V8InitializerOpenV8FileResult" type="int">
  <int value="0" label="OPENED">Opened without issue</int>
  <int value="1" label="OPENED_RETRY">Opened after one or more retries</int>
  <int value="2" label="FAILED_IN_USE">Failed because file in use</int>
  <int value="3" label="FAILED_OTHER">Failed for other reason</int>
</enum>

<enum name="VAJDADecoderFailure" type="int">
  <int value="0" label="VAAPI_ERROR"/>
</enum>

<enum name="ValidateMenuItemSelectorType" type="int">
  <int value="0"
      label="The menu items' associated action is an unknown selector."/>
  <int value="1" label="The menu item's associated action is -newProfile."/>
  <int value="2" label="The menu item's associated action is -editProfile."/>
  <int value="3"
      label="The menu item's associated action is -switchToProfileFromMenu."/>
  <int value="4"
      label="The menu item's associated action is -switchToProfileFromDock."/>
</enum>

<enum name="ValidationFailures" type="int">
  <int value="0" label="DBus"/>
  <int value="1" label="Load Key"/>
</enum>

<enum name="VariationSeedSignature" type="int">
  <int value="0" label="Signature Missing"/>
  <int value="1" label="Signature Decode Failed"/>
  <int value="2" label="Invalid Signature"/>
  <int value="3" label="Invalid Signature for Seed"/>
  <int value="4" label="Valid Signature for Seed"/>
</enum>

<enum name="VariationsFirstRunResult" type="int">
  <int value="0" label="Seed imported successfully"/>
  <int value="1" label="Seed import failed - no callback (Obsolete)"/>
  <int value="2" label="Seed import failed - no first run seed"/>
  <int value="3" label="Seed import failed - failed to store seed"/>
</enum>

<enum name="VariationsPermanentConsistencyCountryResult" type="int">
  <int value="0" label="Saved pref missing and no country code in seed"/>
  <int value="1" label="Saved pref missing and country code in seed"/>
  <int value="2" label="Saved pref invalid and no country code in seed"/>
  <int value="3" label="Saved pref invalid and country code in seed"/>
  <int value="4"
      label="Saved pref present for current version and no country code in
             seed"/>
  <int value="5"
      label="Saved pref present for different version and no country code in
             seed"/>
  <int value="6"
      label="Saved pref present for current version and country code in seed
             matches"/>
  <int value="7"
      label="Saved pref present for current version and country code in seed
             is different"/>
  <int value="8"
      label="Saved pref present for different version and country code in
             seed matches"/>
  <int value="9"
      label="Saved pref present for different version and country code in
             seed is different"/>
</enum>

<enum name="VariationsResourceRequestsAllowedState" type="int">
  <int value="0" label="Requests allowed"/>
  <int value="1" label="Requests not allowed (Obsolete 11/2013)"/>
  <int value="2" label="Notified that requests became allowed"/>
  <int value="3" label="Requests not allowed: EULA not accepted"/>
  <int value="4" label="Requests not allowed: network down"/>
  <int value="5" label="Requests not allowed: disabled by command line"/>
</enum>

<enum name="VariationsSeedDateChange" type="int">
  <int value="0" label="No previous date"/>
  <int value="1" label="New date older than old date"/>
  <int value="2" label="Same day"/>
  <int value="3" label="Day changed"/>
</enum>

<enum name="VariationsSeedEmpty" type="int">
  <int value="0" label="Seed Not Empty"/>
  <int value="1" label="Seed Empty"/>
  <int value="2" label="Seed Corrupt (Obsolete)"/>
  <int value="3" label="Seed Signature Verification Failed"/>
  <int value="4" label="Seed Corrupt Base64 Data"/>
  <int value="5" label="Seed Corrupt Protobuf"/>
  <int value="6" label="Seed Corrupt Gzip Data"/>
</enum>

<enum name="VariationsSeedExpiry" type="int">
  <int value="0" label="Not Expired"/>
  <int value="1" label="Fetch Time Missing"/>
  <int value="2" label="Expired"/>
</enum>

<enum name="VariationsSeedStoreResult" type="int">
  <int value="0" label="Success"/>
  <int value="1" label="Failed - Empty Seed"/>
  <int value="2" label="Failed - Parse Error"/>
  <int value="3" label="Failed - Signature Mismatch"/>
  <int value="4" label="Failed - Gzip Compress Error"/>
  <int value="5" label="Delta Count"/>
  <int value="6" label="Failed - Delta: Read Seed"/>
  <int value="7" label="Failed - Delta: Apply"/>
  <int value="8" label="Failed - Delta: Store Seed"/>
  <int value="9" label="Failed - Gzip Uncompress Error"/>
  <int value="10" label="Failed - Empty Gzip Contents"/>
  <int value="11" label="Failed - Unsupported Seed Format"/>
</enum>

<enum name="VaryType" type="int">
  <int value="0" label="No Vary header present"/>
  <int value="1" label="Vary:User-Agent"/>
  <int value="2" label="Other"/>
</enum>

<enum name="VAVDADecoderFailure" type="int">
  <int value="0" label="VAAPI_ERROR"/>
</enum>

<enum name="VAVDAH264DecoderFailure" type="int">
  <int value="0" label="FRAME_MBS_ONLY_FLAG_NOT_ONE"/>
  <int value="1" label="GAPS_IN_FRAME_NUM"/>
  <int value="2" label="MID_STREAM_RESOLUTION_CHANGE"/>
  <int value="3" label="INTERLACED_STREAM"/>
  <int value="4" label="VAAPI_ERROR"/>
</enum>

<enum name="VAVEAEncoderFailure" type="int">
  <int value="0" label="VAAPI_ERROR"/>
</enum>

<enum name="VerifyWakeOnWiFiSettingsResult" type="int">
  <summary>
    The result of NIC wake on WiFi settings verification. Corresponds to
    VerifyWakeOnWiFiSettingsResult in shill/metrics.h
  </summary>
  <int value="0" label="Success"/>
  <int value="1" label="Failure"/>
</enum>

<enum name="VideoCaptureEvent" type="int">
  <int value="0" label="Starting video capture"/>
  <int value="1" label="Stopping video capture normally"/>
  <int value="2" label="Stopping video capture due to error"/>
  <int value="3" label="Video capture device stopped. No frames produced."/>
  <int value="4" label="Desktop/Tab capture stopped. No frames produced."/>
</enum>

<enum name="VideoCodec" type="int">
  <int value="0" label="kUnknownVideoCodec"/>
  <int value="1" label="kCodecH264"/>
  <int value="2" label="kCodecVC1"/>
  <int value="3" label="kCodecMPEG2"/>
  <int value="4" label="kCodecMPEG4"/>
  <int value="5" label="kCodecTheora"/>
  <int value="6" label="kCodecVP8"/>
  <int value="7" label="kCodecVP9"/>
</enum>

<enum name="VideoCodecProfile" type="int">
  <int value="0" label="H.264 Baseline"/>
  <int value="1" label="H.264 Main"/>
  <int value="2" label="H.264 Extended"/>
  <int value="3" label="H.264 High"/>
  <int value="4" label="H.264 High10"/>
  <int value="5" label="H.264 High422"/>
  <int value="6" label="H.264 High444"/>
  <int value="7" label="H.264 ScalableBaseline"/>
  <int value="8" label="H.264 ScalableHigh"/>
  <int value="9" label="H.264 StereoHigh"/>
  <int value="10" label="H.264 MultiviewHigh"/>
  <int value="11" label="VP8"/>
  <int value="12" label="VP9 Profile0"/>
  <int value="13" label="VP9 Profile1"/>
  <int value="14" label="VP9 Profile2"/>
  <int value="15" label="VP9 Profile3"/>
  <int value="16" label="HEVC Main"/>
  <int value="17" label="HEVC Main10"/>
  <int value="18" label="HEVC Main Still-picture"/>
</enum>

<enum name="VideoDecodeAcceleratorError" type="int">
  <int value="1" label="Illegal state">
    An operation was attempted during an incompatible decoder state.
  </int>
  <int value="2" label="Invalid argument">
    Invalid argument was passed to an API method.
  </int>
  <int value="3" label="Unreadable input">Encoded input is unreadable.</int>
  <int value="4" label="Platform failure">
    A failure occurred at the browser layer or lower. Examples of such failures
    include GPU hardware failures, GPU driver failures, GPU library failures,
    browser programming errors, and so on.
  </int>
</enum>

<enum name="VideoFormat" type="int">
  <obsolete>
    Deprecated as of 05/2015. Substituted by VideoFramePixelFormat.
  </obsolete>
  <int value="0" label="UNKNOWN"/>
  <int value="1" label="YV12"/>
  <int value="2" label="I420"/>
  <int value="3" label="YV16"/>
  <int value="4" label="YV12A"/>
  <int value="5" label="YV24"/>
  <int value="6" label="NV12"/>
  <int value="7" label="ARGB"/>
  <int value="8" label="HOLE"/>
  <int value="9" label="NATIVE_TEXTURE"/>
</enum>

<enum name="VideoFrameColorSpace" type="int">
  <int value="0" label="Unspecified, usually Rec 601"/>
  <int value="1" label="Jpeg"/>
  <int value="2" label="HD Rec 709"/>
  <int value="3" label="SD Rec 601"/>
</enum>

<enum name="VideoFramePixelFormat" type="int">
  <obsolete>
    Deprecated as of 08/2015. Substituted by VideoPixelFormatUnion.
  </obsolete>
  <int value="0" label="UNKNOWN"/>
  <int value="1" label="YV12"/>
  <int value="2" label="I420"/>
  <int value="3" label="YV16"/>
  <int value="4" label="YV12A"/>
  <int value="5" label="YV24"/>
  <int value="6" label="NV12 (Mac only)"/>
  <int value="7" label="ARGB"/>
  <int value="8" label="xRGB"/>
  <int value="9" label="UYVY"/>
</enum>

<enum name="VideoPixelFormat" type="int">
  <obsolete>
    Deprecated as of 05/2015. Substituted by VideoFormat.
  </obsolete>
  <int value="0" label="UNKNOWN"/>
  <int value="1" label="YV12"/>
  <int value="2" label="YV16"/>
  <int value="3" label="I420"/>
  <int value="4" label="YV12A"/>
  <int value="5" label="HOLE"/>
  <int value="6" label="NATIVE_TEXTURE"/>
  <int value="7" label="YV12J"/>
  <int value="8" label="NV12"/>
  <int value="9" label="YV24"/>
  <int value="10" label="ARGB"/>
  <int value="11" label="YV12HD"/>
</enum>

<enum name="VideoPixelFormatUnion" type="int">
  <int value="0" label="UNKNOWN"/>
  <int value="1" label="I420"/>
  <int value="2" label="YV12"/>
  <int value="3" label="YV16"/>
  <int value="4" label="YV12A"/>
  <int value="5" label="YV24"/>
  <int value="6" label="NV12"/>
  <int value="7" label="NV21"/>
  <int value="8" label="UYVY"/>
  <int value="9" label="YUY2"/>
  <int value="10" label="ARGB"/>
  <int value="11" label="XRGB"/>
  <int value="12" label="RGB24"/>
  <int value="13" label="RGB32"/>
  <int value="14" label="MJPEG"/>
  <int value="15" label="MT21"/>
  <int value="16" label="YUV420P9"/>
  <int value="17" label="YUV420P10"/>
  <int value="18" label="YUV422P9"/>
  <int value="19" label="YUV422P10"/>
  <int value="20" label="YUV444P9"/>
  <int value="21" label="YUV444P10"/>
</enum>

<enum name="VideoPlayerCastAPIExtensionStatus" type="int">
  <int value="0" label="Skipped (Cast extension is unavailable)"/>
  <int value="1" label="Installation failed"/>
  <int value="2" label="Load failed"/>
  <int value="3" label="Loaded successfully (newly installed)"/>
  <int value="4" label="Loaded successfully (already installed)"/>
</enum>

<enum name="VideoPlayerPlayType" type="int">
  <int value="0" label="Local playback"/>
  <int value="1" label="Play on cast device"/>
</enum>

<enum name="VideoRotation" type="int">
  <int value="0" label="VIDEO_ROTATION_0"/>
  <int value="1" label="VIDEO_ROTATION_90"/>
  <int value="2" label="VIDEO_ROTATION_180"/>
  <int value="3" label="VIDEO_ROTATION_270"/>
</enum>

<enum name="ViewFileType" type="int">
  <int value="0" label="other"/>
  <int value="1" label=".3ga"/>
  <int value="2" label=".3gp"/>
  <int value="3" label=".aac"/>
  <int value="4" label=".alac"/>
  <int value="5" label=".asf"/>
  <int value="6" label=".avi"/>
  <int value="7" label=".bmp"/>
  <int value="8" label=".csv"/>
  <int value="9" label=".doc"/>
  <int value="10" label=".docx"/>
  <int value="11" label=".flac"/>
  <int value="12" label=".gif"/>
  <int value="13" label=".jpeg"/>
  <int value="14" label=".jpg"/>
  <int value="15" label=".log"/>
  <int value="16" label=".m3u"/>
  <int value="17" label=".m3u8"/>
  <int value="18" label=".m4a"/>
  <int value="19" label=".m4v"/>
  <int value="20" label=".mid"/>
  <int value="21" label=".mkv"/>
  <int value="22" label=".mov"/>
  <int value="23" label=".mp3"/>
  <int value="24" label=".mp4"/>
  <int value="25" label=".mpg"/>
  <int value="26" label=".odf"/>
  <int value="27" label=".odp"/>
  <int value="28" label=".ods"/>
  <int value="29" label=".odt"/>
  <int value="30" label=".oga"/>
  <int value="31" label=".ogg"/>
  <int value="32" label=".ogv"/>
  <int value="33" label=".pdf"/>
  <int value="34" label=".png"/>
  <int value="35" label=".ppt"/>
  <int value="36" label=".pptx"/>
  <int value="37" label=".ra"/>
  <int value="38" label=".ram"/>
  <int value="39" label=".rar"/>
  <int value="40" label=".rm"/>
  <int value="41" label=".rtf"/>
  <int value="42" label=".wav"/>
  <int value="43" label=".webm"/>
  <int value="44" label=".webp"/>
  <int value="45" label=".wma"/>
  <int value="46" label=".wmv"/>
  <int value="47" label=".xls"/>
  <int value="48" label=".xlsx"/>
  <int value="49" label=".crdownload"/>
  <int value="50" label=".crx"/>
  <int value="51" label=".dmg"/>
  <int value="52" label=".exe"/>
  <int value="53" label=".html"/>
  <int value="54" label=".htm"/>
  <int value="55" label=".jar"/>
  <int value="56" label=".ps"/>
  <int value="57" label=".torrent"/>
  <int value="58" label=".txt"/>
  <int value="59" label=".zip"/>
</enum>

<enum name="VisibleTab" type="int">
  <int value="0" label="Custom Tab"/>
  <int value="1" label="Chrome Tab"/>
</enum>

<enum name="VPNDriver" type="int">
  <int value="0" label="OpenVPN"/>
  <int value="1" label="L2TP/IPSec"/>
</enum>

<enum name="VPNRemoteAuthenticationType" type="int">
  <int value="0" label="OpenVPN Default"/>
  <int value="1" label="OpenVPN Certificate"/>
  <int value="2" label="L2TP/IPSec Default"/>
  <int value="3" label="L2TP/IPSec Certificate"/>
  <int value="4" label="L2TP/IPSec PSK"/>
</enum>

<enum name="VPNUserAuthenticationType" type="int">
  <int value="0" label="OpenVPN None"/>
  <int value="1" label="OpenVPN Certificate"/>
  <int value="2" label="OpenVPN Username/Password"/>
  <int value="3" label="OpenVPN Username/Password/OTP"/>
  <int value="4" label="L2TP/IPSec None"/>
  <int value="5" label="L2TP/IPSec Certificate"/>
  <int value="6" label="L2TP/IPSec Username/Password"/>
</enum>

<enum name="VTVDAInitializationFailureType" type="int">
  <int value="0" label="Successfully Initialized"/>
  <int value="1" label="Framework Load Error"/>
  <int value="2" label="Hardware Session Error"/>
  <int value="3" label="Software Session Error"/>
</enum>

<enum name="VTVDASessionFailureType" type="int">
  <int value="0" label="Successfully Initialized"/>
  <int value="1" label="Platform Error"/>
  <int value="2" label="Invalid Stream"/>
  <int value="3" label="Unsupported Stream Parameters"/>
  <int value="4" label="Decode Error"/>
  <int value="5" label="Unsupported Stream"/>
</enum>

<enum name="WakeOnWiFiFeaturesEnabledState" type="int">
  <summary>
    The wake on WiFi features enabled in shill, which come from
    WakeOnWiFiFeaturesEnabledState in shill/metrics.h
  </summary>
  <int value="0" label="None"/>
  <int value="1" label="Packet"/>
  <int value="2" label="DarkConnect"/>
  <int value="3" label="Packet and DarkConnect"/>
</enum>

<enum name="WakeOnWiFiThrottled" type="int">
  <summary>
    Whether or not wake on WiFi was disabled during suspend because of excessive
    dark resume wakes. Corresponds to WakeOnWiFiThrottled in shill/metrics.h
  </summary>
  <int value="0"
      label="False (Wake on WiFi was not disabled due to excessive dark
             resume wakes"/>
  <int value="1"
      label="True (Wake on WiFi was disabled due to exessive dark resume
             wakes"/>
</enum>

<enum name="WakeReasonReceivedBeforeOnDarkResume" type="int">
  <int value="0" label="Wake reason not received before OnDarkResume"/>
  <int value="1" label="Wake reason received before OnDarkResume"/>
</enum>

<enum name="WalletApiCall" type="int">
  <int value="0" label="Unknown API call"/>
  <int value="1" label="Accept Legal Documents"/>
  <int value="2" label="Authenticate Instrument"/>
  <int value="3" label="Get Full Wallet"/>
  <int value="4" label="Get Wallet Items"/>
  <int value="5" label="Save to Wallet"/>
</enum>

<enum name="WalletErrors" type="int">
  <int value="0" label="Baseline: Issued request"/>
  <int value="1" label="Fatal error (deprecated)"/>
  <int value="2" label="Malformed response"/>
  <int value="3" label="Network error"/>
  <int value="4" label="Bad request"/>
  <int value="5" label="Internal error"/>
  <int value="6" label="Invalid params"/>
  <int value="7" label="Service unavailable"/>
  <int value="8" label="Spending limit exceeded"/>
  <int value="9" label="Unsupported API version"/>
  <int value="10" label="Unknown error"/>
  <int value="11" label="Unsupported merchant"/>
  <int value="12" label="Unsupported buyer legal address"/>
  <int value="13" label="Unverified know your customer status"/>
</enum>

<enum name="WalletRequiredActions" type="int">
  <int value="0" label="Baseline: Issued request"/>
  <int value="1" label="Unknown"/>
  <int value="2" label="GAIA auth"/>
  <int value="3" label="Passive GAIA auth"/>
  <int value="4" label="Set up Wallet"/>
  <int value="5" label="Accept ToS"/>
  <int value="6" label="Update expiration date"/>
  <int value="7" label="Upgrade min address"/>
  <int value="8" label="Choose another instrument or address"/>
  <int value="9" label="Verify CVV"/>
  <int value="10" label="Invalid form field"/>
  <int value="11" label="Require phone number"/>
</enum>

<enum name="WallpaperLayout" type="int">
  <int value="0" label="Center"/>
  <int value="1" label="Center Cropped"/>
  <int value="2" label="Stretch"/>
  <int value="3" label="Tile"/>
</enum>

<enum name="WallpaperType" type="int">
  <int value="0" label="Daily (unused)"/>
  <int value="1" label="Customized"/>
  <int value="2" label="Default"/>
  <int value="3" label="Unknown (unused)"/>
  <int value="4" label="Online"/>
  <int value="5" label="Policy"/>
</enum>

<enum name="WarmupStateOnLaunch" type="int">
  <int value="0" label="No Session, No Warmup"/>
  <int value="1" label="No Session, Warmup"/>
  <int value="2" label="Session, No Warmup, Warmup called from another UID"/>
  <int value="3" label="Session, No Warmup"/>
  <int value="4" label="Session, Warmup"/>
</enum>

<enum name="WebBluetoothConnectGATTOutcome" type="int">
  <int value="0" label="Success"/>
  <int value="1" label="Device no longer in range"/>
  <int value="2" label="Unknown Error"/>
  <int value="3" label="In Progress"/>
  <int value="4" label="Failed"/>
  <int value="5" label="Auth Failed"/>
  <int value="6" label="Auth Canceled"/>
  <int value="7" label="Auth Rejected"/>
  <int value="8" label="Auth Timeout"/>
  <int value="9" label="Unsupported Device"/>
  <int value="10" label="Invalid Attribute Length"/>
  <int value="11" label="Congested Connection"/>
  <int value="12" label="Insufficient Encryption"/>
  <int value="13" label="Invalid Offset"/>
  <int value="14" label="Read Not Permitted"/>
  <int value="15" label="Unsupported Request"/>
  <int value="16" label="Write Not Permitted"/>
</enum>

<enum name="WebBluetoothFunction" type="int">
  <int value="0" label="requestDevice()"/>
  <int value="1" label="RemoteGATTServer.connect()"/>
  <int value="2" label="RemoteGATTServer.getPrimaryService()"/>
  <int value="3" label="RemoteGATTService.getCharacteristic()"/>
  <int value="4" label="RemoteGATTCharacteristic.readValue()"/>
  <int value="5" label="RemoteGATTCharacteristic.writeValue()"/>
  <int value="6" label="RemoteGATTCharacteristic.startNotifications()"/>
  <int value="7" label="RemoteGATTCharacteristic.stopNotifications()"/>
  <int value="8" label="RemoteGATTServer.disconnect()"/>
  <int value="9" label="RemoteGATTService.getCharacteristics()"/>
</enum>

<enum name="WebBluetoothGATTOperationOutcome" type="int">
  <int value="0" label="Success"/>
  <int value="1" label="No Device"/>
  <int value="2" label="No Service"/>
  <int value="3" label="No Characteristic"/>
  <int value="4" label="No Descriptor"/>
  <int value="5" label="Unknown"/>
  <int value="6" label="Failed"/>
  <int value="7" label="In Progress"/>
  <int value="8" label="Invalid Length"/>
  <int value="9" label="Not Permitted"/>
  <int value="10" label="Not Authorized"/>
  <int value="11" label="Not Paired"/>
  <int value="12" label="Not Supported"/>
  <int value="13" label="Blacklisted"/>
</enum>

<enum name="WebBluetoothGetCharacteristicOutcome" type="int">
  <int value="0" label="Success"/>
  <int value="1" label="No device"/>
  <int value="2" label="No service"/>
  <int value="3" label="Not found"/>
  <int value="4" label="Blacklisted"/>
  <int value="5" label="No characteristics"/>
</enum>

<enum name="WebBluetoothGetPrimaryServiceOutcome" type="int">
  <int value="0" label="Success"/>
  <int value="1" label="Device no longer in range."/>
  <int value="2" label="No services with provided UUID."/>
</enum>

<enum name="WebBluetoothRequestDeviceOutcome" type="int">
  <int value="0" label="Success"/>
  <int value="1" label="No Bluetooth adapter"/>
  <int value="2" label="No RenderFrameHost for message source"/>
  <int value="3" label="(Obsolete) Discovery start failed"/>
  <int value="4" label="(Obsolete) Discovery stop failed"/>
  <int value="5" label="(Obsolete) No matching devices found"/>
  <int value="6" label="Bluetooth Adapter not present"/>
  <int value="7" label="(Obsolete) Bluetooth Adapter was off"/>
  <int value="8"
      label="Chosen device vanished between discovery and user selection"/>
  <int value="9" label="Chooser cancelled"/>
  <int value="10"
      label="Chooser insta-closed because Chrome isn't allowed to ask for
             permission to scan for BT devices"/>
  <int value="11" label="Blacklisted service UUID in filter"/>
  <int value="12" label="Bluetooth Overview Help link pressed."/>
  <int value="13" label="Adapter Off Help link pressed."/>
  <int value="14" label="Need Location Help link pressed."/>
  <int value="15"
      label="Chooser insta-closed because user or enterprise policy has
             disabled it"/>
  <int value="16" label="Web Bluetooth kill switch enabled"/>
</enum>

<enum name="WebCertVerifyAgreement" type="int">
  <int value="0" label="Accepted by both iOS and NSS."/>
  <int value="1" label="Rejected by both iOS and NSS."/>
  <int value="2" label="Accepted only by iOS (rejected by NSS)."/>
  <int value="3" label="Accepted only by NSS (rejected by iOS)."/>
</enum>

<enum name="WebFontCacheHit" type="int">
  <int value="0" label="Miss"/>
  <int value="1" label="Hit"/>
  <int value="2" label="Served from data URL"/>
</enum>

<enum name="WebFontDiskCacheHit" type="int">
  <int value="0" label="Not in the cache"/>
  <int value="1" label="In the cache"/>
  <int value="2" label="Previously in the cache"/>
</enum>

<enum name="WebFontInterventionResult" type="int">
  <int value="0" label="Wasn't triggered, and does not time out"/>
  <int value="1" label="Wasn't triggered, but time out"/>
  <int value="2" label="Was triggered, but would not time out"/>
  <int value="3" label="Was triggered, and would time out"/>
</enum>

<enum name="WebFontPackageFormat" type="int">
  <int value="0" label="Unknown / Decode error"/>
  <int value="1" label="SFNT"/>
  <int value="2" label="WOFF"/>
  <int value="3" label="WOFF 2.0"/>
  <int value="4" label="SVG"/>
</enum>

<enum name="WebFontUsageType" type="int">
  <int value="0" label="Styled, and used"/>
  <int value="1" label="Styled, but not used"/>
  <int value="2" label="Not styled, but used"/>
</enum>

<enum name="WebHistoryStatus" type="int">
  <int value="0" label="WEB_HISTORY_QUERY_FAILED">Failed</int>
  <int value="1" label="WEB_HISTORY_QUERY_SUCCEEDED">Succeeded</int>
  <int value="2" label="WEB_HISTORY_QUERY_TIMED_OUT">Timed out</int>
</enum>

<enum name="WebRtcAudioCodecs" type="int">
  <int value="0" label="Unknown"/>
  <int value="1" label="Opus"/>
  <int value="2" label="iSAC"/>
  <int value="3" label="pcmA"/>
  <int value="4" label="pcmU"/>
  <int value="5" label="g722"/>
  <int value="6" label="iLBC"/>
</enum>

<enum name="WebRtcH264DecoderImplEvent" type="int">
  <int value="0" label="Init"/>
  <int value="1" label="Error"/>
</enum>

<enum name="WebRtcH264EncoderImplEvent" type="int">
  <int value="0" label="Init"/>
  <int value="1" label="Error"/>
</enum>

<enum name="WebRtcVideoCodecs" type="int">
  <int value="0" label="Unknown"/>
  <int value="1" label="VP8"/>
  <int value="2" label="VP9"/>
  <int value="3" label="H264"/>
</enum>

<enum name="WebsiteSettingsAction" type="int">
  <int value="0" label="Opened"/>
  <int value="1" label="Selected Permissions tab"/>
  <int value="2" label="Selected Connection tab"/>
  <int value="3" label="Connection tab shown immediately"/>
  <int value="4" label="Cookies dialog opened"/>
  <int value="5" label="Changed permission"/>
  <int value="6" label="Certificate dialog opened"/>
  <int value="7" label="Transparency viewer opened"/>
  <int value="8" label="Connection help opened"/>
  <int value="9" label="Site settings opened"/>
  <int value="10" label="Security details opened"/>
</enum>

<enum name="WebSocketHandshakeResult" type="int">
  <int value="0" label="Incomplete"/>
  <int value="1" label="Normal"/>
  <int value="2" label="Failed"/>
  <int value="3" label="Connected"/>
</enum>

<enum name="WebSocketNewHandshakeResult" type="int">
  <int value="0" label="INCOMPLETE">Incomplete</int>
  <int value="1" label="CONNECTED">Connected</int>
  <int value="2" label="FAILED">Failed</int>
</enum>

<enum name="WebSocketNewPerMessageDeflateContextTakeoverMode" type="int">
  <int value="0" label="Do not take over"/>
  <int value="1" label="Take over"/>
</enum>

<enum name="WebSocketPerMessageDeflateContextTakeOverMode" type="int">
  <int value="0" label="Do not take over"/>
  <int value="1" label="Take over"/>
</enum>

<enum name="WebSocketReceiveType" type="int">
  <int value="0" label="String"/>
  <int value="1" label="ArrayBuffer"/>
  <int value="2" label="Blob"/>
</enum>

<enum name="WebSocketSendType" type="int">
  <int value="0" label="String"/>
  <int value="1" label="ArrayBuffer"/>
  <int value="2" label="ArrayBufferView"/>
  <int value="3" label="Blob"/>
</enum>

<enum name="WebUIUrlHashes" type="int">
  <int value="-2103246641" label="chrome://signin-internals/"/>
  <int value="-2034706497" label="chrome://net-internals/"/>
  <int value="-1887206190" label="chrome://nfc-debug/"/>
  <int value="-1808179141" label="chrome://password-manager-internals/"/>
  <int value="-1743341803" label="chrome://bookmarks/"/>
  <int value="-1729122580" label="chrome://chrome-urls/"/>
  <int value="-1700864659" label="chrome://slow/"/>
  <int value="-1697077152" label="chrome://device-log/"/>
  <int value="-1690355375" label="chrome://mobilesetup/"/>
  <int value="-1681544613" label="chrome://print/"/>
  <int value="-1647734092" label="chrome://net-export/"/>
  <int value="-1591890659" label="chrome://syncfs-internals/"/>
  <int value="-1493822642" label="chrome://invalidations/"/>
  <int value="-1440785181" label="chrome://profile-signin-confirmation/"/>
  <int value="-1398642514" label="chrome://gesture/"/>
  <int value="-1382906531" label="chrome://managed-user-passphrase/"/>
  <int value="-1379571130" label="chrome://newtab/"/>
  <int value="-1378421581" label="chrome://media-router/"/>
  <int value="-1313432739" label="chrome://plugins/"/>
  <int value="-1169621742" label="chrome://linux-proxy-config/"/>
  <int value="-1108319739" label="chrome://sync-internals/"/>
  <int value="-1082746738" label="chrome://credits/"/>
  <int value="-1078583150" label="chrome://view-cert-dialog/"/>
  <int value="-986409800" label="chrome://identity-internals/"/>
  <int value="-969979971" label="chrome://sandbox/"/>
  <int value="-946383082" label="chrome://translate-internals/"/>
  <int value="-936786926" label="chrome://settings/"/>
  <int value="-902637811" label="chrome://appcache-internals/"/>
  <int value="-891260101" label="chrome://inspect/"/>
  <int value="-853789543" label="chrome://bluetooth-pairing/"/>
  <int value="-823585847" label="chrome://chrome-signin/"/>
  <int value="-756514973" label="chrome://version/"/>
  <int value="-753390931" label="chrome://interstitials/"/>
  <int value="-727952446" label="chrome://nacl/"/>
  <int value="-707542503" label="chrome://choose-mobile-network/"/>
  <int value="-672072143" label="chrome://site-engagement/"/>
  <int value="-661305899" label="chrome://set-time/"/>
  <int value="-644310325" label="chrome://os-credits/"/>
  <int value="-624584089"
      label="chrome-extension://eemcgdkfndhakfknompkggombfjjjeno/ (Bookmark
             Manager)"/>
  <int value="-606058756" label="chrome://accessibility/"/>
  <int value="-516792794" label="chrome://downloads/"/>
  <int value="-512782085" label="chrome://salsa/"/>
  <int value="-451371558" label="chrome://serviceworker-internals/"/>
  <int value="-377028639" label="chrome://copresence/"/>
  <int value="-359703631" label="chrome://slow_trace/"/>
  <int value="-245337017" label="chrome://user-actions/"/>
  <int value="-206925255" label="chrome://popular-sites-internals/"/>
  <int value="-176639700" label="chrome://omnibox/"/>
  <int value="-106823253" label="chrome://conflicts/"/>
  <int value="-90956977" label="chrome://dns/"/>
  <int value="-42737706" label="chrome://extensions-frame/"/>
  <int value="-2353438" label="chrome://sim-unlock/"/>
  <int value="1377205" label="chrome://history-frame/"/>
  <int value="34035361" label="chrome://apps/"/>
  <int value="43923599" label="chrome://tracing/"/>
  <int value="58807865" label="chrome://local-state/"/>
  <int value="112165789" label="chrome://device-emulator/"/>
  <int value="114748825" label="chrome-devtools://devtools/"/>
  <int value="164517522" label="chrome://discards/"/>
  <int value="171659041" label="chrome://webrtc-device-provider/"/>
  <int value="253258497" label="chrome://components/"/>
  <int value="260253931" label="chrome://devices/"/>
  <int value="325375649" label="chrome://settings-frame/"/>
  <int value="361621847" label="chrome://make-metro/"/>
  <int value="554090510" label="chrome://first-run/"/>
  <int value="581234974" label="chrome://tcmalloc/"/>
  <int value="646837226" label="chrome://crashes/"/>
  <int value="659389881" label="chrome://gpu/"/>
  <int value="689991895" label="chrome://supervised-user-internals/"/>
  <int value="742272091" label="chrome://extensions/"/>
  <int value="784140714" label="chrome://predictors/"/>
  <int value="812624791" label="chrome://dom-distiller/"/>
  <int value="918960088" label="chrome://instant/"/>
  <int value="943766809" label="chrome://view-cert/"/>
  <int value="977219287" label="chrome://memory/"/>
  <int value="985294599" label="chrome://webrtc-logs/"/>
  <int value="1055519744" label="chrome://webrtc-internals/"/>
  <int value="1109407387" label="chrome://keyboardoverlay/"/>
  <int value="1211642987" label="chrome://voicesearch/"/>
  <int value="1213428635" label="chrome://memory-redirect/"/>
  <int value="1281801197" label="chrome://terms/"/>
  <int value="1340926535" label="chrome://network/"/>
  <int value="1354146226" label="chrome://tab-modal-confirm-dialog/"/>
  <int value="1371905827" label="chrome://flags/"/>
  <int value="1396129399" label="chrome://flash/"/>
  <int value="1403605293" label="chrome://proxy-settings/"/>
  <int value="1427179406" label="chrome://gcm-internals/"/>
  <int value="1454088830" label="chrome://uber-frame/"/>
  <int value="1457759734" label="chrome://user-manager/"/>
  <int value="1463418339" label="chrome://proximity-auth/"/>
  <int value="1466599095" label="chrome://oobe/"/>
  <int value="1467342679" label="chrome://memory-internals/"/>
  <int value="1540230808" label="chrome://power/"/>
  <int value="1568301017" label="chrome://media-internals/"/>
  <int value="1585293659" label="chrome://system/"/>
  <int value="1603463396" label="chrome://help-frame/"/>
  <int value="1615939424" label="chrome://chrome/"/>
  <int value="1628875649" label="chrome://quota-internals/"/>
  <int value="1631369147" label="chrome://domain-reliability-internals/"/>
  <int value="1662453825" label="chrome://indexeddb-internals/"/>
  <int value="1687272877" label="chrome://syncresources/"/>
  <int value="1725906496" label="chrome://imageburner/"/>
  <int value="1765337366" label="chrome://certificate-manager/"/>
  <int value="1797107942" label="chrome://md-settings/"/>
  <int value="1887784693" label="chrome://policy/"/>
  <int value="1926101309" label="chrome://cryptohome/"/>
  <int value="1961263039" label="chrome://profiler/"/>
  <int value="1975618905" label="chrome://app-list/"/>
  <int value="2114840772" label="chrome://drive-internals/"/>
</enum>

<enum name="WebUsbChooserClosed" type="int">
  <int value="0" label="User cancelled"/>
  <int value="1" label="User cancelled, no devices available"/>
  <int value="2" label="Permission granted"/>
  <int value="3" label="Ephemeral permission granted"/>
</enum>

<enum name="WebUsbNotificationClosed" type="int">
  <int value="0" label="Closed by system"/>
  <int value="1" label="Closed by user"/>
  <int value="2" label="Clicked"/>
</enum>

<enum name="WebUsbPermissionRevoked" type="int">
  <int value="0" label="Revoked permission"/>
  <int value="1" label="Revoked ephemeral permission"/>
</enum>

<enum name="WhitelistedDownloadType" type="int">
  <int value="0" label="Does not match any whitelists"/>
  <int value="1" label="URL whitelist"/>
  <int value="2" label="Signature whitelist"/>
</enum>

<enum name="WiFiApMode" type="int">
  <int value="0" label="Unknown"/>
  <int value="1" label="Managed"/>
  <int value="2" label="AdHoc"/>
</enum>

<enum name="WiFiConnectionStatusAfterWake" type="int">
  <int value="0" label="Connected (Wake On WiFi enabled)"/>
  <int value="1" label="Not connected (Wake On WiFi enabled)"/>
  <int value="2" label="Connected (Wake On WiFi disabled)"/>
  <int value="3" label="Not connected (Wake On WiFi disabled)"/>
</enum>

<enum name="WiFiReasonCode" type="int">
  <int value="0" label="kReasonReserved0"/>
  <int value="1" label="kReasonCodeUnspecified"/>
  <int value="2" label="kReasonCodePreviousAuthenticationInvalid"/>
  <int value="3" label="kReasonCodeSenderHasLeft"/>
  <int value="4" label="kReasonCodeInactivity"/>
  <int value="5" label="kReasonCodeTooManySTAs"/>
  <int value="6" label="kReasonCodeNonAuthenticated"/>
  <int value="7" label="kReasonCodeNonAssociated"/>
  <int value="8" label="kReasonCodeDisassociatedHasLeft"/>
  <int value="9" label="kReasonCodeReassociationNotAuthenticated"/>
  <int value="10" label="kReasonCodeUnacceptablePowerCapability"/>
  <int value="11" label="kReasonCodeUnacceptableSupportedChannelInfo"/>
  <int value="12" label="kReasonReserved12"/>
  <int value="13" label="kReasonCodeInvalidInfoElement"/>
  <int value="14" label="kReasonCodeMICFailure"/>
  <int value="15" label="kReasonCode4WayTimeout"/>
  <int value="16" label="kReasonCodeGroupKeyHandshakeTimeout"/>
  <int value="17" label="kReasonCodeDifferenIE"/>
  <int value="18" label="kReasonCodeGroupCipherInvalid"/>
  <int value="19" label="kReasonCodePairwiseCipherInvalid"/>
  <int value="20" label="kReasonCodeAkmpInvalid"/>
  <int value="21" label="kReasonCodeUnsupportedRsnIeVersion"/>
  <int value="22" label="kReasonCodeInvalidRsnIeCaps"/>
  <int value="23" label="kReasonCode8021XAuth"/>
  <int value="24" label="kReasonCodeCipherSuiteRejected"/>
  <int value="25" label="kReasonReserved25"/>
  <int value="26" label="kReasonReserved26"/>
  <int value="27" label="kReasonReserved27"/>
  <int value="28" label="kReasonReserved28"/>
  <int value="29" label="kReasonReserved29"/>
  <int value="30" label="kReasonReserved30"/>
  <int value="31" label="kReasonReserved31"/>
  <int value="32" label="kReasonCodeUnspecifiedQoS"/>
  <int value="33" label="kReasonCodeQoSBandwidth"/>
  <int value="34" label="kReasonCodeiPoorConditions"/>
  <int value="35" label="kReasonCodeOutsideTxop"/>
  <int value="36" label="kReasonCodeStaLeaving"/>
  <int value="37" label="kReasonCodeUnacceptableMechanism"/>
  <int value="38" label="kReasonCodeSetupRequired"/>
  <int value="39" label="kReasonCodeTimeout"/>
  <int value="45" label="kReasonCodeCipherSuiteNotSupported"/>
</enum>

<enum name="WiFiScanResult" type="int">
  <int value="0" label="ProgressiveScan connected"/>
  <int value="1" label="ProgressiveScan error then FullScan didn't connect"/>
  <int value="2" label="ProgressiveScan error then FullScan connected"/>
  <int value="3"
      label="ProgressiveScan didn't connect then FullScan didn't connect"/>
  <int value="4"
      label="ProgressiveScan didn't connect then FullScan connected"/>
  <int value="5" label="FullScan didn't connect"/>
  <int value="6" label="FullScan connected"/>
  <int value="7" label="Internal error"/>
</enum>

<enum name="WiFiStatusType" type="int">
  <int value="0" label="kStatusCodeTypeByAp"/>
  <int value="1" label="kStatusCodeTypeByClient"/>
  <int value="2" label="kStatusCodeTypeByUser"/>
  <int value="3" label="kStatusCodeTypeConsideredDead"/>
</enum>

<enum name="Win8PageLoadType" type="int">
  <int value="0" label="Metro"/>
  <int value="1" label="Desktop"/>
  <int value="2" label="Metro Aura"/>
  <int value="3" label="Desktop Aura"/>
</enum>

<enum name="WindowsExitCode" type="int">
  <int value="-2147483645" label="0x80000003 - STATUS_BREAKPOINT"/>
  <int value="-1073741819" label="0xC0000005 - STATUS_ACCESS_VIOLATION"/>
  <int value="-1073740972" label="0xC0000354 - STATUS_DEBUGGER_INACTIVE"/>
  <int value="-1073740791" label="0xC0000409 - STATUS_STACK_BUFFER_OVERRUN"/>
  <int value="-1073740777"
      label="0xC0000417 - STATUS_INVALID_CRUNTIME_PARAMETER"/>
  <int value="-805306369" label="0xCFFFFFFF - Hung browser killed."/>
  <int value="-36863" label="0xFFFF7001 - Crashpad kCrashExitCodeNoDump."/>
  <int value="-36862" label="0xFFFF7002 - Crashpad kFailedTerminationCode."/>
  <int value="0" label="content::RESULT_CODE_NORMAL_EXIT"/>
  <int value="1" label="content::RESULT_CODE_KILLED"/>
  <int value="2" label="content::RESULT_CODE_HUNG"/>
  <int value="3" label="content::RESULT_CODE_KILLED_BAD_MESSAGE"/>
  <int value="4" label="chrome::RESULT_CODE_INVALID_CMDLINE_URL"/>
  <int value="5" label="chrome::RESULT_CODE_BAD_PROCESS_TYPE"/>
  <int value="6" label="chrome::RESULT_CODE_MISSING_DATA"/>
  <int value="7" label="chrome::RESULT_CODE_SHELL_INTEGRATION_FAILED"/>
  <int value="8" label="chrome::RESULT_CODE_MACHINE_LEVEL_INSTALL_EXISTS"/>
  <int value="9" label="chrome::RESULT_CODE_UNINSTALL_CHROME_ALIVE"/>
  <int value="10" label="chrome::RESULT_CODE_UNINSTALL_USER_CANCEL"/>
  <int value="11" label="chrome::RESULT_CODE_UNINSTALL_DELETE_PROFILE"/>
  <int value="12" label="chrome::RESULT_CODE_UNSUPPORTED_PARAM"/>
  <int value="13" label="chrome::RESULT_CODE_IMPORTER_HUNG"/>
  <int value="14" label="chrome::RESULT_CODE_RESPAWN_FAILED"/>
  <int value="15" label="chrome::RESULT_CODE_NORMAL_EXIT_EXP1"/>
  <int value="16" label="chrome::RESULT_CODE_NORMAL_EXIT_EXP2"/>
  <int value="17" label="chrome::RESULT_CODE_NORMAL_EXIT_EXP3"/>
  <int value="18" label="chrome::RESULT_CODE_NORMAL_EXIT_EXP4"/>
  <int value="19" label="chrome::RESULT_CODE_NORMAL_EXIT_CANCEL"/>
  <int value="20" label="chrome::RESULT_CODE_PROFILE_IN_USE"/>
  <int value="21" label="chrome::RESULT_CODE_PACK_EXTENSION_ERROR"/>
  <int value="22" label="chrome::RESULT_CODE_UNINSTALL_EXTENSION_ERROR"/>
  <int value="23" label="chrome::RESULT_CODE_NORMAL_EXIT_PROCESS_NOTIFIED"/>
  <int value="24" label="chrome::RESULT_CODE_NOTUSED_1"/>
  <int value="25" label="chrome::RESULT_CODE_INSTALL_FROM_WEBSTORE_ERROR_2"/>
  <int value="26" label="chrome::RESULT_CODE_NOTUSED_2"/>
  <int value="27" label="chrome::RESULT_CODE_EULA_REFUSED"/>
  <int value="28" label="chrome::RESULT_CODE_SXS_MIGRATION_FAILED"/>
  <int value="29" label="chrome::RESULT_CODE_ACTION_DISALLOWED_BY_POLICY"/>
  <int value="30" label="chrome::RESULT_CODE_INVALID_SANDBOX_STATE"/>
  <int value="259" label="0x103 - STILL_ACTIVE."/>
  <int value="85436397" label="0x517a7ed - Crashpad simulated exception"/>
  <int value="1073807364" label="0x40010004 - DBG_TERMINATE_PROCESS"/>
</enum>

<enum name="WindowsVersion" type="int">
  <int value="0" label="Pre-XP"/>
  <int value="1" label="XP"/>
  <int value="2" label="2003 Server"/>
  <int value="3" label="Vista"/>
  <int value="4" label="Windows 7"/>
  <int value="5" label="Windows 8"/>
  <int value="6" label="Windows 8.1"/>
  <int value="7" label="Windows 10"/>
  <int value="8" label="Windows 10 TH2"/>
</enum>

<enum name="WindowType" type="int">
  <int value="0" label="Other"/>
  <int value="1" label="Browser"/>
  <int value="2" label="Hosted App"/>
  <int value="3" label="Packaged App"/>
</enum>

<enum name="WinJumplistCategory" type="int">
  <int value="0" label="Recently Closed"/>
  <int value="1" label="Most Visited"/>
  <int value="2" label="People"/>
</enum>

<enum name="WrenchMenuAction" type="int">
  <int value="0" label="New tab"/>
  <int value="1" label="New window"/>
  <int value="2" label="New incognito window"/>
  <int value="3" label="Show bookmark bar"/>
  <int value="4" label="Show bookmark manager"/>
  <int value="5" label="Import settings"/>
  <int value="6" label="Bookmark page"/>
  <int value="7" label="Bookmark all tabs"/>
  <int value="8" label="Pin to start screen"/>
  <int value="9" label="Restore tab"/>
  <int value="10" label="Win desktop restart"/>
  <int value="11" label="Win8 metro restart"/>
  <int value="12" label="Win chromeos restart"/>
  <int value="13" label="Distill page"/>
  <int value="14" label="Save page"/>
  <int value="15" label="Find"/>
  <int value="16" label="Print"/>
  <int value="17" label="Cut"/>
  <int value="18" label="Copy"/>
  <int value="19" label="Paste"/>
  <int value="20" label="Create hosted app"/>
  <int value="21" label="Create shortcuts"/>
  <int value="22" label="Manage extensions"/>
  <int value="23" label="Task manager"/>
  <int value="24" label="Clear browsing data"/>
  <int value="25" label="View source"/>
  <int value="26" label="Dev tools"/>
  <int value="27" label="Dev tools console"/>
  <int value="28" label="Dev tools devices"/>
  <int value="29" label="Profiling enabled"/>
  <int value="30" label="Zoom minus"/>
  <int value="31" label="Zoom plus"/>
  <int value="32" label="Fullscreen"/>
  <int value="33" label="Show history"/>
  <int value="34" label="Show downloads"/>
  <int value="35" label="Show sync setup"/>
  <int value="36" label="Options"/>
  <int value="37" label="About"/>
  <int value="38" label="Help page via menu"/>
  <int value="39" label="Feedback"/>
  <int value="40" label="Toggle request tablet site"/>
  <int value="41" label="Recent tab"/>
  <int value="42" label="Open a bookmark"/>
  <int value="43" label="Exit"/>
  <int value="44" label="Upgrade browser"/>
  <int value="45" label="Cast"/>
</enum>

<enum name="XMLHttpRequestHeaderValueCategoryInRFC7230" type="int">
  <int value="0" label="Header Value Invalid"/>
  <int value="1" label="Header Value Affected By Normalization"/>
  <int value="2" label="Header Value Valid"/>
</enum>

<enum name="XMLHttpRequestSendArrayBufferOrView" type="int">
  <int value="0" label="XMLHttpRequestSendArrayBuffer"/>
  <int value="1" label="XMLHttpRequestSendArrayBufferView"/>
</enum>

</enums>

<!-- Histogram suffixes list -->

<histogram_suffixes_list>

<histogram_suffixes name="ActiveNetworkState">
  <suffix name="Offline"
      label="network manager thinks that the active network is offline"/>
  <suffix name="Online"
      label="network manager thinks that the active network is online"/>
  <suffix name="RestrictedPool"
      label="network manager thinks that the active network is behind portal"/>
  <affected-histogram name="CaptivePortal.OOBE.DiscrepancyWithShill"/>
  <affected-histogram name="CaptivePortal.Session.DiscrepancyWithShill"/>
</histogram_suffixes>

<histogram_suffixes name="AffiliationDummyData" separator=".">
  <suffix name="OnStartup"
      label="with the dummy data being requested shortly after start-up"/>
  <suffix name="Periodic"
      label="with the dummy data being requested periodically later"/>
  <affected-histogram
      name="PasswordManager.AffiliationDummyData.RequestResultCount"/>
  <affected-histogram
      name="PasswordManager.AffiliationDummyData.RequestSuccess"/>
</histogram_suffixes>

<histogram_suffixes name="AlternateProtocol">
  <suffix name="AlternateProtocol_spdy"
      label="with alternate protocol available but http is used"/>
  <suffix name="AlternateProtocol_http"
      label="(with alternate protocol available and spdy is used"/>
  <affected-histogram name="PLT.StartToCommit_LinkLoadNormal"/>
  <affected-histogram name="PLT.StartToCommit_NormalLoad"/>
  <affected-histogram name="PLT.StartToFinish_LinkLoadNormal"/>
  <affected-histogram name="PLT.StartToFinish_NormalLoad"/>
</histogram_suffixes>

<histogram_suffixes name="AndroidBootProgressEvents" separator="_">
  <suffix name="ams_ready" label="For the boot_progress_ams_ready event."/>
  <suffix name="enable_screen"
      label="For the boot_progress_enable_screen event."/>
  <suffix name="pms_data_scan_start"
      label="For the boot_progress_pms_data_scan_start event."/>
  <suffix name="pms_ready" label="For the boot_progress_pms_ready event."/>
  <suffix name="pms_scan_end"
      label="For the boot_progress_pms_scan_end event."/>
  <suffix name="pms_start" label="For the boot_progress_pms_start event."/>
  <suffix name="pms_system_scan_start"
      label="For the boot_progress_pms_system_scan_start event."/>
  <suffix name="preload_end" label="For the boot_progress_preload_end event."/>
  <suffix name="preload_start"
      label="For the boot_progress_preload_start event."/>
  <suffix name="start" label="For the boot_progress_start event."/>
  <suffix name="system_run" label="For the boot_progress_system_run event."/>
  <affected-histogram name="Arc.boot_progress"/>
</histogram_suffixes>

<histogram_suffixes name="AndroidCrashUploadTypes">
  <suffix name="Browser" label="Measures browser crash uploads."/>
  <suffix name="GPU" label="Measures GPU crash uploads."/>
  <suffix name="Other" label="Measures other crash uploads."/>
  <suffix name="Renderer" label="Measures renderer crash uploads."/>
  <affected-histogram name="Tab.AndroidCrashUpload"/>
</histogram_suffixes>

<histogram_suffixes name="AndroidGetAccountsTypes">
  <suffix name="AccountManager" label="Using Android AccountManager API"/>
  <suffix name="GoogleAuthUtil" label="Using GoogleAuthUtil API"/>
  <affected-histogram name="Signin.AndroidGetAccountsTime"/>
</histogram_suffixes>

<histogram_suffixes name="AndroidTabPersistentStoreTime" separator=".">
  <suffix name="CleanupAllEncryptedTime"/>
  <suffix name="LoadStateInternalTime"/>
  <suffix name="LoadStateTime"/>
  <suffix name="ReadSavedStateTime"/>
  <suffix name="RestoreTabTime"/>
  <suffix name="SaveStateTime"/>
  <affected-histogram name="Android.StrictMode.TabPersistentStore"/>
</histogram_suffixes>

<histogram_suffixes name="AppListFirstPaintWarmStartFast" separator="">
  <suffix name="" label="Normal start."/>
  <suffix name="Fast"
      label="Fast start by skipping normal chrome.dll startup."/>
  <affected-histogram name="Startup.AppListFirstPaintWarmStart"/>
</histogram_suffixes>

<histogram_suffixes name="AsyncDNSPref">
  <suffix name="Disabled"/>
  <suffix name="Enabled"/>
  <affected-histogram name="AsyncDNS.PrefDefaultSource"/>
  <affected-histogram name="AsyncDNS.PrefSource"/>
</histogram_suffixes>

<histogram_suffixes name="AsyncSlowStart">
  <suffix name="AsyncSlowStart" label="Async Slow Start on"/>
  <suffix name="AsyncSlowStart_off" label="Async Slow Start off"/>
  <suffix name="AsyncSlowStart_on" label="Async Slow Start on"/>
  <affected-histogram name="Net.Transaction_Connected_New"/>
  <affected-histogram name="Renderer4.StartToFinish"/>
</histogram_suffixes>

<histogram_suffixes name="AttemptResultCode">
  <obsolete>
    Deprecated 2016/03. The async set-as-default experiments are finished.
  </obsolete>
  <suffix name="Success"/>
  <suffix name="Failure"/>
  <suffix name="Abandoned"/>
  <suffix name="Retry"/>
  <suffix name="NoErrorsNotDefault"/>
  <affected-histogram name="DefaultBrowser.AsyncSetAsDefault.Duration"/>
  <affected-histogram name="DefaultBrowser.SetDefaultAsyncDuration"/>
</histogram_suffixes>

<histogram_suffixes name="AutofillDataAvailability" separator=".">
  <suffix name="WithNoData" label="no autofill data"/>
  <suffix name="WithOnlyServerData" label="only server autofill data"/>
  <suffix name="WithOnlyLocalData" label="only local autofill data"/>
  <suffix name="WithBothServerAndLocalData"
      label="both server and local autofill data"/>
  <affected-histogram name="Autofill.FormEvents.Address"/>
  <affected-histogram name="Autofill.FormEvents.CreditCard"/>
</histogram_suffixes>

<histogram_suffixes name="AutofillPayloadCompressionType" separator=".">
  <suffix name="Query" label="Query request compression"/>
  <suffix name="Upload" label="Upload request compression"/>
  <affected-histogram name="Autofill.PayloadCompressionRatio"/>
</histogram_suffixes>

<histogram_suffixes name="AutofillRealPanResultGroups" separator=".">
  <suffix name="Failure" label="Failure"/>
  <suffix name="NetworkError" label="Network errors"/>
  <suffix name="Success" label="Success"/>
  <affected-histogram name="Autofill.UnmaskPrompt.GetRealPanDuration"/>
  <affected-histogram name="Autofill.UnmaskPrompt.UnmaskingDuration"/>
</histogram_suffixes>

<histogram_suffixes name="AutofillSaveCreditCardPromptDestination"
    separator=".">
  <suffix name="Local" label="to local storage"/>
  <suffix name="Upload" label="to upload"/>
  <affected-histogram name="Autofill.SaveCreditCardPrompt"/>
</histogram_suffixes>

<histogram_suffixes name="AutofillSaveCreditCardPromptShow" separator=".">
  <suffix name="FirstShow"
      label="first time prompt is shown for a single credit card submit"/>
  <suffix name="Reshows" label="all shows after the first one, combined"/>
  <affected-histogram name="Autofill.SaveCreditCardPrompt.Local"/>
  <affected-histogram name="Autofill.SaveCreditCardPrompt.Upload"/>
</histogram_suffixes>

<histogram_suffixes name="AutofillServerExperiments">
  <obsolete>
    Deprecated as of at least 2013. Current autofill experiments rely on Finch
    rather than a custom experimentation setup.
  </obsolete>
  <suffix name="ar06" label="Acceptance ratio: 0.6"/>
  <suffix name="ar1" label="Acceptance ratio: 1.0"/>
  <suffix name="ar2" label="Acceptance ratio: 2.0"/>
  <suffix name="ar4" label="Acceptance ratio: 4.0"/>
  <suffix name="ar04wr3fs4"
      label="Acceptance ratio: 0.4; winner lead ratio: 3.0; min form score: 4"/>
  <suffix name="ar05wlr15"
      label="Acceptance ratio: 0.5; winner lead ratio: 1.5"/>
  <suffix name="ar05wlr25"
      label="Acceptance ratio: 0.5; winner lead ratio: 2.5"/>
  <suffix name="ar05wr15fs5"
      label="Acceptance ratio: 0.5; winner lead ratio: 1.5; min form score: 5"/>
  <suffix name="fp05" label="Probability picker algorithm, p=0.5"/>
  <suffix name="fp025" label="Probability picker algorithm, p=0.25"/>
  <suffix name="fp05cc03"
      label="Probability picker algorithm, p=0.5; p_ccname=0.3"/>
  <suffix name="fp05cco03"
      label="Probability picker algorithm, p=0.5;
             p_ccname_given_other_cc_fields=0.3"/>
  <suffix name="fp05cco03cstd"
      label="Probability picker algorithm, p=0.5;
             p_ccname_given_other_cc_fields=0.3; with fallback to the default
             algorithm"/>
  <suffix name="fp05cc03e1"
      label="Probability picker algorithm, p=0.5 for cc and company name
             fields; p_ccname_given_other_cc_fields=0.3; with fallback to the
             default algorithm;"/>
  <suffix name="tbar1" label="Use only Toolbar upload data"/>
  <affected-histogram name="Autofill.Quality"/>
  <affected-histogram name="AutoFill.Quality"/>
  <affected-histogram name="Autofill.Quality.HeuristicType"/>
  <affected-histogram name="Autofill.Quality.HeuristicType.ByFieldType"/>
  <affected-histogram name="Autofill.Quality.PredictedType"/>
  <affected-histogram name="Autofill.Quality.PredictedType.ByFieldType"/>
  <affected-histogram name="Autofill.Quality.ServerType"/>
  <affected-histogram name="Autofill.Quality.ServerType.ByFieldType"/>
</histogram_suffixes>

<histogram_suffixes name="AutofillUnmaskPromptCloseReasonEvents" separator=".">
  <suffix name="Failure" label="Failure"/>
  <suffix name="NoAttempts" label="No attempts"/>
  <suffix name="Success" label="Success"/>
  <suffix name="AbandonUnmasking" label="Abandon unmasking"/>
  <affected-histogram name="Autofill.UnmaskPrompt.Duration"/>
</histogram_suffixes>

<histogram_suffixes name="BadBlockCounts" separator=".">
  <suffix name="Backupsys" label="backupsys partition"/>
  <suffix name="Bbt" label="bbt partition"/>
  <suffix name="Block0" label="block0 partition"/>
  <suffix name="Bootloader" label="bootloader partition"/>
  <suffix name="Cache" label="cache partition"/>
  <suffix name="Factory_store" label="factory_store partition"/>
  <suffix name="Fts" label="fts partition"/>
  <suffix name="Kernel" label="kernel partition"/>
  <suffix name="Postbootloader" label="postbootloader partition"/>
  <suffix name="Postbootloader-B" label="postbootloader-B partition"/>
  <suffix name="Prebootloader" label="prebootloader partition"/>
  <suffix name="Recovery" label="recovery partition"/>
  <suffix name="Rootfs" label="rootfs partition"/>
  <suffix name="Total" label="total partition"/>
  <suffix name="TZ" label="TZ partition"/>
  <suffix name="TZ-B" label="TZ-B partition"/>
  <suffix name="Userdata" label="userdata partition"/>
  <affected-histogram name="Platform.Storage.Flash.BadBlocks"/>
</histogram_suffixes>

<histogram_suffixes name="BatchStunPingParameters" separator=".">
  <suffix name="1ms.1" label="1ms gap, 1st batch"/>
  <suffix name="1ms.2" label="1ms gap, 2nd batch"/>
  <suffix name="1ms.3" label="1ms gap, 3rd batch"/>
  <suffix name="5ms.1" label="5ms gap, 1st batch"/>
  <suffix name="5ms.2" label="5ms gap, 2nd batch"/>
  <suffix name="5ms.3" label="5ms gap, 3rd batch"/>
  <suffix name="10ms.1" label="10ms gap, 1st batch"/>
  <suffix name="10ms.2" label="10ms gap, 2nd batch"/>
  <suffix name="10ms.3" label="10ms gap, 3rd batch"/>
  <suffix name="25ms.1" label="25ms gap, 1st batch"/>
  <suffix name="25ms.2" label="25ms gap, 2nd batch"/>
  <suffix name="25ms.3" label="25ms gap, 3rd batch"/>
  <suffix name="50ms.1" label="50ms gap, 1st batch"/>
  <suffix name="50ms.2" label="50ms gap, 2nd batch"/>
  <suffix name="50ms.3" label="50ms gap, 3rd batch"/>
  <affected-histogram name="WebRTC.Stun.BatchSuccessPercent.NoNAT"/>
  <affected-histogram name="WebRTC.Stun.BatchSuccessPercent.NonSymNAT"/>
  <affected-histogram name="WebRTC.Stun.BatchSuccessPercent.SymNAT"/>
  <affected-histogram name="WebRTC.Stun.BatchSuccessPercent.UnknownNAT"/>
</histogram_suffixes>

<histogram_suffixes name="BlinkGCReason">
  <suffix name="IdleGC" label="Idle GC"/>
  <suffix name="PreciseGC" label="Precise GC"/>
  <suffix name="ConservativeGC" label="Conservative GC"/>
  <suffix name="ForcedGC" label="Forced GC for testing"/>
  <suffix name="MemoryPressureGC" label="Memory pressure GC"/>
  <suffix name="PageNavigationGC" label="Page navigation GC"/>
  <affected-histogram name="BlinkGC.CollectionRate"/>
</histogram_suffixes>

<histogram_suffixes name="CachedResourceType" separator=".">
  <suffix name="JavaScript"
      label="Showing cache patterns only for JavaScript resources."/>
  <suffix name="CSS" label="Showing cache patterns only for CSS resources."/>
  <suffix name="MainFrameHTML"
      label="Showing cache patterns only for main-frame HTML resources."/>
  <suffix name="NonMainFrameHTML"
      label="Showing cache patterns only for non-main-frame HTML resources."/>
  <suffix name="Image"
      label="Showing cache patterns only for image resources."/>
  <suffix name="TinyImage"
      label="Showing cache patterns only for image resources with
             content-length less than 100 bytes."/>
  <suffix name="NonTinyImage"
      label="Showing cache patterns only for image resources with
             content-length &gt;= 100 bytes."/>
  <suffix name="Font" label="Showing cache patterns only for font resources."/>
  <affected-histogram name="HttpCache.Pattern"/>
  <affected-histogram name="HttpCache.ValidationCause"/>
</histogram_suffixes>

<histogram_suffixes name="CacheInstance" separator="." ordering="prefix">
  <suffix name="App"
      label="Collected from the HTML5 Application Cache instance."/>
  <suffix name="Http" label="Collected from the HTTP Cache instance."/>
  <suffix name="Media" label="Collected from the Media Cache instance."/>
  <affected-histogram name="SimpleCache.CheckCRCResult"/>
  <affected-histogram name="SimpleCache.CreationToIndex"/>
  <affected-histogram name="SimpleCache.CreationToIndexFail"/>
  <affected-histogram name="SimpleCache.EntryCreatedAndStream2Omitted"/>
  <affected-histogram name="SimpleCache.EntryCreationResult"/>
  <affected-histogram name="SimpleCache.EntryCreationTime"/>
  <affected-histogram name="SimpleCache.EntryOpenedAndStream2Removed"/>
  <affected-histogram name="SimpleCache.EntryOperationsPending"/>
  <affected-histogram name="SimpleCache.Eviction.CacheSizeOnStart"/>
  <affected-histogram name="SimpleCache.Eviction.CacheSizeOnStart2"/>
  <affected-histogram name="SimpleCache.Eviction.EntryCount"/>
  <affected-histogram name="SimpleCache.Eviction.MaxCacheSizeOnStart"/>
  <affected-histogram name="SimpleCache.Eviction.MaxCacheSizeOnStart2"/>
  <affected-histogram name="SimpleCache.Eviction.Result"/>
  <affected-histogram name="SimpleCache.Eviction.SizeOfEvicted"/>
  <affected-histogram name="SimpleCache.Eviction.SizeOfEvicted2"/>
  <affected-histogram name="SimpleCache.Eviction.SizeWhenDone"/>
  <affected-histogram name="SimpleCache.Eviction.SizeWhenDone2"/>
  <affected-histogram name="SimpleCache.Eviction.TimeToDone"/>
  <affected-histogram name="SimpleCache.Eviction.TimeToSelectEntries"/>
  <affected-histogram name="SimpleCache.FileDescriptorLimitHard"/>
  <affected-histogram name="SimpleCache.FileDescriptorLimitSoft"/>
  <affected-histogram name="SimpleCache.FileDescriptorLimitStatus"/>
  <affected-histogram name="SimpleCache.GlobalOpenEntryCount"/>
  <affected-histogram name="SimpleCache.HeaderSize"/>
  <affected-histogram name="SimpleCache.HeaderSizeChange"/>
  <affected-histogram name="SimpleCache.HeaderSizeDecreaseAbsolute"/>
  <affected-histogram name="SimpleCache.HeaderSizeDecreasePercentage"/>
  <affected-histogram name="SimpleCache.HeaderSizeIncreaseAbsolute"/>
  <affected-histogram name="SimpleCache.HeaderSizeIncreasePercentage"/>
  <affected-histogram name="SimpleCache.IndexCorrupt"/>
  <affected-histogram name="SimpleCache.IndexCreatedEntryCount"/>
  <affected-histogram name="SimpleCache.IndexEntriesLoaded"/>
  <affected-histogram name="SimpleCache.IndexEntriesRestored"/>
  <affected-histogram name="SimpleCache.IndexFileStateOnLoad"/>
  <affected-histogram name="SimpleCache.IndexInitializationWaiters"/>
  <affected-histogram name="SimpleCache.IndexInitializeMethod"/>
  <affected-histogram name="SimpleCache.IndexLoadTime"/>
  <affected-histogram name="SimpleCache.IndexNumEntriesOnWrite"/>
  <affected-histogram name="SimpleCache.IndexRestoreTime"/>
  <affected-histogram name="SimpleCache.IndexWriteInterval.Background"/>
  <affected-histogram name="SimpleCache.IndexWriteInterval.Foreground"/>
  <affected-histogram name="SimpleCache.IndexWriteReason"/>
  <affected-histogram name="SimpleCache.IndexWriteReasonAtLoad"/>
  <affected-histogram name="SimpleCache.IndexWriteToDiskTime.Background"/>
  <affected-histogram name="SimpleCache.IndexWriteToDiskTime.Foreground"/>
  <affected-histogram name="SimpleCache.KeyMatchedOnOpen"/>
  <affected-histogram name="SimpleCache.LastClusterLossPercent"/>
  <affected-histogram name="SimpleCache.LastClusterSize"/>
  <affected-histogram name="SimpleCache.OpenEntryIndexState"/>
  <affected-histogram name="SimpleCache.ReadIsParallelizable"/>
  <affected-histogram name="SimpleCache.ReadResult"/>
  <affected-histogram name="SimpleCache.StaleIndexExtraEntryCount"/>
  <affected-histogram name="SimpleCache.StaleIndexMissedEntryCount"/>
  <affected-histogram name="SimpleCache.StaleIndexQuality"/>
  <affected-histogram name="SimpleCache.SyncCheckEOFHasCrc"/>
  <affected-histogram name="SimpleCache.SyncCheckEOFResult"/>
  <affected-histogram name="SimpleCache.SyncCloseResult"/>
  <affected-histogram name="SimpleCache.SyncCreatePlatformFileError"/>
  <affected-histogram name="SimpleCache.SyncCreatePlatformFileError_WithIndex"/>
  <affected-histogram
      name="SimpleCache.SyncCreatePlatformFileError_WithoutIndex"/>
  <affected-histogram name="SimpleCache.SyncCreateResult"/>
  <affected-histogram name="SimpleCache.SyncCreateResult_WithIndex"/>
  <affected-histogram name="SimpleCache.SyncCreateResult_WithoutIndex"/>
  <affected-histogram name="SimpleCache.SyncOpenEntryAge"/>
  <affected-histogram name="SimpleCache.SyncOpenPlatformFileError"/>
  <affected-histogram name="SimpleCache.SyncOpenPlatformFileError_WithIndex"/>
  <affected-histogram
      name="SimpleCache.SyncOpenPlatformFileError_WithoutIndex"/>
  <affected-histogram name="SimpleCache.SyncOpenResult"/>
  <affected-histogram name="SimpleCache.SyncOpenResult_WithIndex"/>
  <affected-histogram name="SimpleCache.SyncOpenResult_WithoutIndex"/>
  <affected-histogram name="SimpleCache.SyncWriteResult"/>
  <affected-histogram name="SimpleCache.WriteDependencyType"/>
  <affected-histogram name="SimpleCache.WriteResult"/>
  <affected-histogram name="SimpleCache.WriteResult2"/>
</histogram_suffixes>

<histogram_suffixes name="CacheListSize">
  <suffix name="CacheListSize_12" label="Control"/>
  <suffix name="CacheListSize_13" label="Extended deleted list (2x)"/>
  <suffix name="CacheListSize_14" label="Out of the experiment"/>
  <affected-histogram name="DiskCache.TotalIOTime"/>
  <affected-histogram name="Net.HttpJob.TotalTime"/>
  <affected-histogram name="Net.HttpJob.TotalTimeCached"/>
  <affected-histogram name="Net.HttpJob.TotalTimeCancel"/>
  <affected-histogram name="Net.HttpJob.TotalTimeNotCached"/>
  <affected-histogram name="Net.HttpJob.TotalTimeSuccess"/>
  <affected-histogram name="PLT.Abandoned"/>
  <affected-histogram name="PLT.BeginToFinish"/>
  <affected-histogram name="PLT.BeginToFinish_HistoryLoad"/>
  <affected-histogram name="PLT.BeginToFinish_LinkLoadCacheOnly"/>
  <affected-histogram name="PLT.BeginToFinish_LinkLoadNormal"/>
  <affected-histogram name="PLT.BeginToFinish_LinkLoadReload"/>
  <affected-histogram name="PLT.BeginToFinish_LinkLoadStaleOk"/>
  <affected-histogram name="PLT.BeginToFinish_NormalLoad"/>
  <affected-histogram name="PLT.BeginToFinish_Reload"/>
</histogram_suffixes>

<histogram_suffixes name="CacheSensitivityAnalysis">
  <suffix name="No" label="Turned off"/>
  <suffix name="Control" label="Control group"/>
  <suffix name="ControlA" label="Control, Group A"/>
  <suffix name="ControlB" label="Control, Group B"/>
  <suffix name="100" label="100% slowdown"/>
  <suffix name="100A" label="100% slowdown, Group A"/>
  <suffix name="100B" label="100% slowdown, Group B"/>
  <suffix name="200A" label="200% slowdown, Group A"/>
  <suffix name="200B" label="200% slowdown, Group B"/>
  <suffix name="400A" label="400% slowdown, Group A"/>
  <suffix name="400B" label="400% slowdown, Group B"/>
  <affected-histogram name="Net.HttpJob.TotalTime"/>
  <affected-histogram name="Net.HttpJob.TotalTimeCached"/>
  <affected-histogram name="Net.HttpJob.TotalTimeCancel"/>
  <affected-histogram name="Net.HttpJob.TotalTimeNotCached"/>
  <affected-histogram name="Net.HttpJob.TotalTimeSuccess"/>
  <affected-histogram name="PLT.BeginToFinish_CacheSensitivity"/>
  <affected-histogram name="PLT.BeginToFinishDoc_CacheSensitivity"/>
  <affected-histogram name="PLT.BeginToFirstPaint_CacheSensitivity"/>
  <affected-histogram name="PLT.CommitToFirstPaint_CacheSensitivity"/>
</histogram_suffixes>

<histogram_suffixes name="CacheSensitivityHistograms">
  <suffix name="CacheSensitivity" label="Cache Sensivitiy Analysis"/>
  <affected-histogram name="PLT.BeginToFinish"/>
  <affected-histogram name="PLT.BeginToFinishDoc"/>
  <affected-histogram name="PLT.BeginToFirstPaint"/>
  <affected-histogram name="PLT.CommitToFirstPaint"/>
</histogram_suffixes>

<histogram_suffixes name="CacheSensitivityHistograms">
  <suffix name="CacheSensitivity" label="Cache Sensivitiy Analysis"/>
  <affected-histogram name="PLT.BeginToFinish"/>
  <affected-histogram name="PLT.BeginToFinishDoc"/>
  <affected-histogram name="PLT.BeginToFirstPaint"/>
  <affected-histogram name="PLT.CommitToFirstPaint"/>
</histogram_suffixes>

<histogram_suffixes name="CacheThrottle">
  <suffix name="CacheThrottle_On" label="Throttling payload requests."/>
  <suffix name="CacheThrottle_Off" label="Control group."/>
  <affected-histogram name="DiskCache.TotalIOTime"/>
  <affected-histogram name="PLT.Abandoned"/>
  <affected-histogram name="PLT.BeginToFinish"/>
  <affected-histogram name="PLT.BeginToFinish_HistoryLoad"/>
  <affected-histogram name="PLT.BeginToFinish_LinkLoadCacheOnly"/>
  <affected-histogram name="PLT.BeginToFinish_LinkLoadNormal"/>
  <affected-histogram name="PLT.BeginToFinish_LinkLoadReload"/>
  <affected-histogram name="PLT.BeginToFinish_LinkLoadStaleOk"/>
  <affected-histogram name="PLT.BeginToFinish_NormalLoad"/>
  <affected-histogram name="PLT.BeginToFinish_Reload"/>
</histogram_suffixes>

<histogram_suffixes name="CanvasRequestedImageMimeTypeFunctions">
  <suffix name="toDataURL" label="Image formats passed to canvas.toDataURL"/>
  <suffix name="toBlobCallback"
      label="Image formats passed to canvas.toBlob (callback)"/>
  <affected-histogram name="Canvas.RequestedImageMimeTypes"/>
</histogram_suffixes>

<histogram_suffixes name="CertificateTypeAlgorithms" separator=".">
  <owner>rsleevi@chromium.org</owner>
  <suffix name="DH" label="DH"/>
  <suffix name="DSA" label="DSA"/>
  <suffix name="ECDH" label="ECDH"/>
  <suffix name="ECDSA" label="ECDSA"/>
  <suffix name="RSA" label="RSA"/>
  <suffix name="Unknown" label="SPKI unrecognized by cert library"/>
  <suffix name="Unsupported" label="Un-histogrammed type - please fix"/>
  <affected-histogram name="CertificateType.BR.Intermediate"/>
  <affected-histogram name="CertificateType.BR.Leaf"/>
  <affected-histogram name="CertificateType.BR.Root"/>
  <affected-histogram name="CertificateType.NonBR.Intermediate"/>
  <affected-histogram name="CertificateType.NonBR.Leaf"/>
  <affected-histogram name="CertificateType.NonBR.Root"/>
  <affected-histogram name="CertificateType2.BR.Intermediate"/>
  <affected-histogram name="CertificateType2.BR.Leaf"/>
  <affected-histogram name="CertificateType2.BR.Root"/>
  <affected-histogram name="CertificateType2.NonBR.Intermediate"/>
  <affected-histogram name="CertificateType2.NonBR.Leaf"/>
  <affected-histogram name="CertificateType2.NonBR.Root"/>
</histogram_suffixes>

<histogram_suffixes name="CertificateTypeBRValidity" separator=".">
  <obsolete>
    Deprecated as of 8/2013. This histogram only considered the leaf certificate
    expiry date as a proxy for whether a certificate was in-scope for the BRs,
    but did not consider the issuance date. As some CAs have issued long-lived
    certs prior to the BRs, this disproportionately reported those certs as
    being subject to the BRs, but non-compliant, when in reality they're not
    subject.
  </obsolete>
  <suffix name="BR"
      label="The *leaf* certificate of the chain expires after 2013-12-31,
             meaning that it should be in scope for the Baseline
             Requirement's key size requirements"/>
  <suffix name="NonBR"
      label="The *leaf* certificate of the chain expires on or before
             2013-12-31"/>
  <affected-histogram name="CertificateType"/>
</histogram_suffixes>

<histogram_suffixes name="CertificateTypeBRValidity2" separator=".">
  <suffix name="BR"
      label="The *leaf* certificate of the chain expires after 2013-12-31 and
             was issued on or after 2012-07-01, as judged by the notBefore,
             meaning that it should be in scope for the Baseline
             Requirement's key size requirements"/>
  <suffix name="NonBR"
      label="The *leaf* certificate of the chain expires on or before
             2013-12-31 or was issued before 2012-07-01"/>
  <affected-histogram name="CertificateType2"/>
</histogram_suffixes>

<histogram_suffixes name="CertificateTypeChainPosition" separator=".">
  <suffix name="Intermediate" label="Intermediate's SPKI"/>
  <suffix name="Leaf" label="Leaf's SPKI"/>
  <suffix name="Root" label="Root's SPKI"/>
  <affected-histogram name="CertificateType.BR"/>
  <affected-histogram name="CertificateType.NonBR"/>
  <affected-histogram name="CertificateType2.BR"/>
  <affected-histogram name="CertificateType2.NonBR"/>
</histogram_suffixes>

<histogram_suffixes name="CertIo" separator="">
  <obsolete>
    Deprecated as of 01/2016. CertCacheTrial has been removed.
    https://crbug.com/522312
  </obsolete>
  <suffix name="ReadSuccess"
      label="success rate of reading a certificate from the disk cache"/>
  <suffix name="ReadFailure"
      label="failure rate of reading a certificate from the disk cache"/>
  <suffix name="WriteSuccess"
      label="success rate of writing a certificate to the disk cache"/>
  <suffix name="WriteFailure"
      label="failure rate of writing a certificate to the disk cache"/>
  <affected-histogram name="DiskBasedCertCache.CertIo"/>
</histogram_suffixes>

<histogram_suffixes name="ChromeActivityName" separator=".">
  <suffix name="ChromeTabbedActivity"
      label="Activity launched in TABBED mode on Android"/>
  <suffix name="DocumentActivity"
      label="Activity launched in DOCUMENT mode (Tabs and apps together) on
             Android"/>
  <suffix name="CustomTabActivity"
      label="Activity launched with a CUSTOM TAB on Android"/>
  <affected-histogram name="MobileStartup.ToolbarFirstDrawTime"/>
  <affected-histogram name="MobileStartup.ToolbarFirstFocusTime"/>
</histogram_suffixes>

<histogram_suffixes name="ChromeOS.MachineIdRegen.AgeSeconds">
  <suffix name="Network"/>
  <suffix name="Periodic"/>
  <suffix name="Unknown"/>
  <affected-histogram name="ChromeOS.MachineIdRegen.AgeSeconds"/>
</histogram_suffixes>

<histogram_suffixes name="Clients.StaleWhileRevalidateExperiment" separator="."
    ordering="prefix">
  <suffix name="Clients.StaleWhileRevalidateExperiment"
      label="Timing was recorded on one of the domains of focus for
             stale-while-revalidate"/>
  <affected-histogram name="PageLoad.Timing2.NavigationToFirstLayout"/>
  <affected-histogram name="PageLoad.Timing2.NavigationToFirstTextPaint"/>
  <affected-histogram name="PageLoad.Timing2.NavigationToLoadEventFired"/>
</histogram_suffixes>

<histogram_suffixes name="ClockResolution" separator=".">
  <suffix name="HighResolutionClock"
      label="base::TimeTicks::IsHighResolution() is true for this measurement"/>
  <suffix name="LowResolutionClock"
      label="base::TimeTicks::IsHighResolution() is false for this
             measurement"/>
  <affected-histogram name="PageLoad.Timing2.NavigationToFirstContentfulPaint"/>
</histogram_suffixes>

<histogram_suffixes name="CloudPrintRequests" separator=".">
  <suffix name="Register" label="Register request"/>
  <suffix name="UpdatePrinter" label="Update printer request"/>
  <suffix name="DownloadData" label="Download data request"/>
  <suffix name="Other" label="Other requests"/>
  <affected-histogram name="CloudPrint.UrlFetcherDownloadSize"/>
  <affected-histogram name="CloudPrint.UrlFetcherRequestTime"/>
  <affected-histogram name="CloudPrint.UrlFetcherRetries"/>
  <affected-histogram name="CloudPrint.UrlFetcherUploadSize"/>
</histogram_suffixes>

<histogram_suffixes name="CompositorTimingHistoryProcess" separator="."
    ordering="prefix">
  <suffix name="Browser"/>
  <suffix name="Renderer"/>
  <affected-histogram name="Scheduling.ActivateDuration"/>
  <affected-histogram name="Scheduling.BeginMainFrameToCommitDuration"/>
  <affected-histogram name="Scheduling.CommitToReadyToActivateDuration"/>
  <affected-histogram name="Scheduling.DrawDuration"/>
  <affected-histogram name="Scheduling.MainAndImplFrameTimeDelta"/>
  <affected-histogram name="Scheduling.PrepareTilesDuration"/>
  <affected-histogram name="Scheduling.SwapToAckLatency"/>
</histogram_suffixes>

<histogram_suffixes name="CompositorTimingHistoryProcess2" separator="."
    ordering="prefix">
  <suffix name="Browser"/>
  <suffix name="Renderer"/>
  <affected-histogram name="Scheduling.BeginMainFrameIntervalCritical"/>
  <affected-histogram name="Scheduling.BeginMainFrameIntervalNotCritical"/>
  <affected-histogram name="Scheduling.BeginMainFrameQueueDurationCritical"/>
  <affected-histogram name="Scheduling.BeginMainFrameQueueDurationNotCritical"/>
  <affected-histogram name="Scheduling.BeginMainFrameStartToCommitDuration"/>
  <affected-histogram name="Scheduling.CommitInterval"/>
  <affected-histogram name="Scheduling.DrawInterval"/>
</histogram_suffixes>

<histogram_suffixes name="CompositorTimingHistorySubcategory" separator=".">
  <suffix name="NotUsedForEstimate"
      label="Samples that don't affect estimates. For example, because we are
             coming out of idle."/>
  <suffix name="Overestimate"
      label="Tracks when the compositor's estimates were too high and by how
             much."/>
  <suffix name="Underestimate"
      label="Tracks when the compositor's estimates were too low and by how
             much."/>
  <affected-histogram name="Scheduling.Browser.ActivateDuration"/>
  <affected-histogram name="Scheduling.Browser.BeginMainFrameToCommitDuration"/>
  <affected-histogram
      name="Scheduling.Browser.CommitToReadyToActivateDuration"/>
  <affected-histogram name="Scheduling.Browser.DrawDuration"/>
  <affected-histogram name="Scheduling.Browser.PrepareTilesDuration"/>
  <affected-histogram name="Scheduling.Renderer.ActivateDuration"/>
  <affected-histogram
      name="Scheduling.Renderer.BeginMainFrameToCommitDuration"/>
  <affected-histogram
      name="Scheduling.Renderer.CommitToReadyToActivateDuration"/>
  <affected-histogram name="Scheduling.Renderer.DrawDuration"/>
  <affected-histogram name="Scheduling.Renderer.PrepareTilesDuration"/>
</histogram_suffixes>

<histogram_suffixes name="CompositorTimingHistorySubcategory2" separator=".">
  <suffix name="NotUsedForEstimate"
      label="Samples that don't affect estimates. For example, because we are
             coming out of idle."/>
  <affected-histogram
      name="Scheduling.Browser.BeginMainFrameQueueDurationCritical"/>
  <affected-histogram
      name="Scheduling.Browser.BeginMainFrameQueueDurationNotCritical"/>
  <affected-histogram
      name="Scheduling.Browser.BeginMainFrameStartToCommitDuration"/>
  <affected-histogram
      name="Scheduling.Renderer.BeginMainFrameQueueDurationCritical"/>
  <affected-histogram
      name="Scheduling.Renderer.BeginMainFrameQueueDurationNotCritical"/>
  <affected-histogram
      name="Scheduling.Renderer.BeginMainFrameStartToCommitDuration"/>
</histogram_suffixes>

<histogram_suffixes name="ConnCountImpact">
  <suffix name="conn_count_16" label="with 16 persistent connections per host"/>
  <suffix name="conn_count_4" label="with 4 persistent connections per host"/>
  <suffix name="conn_count_5" label="with 5 persistent connections per host"/>
  <suffix name="conn_count_6" label="with 6 persistent connections per host"/>
  <suffix name="conn_count_7" label="with 7 persistent connections per host"/>
  <suffix name="conn_count_8" label="with 8 persistent connections per host"/>
  <suffix name="conn_count_9" label="with 9 persistent connections per host"/>
  <affected-histogram name="Net.Transaction_Connected_New"/>
  <affected-histogram name="PLT.Abandoned"/>
  <affected-histogram name="PLT.BeginToFinish_LinkLoadNormal"/>
  <affected-histogram name="PLT.BeginToFinish_LinkLoadReload"/>
  <affected-histogram name="PLT.BeginToFinish_LinkLoadStaleOk"/>
  <affected-histogram name="PLT.BeginToFinish_NormalLoad"/>
  <affected-histogram name="Renderer4.Abandoned"/>
  <affected-histogram name="Renderer4.BeginToFinish_LinkLoadNormal"/>
  <affected-histogram name="Renderer4.BeginToFinish_LinkLoadReload"/>
  <affected-histogram name="Renderer4.BeginToFinish_LinkLoadStaleOk"/>
  <affected-histogram name="Renderer4.BeginToFinish_NormalLoad"/>
</histogram_suffixes>

<histogram_suffixes name="ConnectivityDiagnostics" separator=".">
  <suffix name="0" label="INTERNET_DISCONNECTED"/>
  <suffix name="1" label="CHROME_VERSION"/>
  <suffix name="2" label="CHROMEOS_VERSION"/>
  <suffix name="3" label="DNS_RESOLVER_PRESENT"/>
  <suffix name="4" label="CAPTIVE_PORTAL_DNS"/>
  <suffix name="5" label="CAPTIVE_PORTAL_HTTP"/>
  <suffix name="6" label="FIREWALL_80"/>
  <suffix name="7" label="FIREWALL_443"/>
  <suffix name="8" label="RESOLVER_LATENCY"/>
  <suffix name="9" label="HTTP_LATENCY"/>
  <suffix name="10" label="NIC_SIGNAL_STRENGTH"/>
  <suffix name="11" label="PING_GATEWAY"/>
  <affected-histogram name="ConnectivityDiagnostics.TestVerdict"/>
  <affected-histogram name="ConnectivityDiagnostics.TimeTaken"/>
</histogram_suffixes>

<histogram_suffixes name="ConnnectBackupJobs">
  <suffix name="ConnectBackupJobsEnabled"/>
  <suffix name="ConnectBackupJobsDisabled"/>
  <affected-histogram name="Net.PreconnectUtilization"/>
  <affected-histogram name="Net.PreconnectUtilization2"/>
  <affected-histogram name="PLT.Abandoned"/>
  <affected-histogram name="PLT.BeginToFinish_LinkLoadNormal"/>
  <affected-histogram name="PLT.BeginToFinish_LinkLoadReload"/>
  <affected-histogram name="PLT.BeginToFinish_NormalLoad"/>
  <affected-histogram name="PLT.LoadType"/>
</histogram_suffixes>

<histogram_suffixes name="ContentSettingsType" separator=".">
  <suffix name="app-banner" label="App banner exceptions"/>
  <suffix name="auto-select-certificate" label="Auto-select cert exceptions"/>
  <suffix name="automatic-downloads" label="Automatic downloads exceptions"/>
  <suffix name="background-sync" label="Background sync exceptions"/>
  <suffix name="bluetooth-guard" label="Bluetooth guard exceptions"/>
  <suffix name="cookies" label="Cookies exceptions"/>
  <suffix name="durable-storage" label="Durable Storage Exceptions"/>
  <suffix name="fullscreen" label="Fullscreen exceptions"/>
  <suffix name="geolocation" label="Geolocation exceptions"/>
  <suffix name="images" label="Images exceptions"/>
  <suffix name="javascript" label="JavaScript exceptions"/>
  <suffix name="keygen" label="Keygen exceptions"/>
  <suffix name="media-stream-camera" label="Camera exceptions"/>
  <suffix name="media-stream-mic" label="Microphone exceptions"/>
  <suffix name="midi-sysex" label="Midi exceptions"/>
  <suffix name="mixed-script" label="Mixed script exceptions"/>
  <suffix name="mouselock" label="Mouse lock exceptions"/>
  <suffix name="notifications" label="Notification exceptions"/>
  <suffix name="plugins" label="Plugins exceptions"/>
  <suffix name="popups" label="Popups exceptions"/>
  <suffix name="ppapi-broker" label="Ppapi broker exceptions"/>
  <suffix name="protected-media-identifier" label="Protected media exceptions"/>
  <suffix name="protocol-handler" label="Protocol handler exceptions"/>
  <suffix name="push-messaging" label="Push messaging exceptions"/>
  <suffix name="site-engagement" label="Site engagement exceptions"/>
  <suffix name="ssl-cert-decisions" label="SSL cert decisions exceptions"/>
  <suffix name="usb-chooser-data" label="USB chooser data exceptions"/>
  <affected-histogram name="ContentSettings.Exceptions"/>
</histogram_suffixes>

<histogram_suffixes name="ContextMenuType" separator=".">
  <suffix name="Link"
      label="The context menu was shown for a (non-image) link"/>
  <suffix name="Image"
      label="The context menu was shown for a (non-link) image"/>
  <suffix name="ImageLink"
      label="The context menu was shown for an image which is also a link"/>
  <suffix name="Video" label="The context menu was shown for a video"/>
  <suffix name="SelectedText"
      label="The context menu was shown for a text selection"/>
  <affected-histogram name="ContextMenu.SelectedOption"/>
</histogram_suffixes>

<histogram_suffixes name="ContextType" separator=".">
  <suffix name="BrowserCompositor"
      label="A BrowserCompositor GPU command buffer context"/>
  <suffix name="BrowserMainThread"
      label="A BrowserMainThread GPU command buffer context"/>
  <suffix name="RenderCompositor"
      label="A RenderCompositor GPU command buffer context"/>
  <suffix name="RenderMainThread"
      label="A RenderMainThread GPU command buffer context"/>
  <suffix name="RenderWorker"
      label="A RenderWorker GPU command buffer context"/>
  <suffix name="Unknown" label="A GPU command buffer context of unknown type"/>
  <suffix name="VideoAccelerator"
      label="A VideoAccelerator GPU command buffer context"/>
  <suffix name="VideoCapture"
      label="A VideoCapture GPU command buffer context"/>
  <suffix name="WebGL" label="A WebGL GPU command buffer context"/>
  <suffix name="Media" label="The media worker command buffer context"/>
  <affected-histogram name="GPU.ContextLost"/>
</histogram_suffixes>

<histogram_suffixes name="CreditCardScanSuccess">
  <suffix name="Completed" label="Credit card scan completed."/>
  <suffix name="Cancelled" label="Credit card scan was cancelled."/>
  <affected-histogram name="Autofill.ScanCreditCard.Duration"/>
</histogram_suffixes>

<histogram_suffixes name="CrosFirstRunStep" separator="">
  <suffix name="AppList"/>
  <suffix name="Tray"/>
  <suffix name="Help"/>
  <affected-histogram name="CrosFirstRun.TimeSpentOnStep"/>
</histogram_suffixes>

<histogram_suffixes name="CurrentTabState">
  <suffix name="Initial" label="For a tab that is just being created."/>
  <suffix name="Active"
      label="For an active tab which is shown foreground in a browser window."/>
  <suffix name="Inactive"
      label="For tabs in background and not shown to user."/>
  <suffix name="Detached"
      label="For a tab that is being dragged by user to outside of the
             browser window."/>
  <affected-histogram name="Tabs.StateTransfer.Target"/>
  <affected-histogram name="Tabs.StateTransfer.Time"/>
</histogram_suffixes>

<histogram_suffixes name="DataReductionProxy">
  <suffix name="DataReductionProxy"
      label="Only page loads through the data reduction proxy are considered."/>
  <suffix name="HTTPS_DataReductionProxy"
      label="Only page loads through the data reduction proxy through an HTTP
             tunnel for HTTPS origins are considered."/>
  <affected-histogram name="PLT.NT_Connect"/>
  <affected-histogram name="PLT.NT_DelayBeforeConnect"/>
  <affected-histogram name="PLT.NT_DelayBeforeDomainLookup"/>
  <affected-histogram name="PLT.NT_DelayBeforeDomLoading"/>
  <affected-histogram name="PLT.NT_DelayBeforeFetch"/>
  <affected-histogram name="PLT.NT_DelayBeforeFetchRedirect"/>
  <affected-histogram name="PLT.NT_DelayBeforeLoadEvent"/>
  <affected-histogram name="PLT.NT_DelayBeforeRequest"/>
  <affected-histogram name="PLT.NT_DomainLookup"/>
  <affected-histogram name="PLT.NT_DomContentLoaded"/>
  <affected-histogram name="PLT.NT_DomInteractive"/>
  <affected-histogram name="PLT.NT_DomLoading"/>
  <affected-histogram name="PLT.NT_LoadEvent"/>
  <affected-histogram name="PLT.NT_Redirect"/>
  <affected-histogram name="PLT.NT_Request"/>
  <affected-histogram name="PLT.NT_Response"/>
  <affected-histogram name="PLT.PT_BeginToCommit"/>
  <affected-histogram name="PLT.PT_BeginToFinish"/>
  <affected-histogram name="PLT.PT_BeginToFinishDoc"/>
  <affected-histogram name="PLT.PT_CommitToFinish"/>
  <affected-histogram name="PLT.PT_CommitToFinishDoc"/>
  <affected-histogram name="PLT.PT_FinishDocToFinish"/>
  <affected-histogram name="PLT.PT_RequestToCommit"/>
  <affected-histogram name="PLT.PT_RequestToDomContentLoaded"/>
  <affected-histogram name="PLT.PT_RequestToFinish"/>
  <affected-histogram name="PLT.PT_RequestToFinishDoc"/>
  <affected-histogram name="PLT.PT_RequestToStart"/>
  <affected-histogram name="PLT.PT_StartToCommit"/>
  <affected-histogram name="PLT.PT_StartToFinish"/>
</histogram_suffixes>

<histogram_suffixes
    name="DataReductionProxy.LoFi.Accuracy.DifferentRecordingIntervals"
    separator=".">
  <suffix name="15"
      label="Recorded approximately 15 seconds after navigation start"/>
  <suffix name="30"
      label="Recorded approximately 30 seconds after navigation start"/>
  <suffix name="60"
      label="Recorded approximately 60 seconds after navigation start"/>
  <affected-histogram name="DataReductionProxy.LoFi.Accuracy"/>
</histogram_suffixes>

<histogram_suffixes name="DataReductionProxy.MimeType">
  <suffix name="Application" label="Application mime-type"/>
  <suffix name="Unknown"
      label="Deprecated. Moved to UnknownMime in M46. Unknown mime-type"/>
  <suffix name="UnknownMime" label="Unknown mime-type"/>
  <suffix name="Video" label="Video mime-type"/>
  <affected-histogram name="Net.DailyContentLength"/>
  <affected-histogram name="Net.DailyContentLength_DataReductionProxyEnabled"/>
  <affected-histogram name="Net.DailyContentLength_ViaDataReductionProxy"/>
  <affected-histogram name="Net.DailyOriginalContentLength"/>
  <affected-histogram
      name="Net.DailyOriginalContentLength_DataReductionProxyEnabled"/>
  <affected-histogram
      name="Net.DailyOriginalContentLength_ViaDataReductionProxy"/>
</histogram_suffixes>

<histogram_suffixes name="DataReductionProxy.NetworkTypes" separator=".">
  <suffix name="Unknown" label="On Unknown network"/>
  <suffix name="Ethernet" label="On Ethernet network"/>
  <suffix name="WiFi" label="On WiFi network"/>
  <suffix name="2G" label="On 2G network"/>
  <suffix name="3G" label="On 3G Network"/>
  <suffix name="4G" label="On 4G network"/>
  <suffix name="None" label="With no detected network"/>
  <suffix name="Bluetooth" label="On Bluetooth network"/>
  <affected-histogram name="DataReductionProxy.AutoLoFiAccuracy"/>
  <affected-histogram name="DataReductionProxy.AutoLoFiRequestHeaderState"/>
  <affected-histogram name="DataReductionProxy.LoFi.Accuracy.15"/>
  <affected-histogram name="DataReductionProxy.LoFi.Accuracy.30"/>
  <affected-histogram name="DataReductionProxy.LoFi.Accuracy.60"/>
  <affected-histogram name="DataReductionProxy.LoFi.ImplicitOptOutAction"/>
</histogram_suffixes>

<histogram_suffixes name="DataReductionProxy.WithValidOCL.LoFiOn" separator=".">
  <suffix name="LoFiOn"
      label="Only page loads through the data reduction proxy with Lo-Fi On
             are considered."/>
  <affected-histogram name="Net.HttpContentLengthDifferenceWithValidOCL"/>
  <affected-histogram name="Net.HttpContentLengthWithValidOCL"/>
  <affected-histogram name="Net.HttpOriginalContentLengthWithValidOCL"/>
</histogram_suffixes>

<histogram_suffixes name="DataReductionProxy_AutoLoFi" separator="_">
  <suffix name="DataReductionProxy_AutoLoFiOn"
      label="Only page loads through the data reduction proxy with auto LoFi
             enabled are considered."/>
  <suffix name="DataReductionProxy_AutoLoFiOff"
      label="Only page loads through the data reduction proxy with auto LoFi
             disabled are considered."/>
  <suffix name="HTTPS_DataReductionProxy_AutoLoFiOn"
      label="Only page loads through the data reduction proxy through an HTTP
             tunnel for HTTPS origins with auto LoFi enabled are considered."/>
  <suffix name="HTTPS_DataReductionProxy_AutoLoFiOff"
      label="Only page loads through the data reduction proxy through an HTTP
             tunnel for HTTPS origins with auto LoFi disabled are considered."/>
  <affected-histogram name="PLT.BeginToFirstPaint"/>
  <affected-histogram name="PLT.PT_BeginToFinish"/>
  <affected-histogram name="PLT.PT_CommitToFinish"/>
  <affected-histogram name="PLT.PT_RequestToDomContentLoaded"/>
  <affected-histogram name="PLT.PT_RequestToFinish"/>
  <affected-histogram name="PLT.PT_StartToFinish"/>
</histogram_suffixes>

<histogram_suffixes name="DataReductionProxy_TamperingFingerprints"
    separator="_">
  <suffix name="ChromeProxy"
      label="for each carrier, number of tamperings detected on Chrome-Proxy
             header"/>
  <suffix name="ContentLength"
      label="for each carrier, total number of responses whose Content-Length
             header has been tampered with"/>
  <suffix name="ContentLength_CSS"
      label="for each carrier, number of CSS responses whose Content-Length
             header has been tampered with"/>
  <suffix name="ContentLength_Image"
      label="for each carrier, number of image responses whose Content-Length
             header has been tampered with"/>
  <suffix name="ContentLength_Image_GIF"
      label="for each carrier, number of GIF image responses whose
             Content-Length header has been tampered with"/>
  <suffix name="ContentLength_Image_JPG"
      label="for each carrier, number of JPEG image responses whose
             Content-Length header has been tampered with"/>
  <suffix name="ContentLength_Image_PNG"
      label="for each carrier, number of PNG image responses whose
             Content-Length header has been tampered with"/>
  <suffix name="ContentLength_Image_WEBP"
      label="for each carrier, number of WebP image responses whose
             Content-Length header has been tampered with"/>
  <suffix name="ContentLength_Video"
      label="for each carrier, number of video responses whose Content-Length
             header has been tampered with"/>
  <suffix name="CompressionRatio_Image"
      label="the histogram of compression ratio of images"/>
  <suffix name="CompressionRatio_Image_GIF"
      label="the histogram of compression ratio of GIF images"/>
  <suffix name="CompressionRatio_Image_JPG"
      label="the histogram of compression ratio of JPG images"/>
  <suffix name="CompressionRatio_Image_PNG"
      label="the histogram of compression ratio of PNG images"/>
  <suffix name="CompressionRatio_Image_WEBP"
      label="the histogram of compression ratio of WEBP images"/>
  <suffix name="CompressionRatio_Video"
      label="the histogram of compression ratio of videos"/>
  <suffix name="CompressionRatio_Image_0_10KB"
      label="the histogram of compression ratio of images whose sizes are in
             the range of 0-10KB"/>
  <suffix name="CompressionRatio_Image_10_100KB"
      label="the histogram of compression ratio of images whose sizes are in
             the range of 10-100KB"/>
  <suffix name="CompressionRatio_Image_100_500KB"
      label="the histogram of compression ratio of images whose sizes are in
             the range of 100-500KB"/>
  <suffix name="CompressionRatio_Image_500KB"
      label="the histogram of compression ratio of images whose sizes are
             larger than 500KB"/>
  <suffix name="ContentLength_JS"
      label="for each carrier, number of JavaScript responses whose
             Content-Length header has been tampered with"/>
  <suffix name="ContentLength_Other"
      label="for each carrier, number of other type responses whose
             Content-Length header has been tampered with"/>
  <suffix name="OtherHeaders"
      label="for each carrier, number of tamperings detected on a list of
             headers"/>
  <suffix name="Via"
      label="for each carrier, number of tamperings detected on Via header"/>
  <suffix name="Via_Missing"
      label="for each carrier, number of responses whose data reduction
             proxy's Via header is missing"/>
  <affected-histogram name="DataReductionProxy.HeaderTamperedHTTP"/>
  <affected-histogram name="DataReductionProxy.HeaderTamperedHTTPS"/>
</histogram_suffixes>

<histogram_suffixes name="DataReductionProxy_TamperingTotal" separator="_">
  <suffix name="Total" label="total number of tamperings detected"/>
  <affected-histogram name="DataReductionProxy.HeaderTamperDetectionHTTP"/>
  <affected-histogram name="DataReductionProxy.HeaderTamperDetectionHTTP_CSS"/>
  <affected-histogram
      name="DataReductionProxy.HeaderTamperDetectionHTTP_Image"/>
  <affected-histogram
      name="DataReductionProxy.HeaderTamperDetectionHTTP_Image_0_10KB"/>
  <affected-histogram
      name="DataReductionProxy.HeaderTamperDetectionHTTP_Image_100_500KB"/>
  <affected-histogram
      name="DataReductionProxy.HeaderTamperDetectionHTTP_Image_10_100KB"/>
  <affected-histogram
      name="DataReductionProxy.HeaderTamperDetectionHTTP_Image_500KB"/>
  <affected-histogram
      name="DataReductionProxy.HeaderTamperDetectionHTTP_Image_GIF"/>
  <affected-histogram
      name="DataReductionProxy.HeaderTamperDetectionHTTP_Image_JPG"/>
  <affected-histogram
      name="DataReductionProxy.HeaderTamperDetectionHTTP_Image_PNG"/>
  <affected-histogram
      name="DataReductionProxy.HeaderTamperDetectionHTTP_Image_WEBP"/>
  <affected-histogram name="DataReductionProxy.HeaderTamperDetectionHTTP_JS"/>
  <affected-histogram
      name="DataReductionProxy.HeaderTamperDetectionHTTP_Video"/>
  <affected-histogram name="DataReductionProxy.HeaderTamperDetectionHTTPS"/>
  <affected-histogram name="DataReductionProxy.HeaderTamperDetectionHTTPS_CSS"/>
  <affected-histogram
      name="DataReductionProxy.HeaderTamperDetectionHTTPS_Image"/>
  <affected-histogram
      name="DataReductionProxy.HeaderTamperDetectionHTTPS_Image_0_10KB"/>
  <affected-histogram
      name="DataReductionProxy.HeaderTamperDetectionHTTPS_Image_100_500KB"/>
  <affected-histogram
      name="DataReductionProxy.HeaderTamperDetectionHTTPS_Image_10_100KB"/>
  <affected-histogram
      name="DataReductionProxy.HeaderTamperDetectionHTTPS_Image_500KB"/>
  <affected-histogram
      name="DataReductionProxy.HeaderTamperDetectionHTTPS_Image_GIF"/>
  <affected-histogram
      name="DataReductionProxy.HeaderTamperDetectionHTTPS_Image_JPG"/>
  <affected-histogram
      name="DataReductionProxy.HeaderTamperDetectionHTTPS_Image_PNG"/>
  <affected-histogram
      name="DataReductionProxy.HeaderTamperDetectionHTTPS_Image_WEBP"/>
  <affected-histogram name="DataReductionProxy.HeaderTamperDetectionHTTPS_JS"/>
  <affected-histogram
      name="DataReductionProxy.HeaderTamperDetectionHTTPS_Video"/>
  <affected-histogram name="DataReductionProxy.HeaderTamperDetectionPassHTTP"/>
  <affected-histogram name="DataReductionProxy.HeaderTamperDetectionPassHTTPS"/>
  <affected-histogram name="DataReductionProxy.HeaderTamperedHTTP_ChromeProxy"/>
  <affected-histogram
      name="DataReductionProxy.HeaderTamperedHTTP_ContentLength"/>
  <affected-histogram
      name="DataReductionProxy.HeaderTamperedHTTP_ContentLength_CSS"/>
  <affected-histogram
      name="DataReductionProxy.HeaderTamperedHTTP_ContentLength_Image"/>
  <affected-histogram
      name="DataReductionProxy.HeaderTamperedHTTP_ContentLength_JS"/>
  <affected-histogram
      name="DataReductionProxy.HeaderTamperedHTTP_ContentLength_Other"/>
  <affected-histogram
      name="DataReductionProxy.HeaderTamperedHTTP_OtherHeaders"/>
  <affected-histogram name="DataReductionProxy.HeaderTamperedHTTP_Via"/>
  <affected-histogram name="DataReductionProxy.HeaderTamperedHTTP_Via_Missing"/>
  <affected-histogram
      name="DataReductionProxy.HeaderTamperedHTTPS_ChromeProxy"/>
  <affected-histogram
      name="DataReductionProxy.HeaderTamperedHTTPS_ContentLength"/>
  <affected-histogram
      name="DataReductionProxy.HeaderTamperedHTTPS_ContentLength_CSS"/>
  <affected-histogram
      name="DataReductionProxy.HeaderTamperedHTTPS_ContentLength_Image"/>
  <affected-histogram
      name="DataReductionProxy.HeaderTamperedHTTPS_ContentLength_JS"/>
  <affected-histogram
      name="DataReductionProxy.HeaderTamperedHTTPS_ContentLength_Other"/>
  <affected-histogram
      name="DataReductionProxy.HeaderTamperedHTTPS_OtherHeaders"/>
  <affected-histogram name="DataReductionProxy.HeaderTamperedHTTPS_Via"/>
  <affected-histogram
      name="DataReductionProxy.HeaderTamperedHTTPS_Via_Missing"/>
</histogram_suffixes>

<histogram_suffixes name="DataReductionProxy_TotalCounts" separator="_">
  <suffix name="JS" label="JavaScript count"/>
  <suffix name="CSS" label="CSS count"/>
  <suffix name="Image" label="image count"/>
  <suffix name="Image_GIF" label="GIF image count"/>
  <suffix name="Image_JPG" label="JPG image count"/>
  <suffix name="Image_PNG" label="PNG image count"/>
  <suffix name="Image_WEBP" label="WEBP image count"/>
  <suffix name="Video" label="Video count"/>
  <suffix name="Image_0_10KB" label="image counts of 0-10KB"/>
  <suffix name="Image_10_100KB" label="image counts of 10-100KB"/>
  <suffix name="Image_100_500KB" label="image counts of 100-500KB"/>
  <suffix name="Image_500KB" label="image counts of more than 500KB"/>
  <affected-histogram name="DataReductionProxy.HeaderTamperDetectionHTTP"/>
  <affected-histogram name="DataReductionProxy.HeaderTamperDetectionHTTPS"/>
</histogram_suffixes>

<histogram_suffixes name="DataReductionProxyBypassedBytes" separator=".">
  <suffix name="SSL" label="Bypass due to SSL"/>
  <suffix name="LocalBypassRules"
      label="Bypass due to client-side bypass rules or because the proxy
             config was missing at the client"/>
  <suffix name="ManagedProxyConfig"
      label="Deprecated 1/9/2014 (M-41). Bypass due to a managed config"/>
  <suffix name="ProxyOverridden"
      label="Bypass due to another proxy taking precedence"/>
  <suffix name="Current" label="Bypass due to explicit instruction"/>
  <suffix name="CurrentAudioVideo"
      label="Bypass due to explicit instruction for audio/video"/>
  <suffix name="CurrentApplicationOctetStream"
      label="Bypass due to explicit instruction for
             'application/octet-stream' content type"/>
  <suffix name="ShortAll" label="Short bypass"/>
  <suffix name="ShortTriggeringRequest"
      label="Triggering request short bypass"/>
  <suffix name="ShortAudioVideo"
      label="Triggering request short bypass due to audio/video"/>
  <suffix name="MediumAll" label="Medium bypass"/>
  <suffix name="MediumTriggeringRequest"
      label="Triggering request medium bypass"/>
  <suffix name="LongAll" label="Long bypass"/>
  <suffix name="LongTriggering_Request" label="Triggering request long bypass"/>
  <suffix name="MissingViaHeader4xx"
      label="Bypass due to a 4xx missing via header"/>
  <suffix name="MissingViaHeaderOther"
      label="Bypass due to other missing via header"/>
  <suffix name="Malformed407"
      label="Bypass due to 407 response from proxy without a challenge"/>
  <suffix name="Status500HttpInternalServerError"
      label="Bypass due to internal server error"/>
  <suffix name="Status502HttpBadGateway"
      label="Bypass because the request URI was too long"/>
  <suffix name="Status503HttpServiceUnavailable"
      label="Bypass due to a 503 response"/>
  <suffix name="NetworkErrorTimedOut" label="Bypass due to network timeout"/>
  <suffix name="NetworkErrorProxyConnectionFailed"
      label="Bypass due to failed proxy connection"/>
  <suffix name="NetworkErrorProxyCertificateInvalid"
      label="Bypass due to invalid proxy certificate"/>
  <suffix name="NetworkErrorOther" label="Bypass due to any network error"/>
  <affected-histogram name="DataReductionProxy.BypassedBytes"/>
</histogram_suffixes>

<histogram_suffixes name="DataReductionProxyConfigFetchLostBytes" separator="_">
  <obsolete>
    Removed in Feb 2016.
  </obsolete>
  <suffix name="0" label="Bucket 0 for gathering multiple data points."/>
  <suffix name="1" label="Bucket 1 for gathering multiple data points."/>
  <suffix name="2" label="Bucket 2 for gathering multiple data points."/>
  <suffix name="3" label="Bucket 3 for gathering multiple data points."/>
  <suffix name="4" label="Bucket 4 for gathering multiple data points."/>
  <suffix name="5" label="Bucket 5 for gathering multiple data points."/>
  <suffix name="6" label="Bucket 6 for gathering multiple data points."/>
  <suffix name="7" label="Bucket 7 for gathering multiple data points."/>
  <suffix name="8" label="Bucket 8 for gathering multiple data points."/>
  <suffix name="9" label="Bucket 9 for gathering multiple data points."/>
  <affected-histogram name="DataReductionProxy.ConfigFetchLostBytesCL"/>
  <affected-histogram name="DataReductionProxy.ConfigFetchLostBytesDiff"/>
  <affected-histogram name="DataReductionProxy.ConfigFetchLostBytesOCL"/>
</histogram_suffixes>

<histogram_suffixes name="DataReductionProxyMissingViaHeaderBytes"
    separator=".">
  <suffix name="4xx" label="Response with 4xx response code"/>
  <suffix name="Other" label="Other response"/>
  <affected-histogram name="DataReductionProxy.MissingViaHeader.Bytes"/>
</histogram_suffixes>

<histogram_suffixes name="DataReductionProxyMissingViaHeaderResponseCode"
    separator=".">
  <suffix name="Primary" label="Primary data reduction proxy"/>
  <suffix name="Fallback" label="Fallback data reduction proxy"/>
  <affected-histogram name="DataReductionProxy.MissingViaHeader.ResponseCode"/>
</histogram_suffixes>

<histogram_suffixes name="DataReductionProxyRequestCompletionErrorCodes"
    separator=".">
  <suffix name="Primary" label="Primary data reduction proxy"/>
  <suffix name="Fallback" label="Fallback data reduction proxy"/>
  <affected-histogram name="DataReductionProxy.RequestCompletionErrorCodes"/>
</histogram_suffixes>

<histogram_suffixes
    name="DataReductionProxyRequestCompletionErrorCodesMainFrame" separator=".">
  <suffix name="Primary" label="Primary data reduction proxy"/>
  <suffix name="Fallback" label="Fallback data reduction proxy"/>
  <affected-histogram
      name="DataReductionProxy.RequestCompletionErrorCodes.MainFrame"/>
</histogram_suffixes>

<histogram_suffixes name="DataUsageReportSubmissionBytes" separator=".">
  <suffix name="Failed"
      label="Platform external data use observer reported the submission as
             failed"/>
  <suffix name="Lost"
      label="Lost before it could be submitted to platform external data use
             observer"/>
  <suffix name="Successful"
      label="Platform external data use observer reported the submission as
             successful"/>
  <suffix name="TimedOut"
      label="Submission of the report to the platform external data use
             observer timed out"/>
  <affected-histogram name="DataUsage.ReportSubmission.Bytes"/>
</histogram_suffixes>

<histogram_suffixes name="DataUse.Dimensions" separator=".">
  <suffix name="Upstream.Background.NotCellular"/>
  <suffix name="Upstream.Background.Cellular"/>
  <suffix name="Upstream.Foreground.NotCellular"/>
  <suffix name="Upstream.Foreground.Cellular"/>
  <suffix name="Downstream.Background.NotCellular"/>
  <suffix name="Downstream.Background.Cellular"/>
  <suffix name="Downstream.Foreground.NotCellular"/>
  <suffix name="Downstream.Foreground.Cellular"/>
  <affected-histogram name="DataUse.MessageSize.AllServices"/>
  <affected-histogram name="DataUse.TrafficSize.System"/>
  <affected-histogram name="DataUse.TrafficSize.User"/>
</histogram_suffixes>

<histogram_suffixes name="DataUse.Service.Types" separator=".">
  <suffix name="NotTagged"/>
  <suffix name="Suggestions"/>
  <suffix name="Translate"/>
  <suffix name="Sync"/>
  <suffix name="Omnibox"/>
  <suffix name="Invalidation"/>
  <suffix name="Rappor"/>
  <suffix name="Variations"/>
  <suffix name="UMA"/>
  <suffix name="DomainReliability"/>
  <suffix name="ProfileDownloader"/>
  <suffix name="GoogleURLTracker"/>
  <suffix name="Autofill"/>
  <suffix name="Policy"/>
  <suffix name="SpellChecker"/>
  <affected-histogram name="DataUse.MessageSize"/>
</histogram_suffixes>

<histogram_suffixes name="DefaultAppsExperiment">
  <suffix name="NoDefaultApps" label="User's without default apps installed"/>
  <suffix name="WithDefaultApps" label="User's with default apps installed"/>
  <affected-histogram name="Extensions.AppTabLaunchType"/>
  <affected-histogram name="Extensions.ExtensionInstalled"/>
  <affected-histogram name="Extensions.ExtensionUninstalled"/>
  <affected-histogram name="NewTabPage.DefaultPageType"/>
  <affected-histogram name="NewTabPage.SelectedPageType"/>
  <affected-histogram name="NtpHandler.AttachShownPageType"/>
  <affected-histogram name="NtpHandler.SelectedShownPageType"/>
  <affected-histogram name="Profile.AppCount"/>
</histogram_suffixes>

<histogram_suffixes name="DefaultPinnedApps">
  <obsolete>
    Deprecated as of 12/2013. Default pinned apps trial is finished.
  </obsolete>
  <suffix name="Existing"/>
  <suffix name="Control"/>
  <suffix name="Alternate"/>
  <affected-histogram name="Cros.ClickOnShelf"/>
</histogram_suffixes>

<histogram_suffixes name="DiskUsagePerUserCount" separator=".">
  <suffix name="1User" label="Only 1 user exists on device."/>
  <suffix name="2Users" label="2 users exist on device."/>
  <suffix name="3Users" label="3 users exist on device."/>
  <suffix name="4Users" label="4 users exist on device."/>
  <suffix name="5Users" label="5 users exist on device."/>
  <suffix name="6Users" label="6 users exist on device."/>
  <suffix name="7OrMoreUsers" label="7 or more users exist on device."/>
  <affected-histogram name="Platform.DiskUsage.Cache_Avg"/>
  <affected-histogram name="Platform.DiskUsage.Cache_Max"/>
  <affected-histogram name="Platform.DiskUsage.Downloads_Avg"/>
  <affected-histogram name="Platform.DiskUsage.Downloads_Max"/>
  <affected-histogram name="Platform.DiskUsage.GCache_Avg"/>
  <affected-histogram name="Platform.DiskUsage.GCache_Max"/>
  <affected-histogram name="Platform.DiskUsage.LeastUsedAccountDays"/>
</histogram_suffixes>

<histogram_suffixes name="DNS.HostCache.UpdateStale.AddressListDeltaType">
  <suffix name="Identical" label="Same addresses, in the same order."/>
  <suffix name="Reordered" label="Same addresses, in a different order."/>
  <suffix name="Overlap" label="Some same addreses, some different."/>
  <suffix name="Disjoint" label="All different addresses."/>
  <affected-histogram name="DNS.HostCache.UpdateStale.ExpiredBy"/>
  <affected-histogram name="DNS.HostCache.UpdateStale.NetworkChanges"/>
</histogram_suffixes>

<histogram_suffixes name="DnsImpact2">
  <suffix name="disabled_prefetch"
      label="DNS pre-resolving is disabled in these clients"/>
  <suffix name="disabled_prefetch_4_connections"
      label="DNS pre-resolving is disabled in these clients, and a maximum of
             4 connections per host was allowed"/>
  <suffix name="enabled_prefetch_4_connections"
      label="a maximum of 4 connections per host was allowed in these clients"/>
  <suffix name="parallel_4_prefetch"
      label="DNS pre-resolving was only doing 4 concurrent speculative
             resolutions in this test"/>
  <affected-histogram name="Net.Dns_Resolution_And_TCP_Connection_Latency"/>
  <affected-histogram name="Net.TCP_Connection_Idle_Sockets">
    <with-suffix name="disabled_prefetch"/>
    <with-suffix name="disabled_prefetch_4_connections"/>
    <with-suffix name="enabled_prefetch_4_connections"/>
  </affected-histogram>
  <affected-histogram name="Net.TCP_Connection_Latency"/>
  <affected-histogram name="Net.Transaction_Connected"/>
  <affected-histogram name="Net.Transaction_Connected_New"/>
  <affected-histogram name="Net.Transaction_Connected_New_b"/>
  <affected-histogram name="Net.Transaction_Connected_Under_10"/>
  <affected-histogram name="Net.Transaction_Latency"/>
  <affected-histogram name="Net.Transaction_Latency_b"/>
  <affected-histogram name="Net.Transaction_Latency_Total"/>
  <affected-histogram name="Net.Transaction_Latency_Total_New_Connection"/>
  <affected-histogram
      name="Net.Transaction_Latency_Total_New_Connection_Under_10"/>
  <affected-histogram name="Net.Transaction_Latency_Total_Under_10"/>
  <affected-histogram name="Net.Transaction_Latency_Under_10"/>
  <affected-histogram name="PLT.RequestToFinish">
    <with-suffix name="parallel_4_prefetch"/>
  </affected-histogram>
</histogram_suffixes>

<histogram_suffixes name="DnsImpact3">
  <suffix name="disabled_prefetch" label="with DNS pre-resolving disabled"/>
  <suffix name="parallel_4_prefetch"
      label="with only 4 concurrent speculative resolutions done in parallel"/>
  <affected-histogram name="Net.Transaction_Connected_New">
    <with-suffix name="disabled_prefetch"/>
  </affected-histogram>
  <affected-histogram name="Renderer2.FinishDocToFinish"/>
  <affected-histogram name="Renderer2.RequestToFinish"/>
  <affected-histogram name="Renderer2.RequestToFinish_L">
    <with-suffix name="disabled_prefetch"/>
  </affected-histogram>
  <affected-histogram name="Renderer2.RequestToFirstLayout"/>
  <affected-histogram name="Renderer2.RequestToStart"/>
  <affected-histogram name="Renderer2.StartToFinish"/>
  <affected-histogram name="Renderer2.StartToFinishDoc"/>
  <affected-histogram name="Renderer2.StartToFirstLayout"/>
  <affected-histogram name="Renderer4.RequestToFinish">
    <with-suffix name="parallel_4_prefetch"/>
  </affected-histogram>
  <affected-histogram name="Renderer4.StartToFinish">
    <with-suffix name="parallel_4_prefetch"/>
  </affected-histogram>
</histogram_suffixes>

<histogram_suffixes name="DnsParallelism">
  <suffix name="parallel_10"
      label="with only 10 concurrent resolutions done in parallel"/>
  <suffix name="parallel_14"
      label="with only 14 concurrent resolutions done in parallel"/>
  <suffix name="parallel_20"
      label="with only 20 concurrent resolutions done in parallel"/>
  <suffix name="parallel_6"
      label="with only 6 concurrent resolutions done in parallel"/>
  <suffix name="parallel_7"
      label="with only 7 concurrent resolutions done in parallel"/>
  <suffix name="parallel_8"
      label="with only 8 concurrent resolutions done in parallel"/>
  <suffix name="parallel_9"
      label="with only 9 concurrent resolutions done in parallel"/>
  <suffix name="parallel_default"
      label="with the default number of concurrent resolutions done in
             parallel"/>
  <affected-histogram name="DNS.ResolveCategory"/>
  <affected-histogram name="DNS.ResolveSuccess"/>
</histogram_suffixes>

<histogram_suffixes name="DocsSpecific" separator="">
  <suffix name="Docs" label="Only for docs.google.com"/>
  <affected-histogram name="appcache.MainResourceResponseRetrieval"/>
  <affected-histogram name="appcache.SubResourceResponseRetrieval"/>
  <affected-histogram name="appcache.UpdateJobResult"/>
  <affected-histogram name="appcache.UpdateProgressAtPointOfFaliure"/>
  <affected-histogram name="appcache.UpdateWasOffOriginAtPointOfFailure"/>
  <affected-histogram name="appcache.UpdateWasStalledAtPointOfFailure"/>
</histogram_suffixes>

<histogram_suffixes name="DomainGoogle" separator="">
  <suffix name="Google" label="only Google cookies are recorded."/>
  <suffix name="Other" label="only NON-Google cookies are recorded."/>
  <affected-histogram name="Cookie.ReinstatedCookies"/>
</histogram_suffixes>

<histogram_suffixes name="DownloadDangerPromptResponse" separator=".">
  <suffix name="Proceed"
      label="The user clicked through and recovered the download."/>
  <suffix name="Shown" label="The user was shown the prompt."/>
  <affected-histogram name="Download.DownloadDangerPrompt.DangerousContent"/>
  <affected-histogram name="Download.DownloadDangerPrompt.DangerousFile"/>
  <affected-histogram name="Download.DownloadDangerPrompt.DangerousHost"/>
  <affected-histogram name="Download.DownloadDangerPrompt.DangerousURL"/>
  <affected-histogram name="Download.DownloadDangerPrompt.PotentiallyUnwanted"/>
  <affected-histogram name="Download.DownloadDangerPrompt.UncommonContent"/>
</histogram_suffixes>

<histogram_suffixes name="DownloadDangerPromptType" separator=".">
  <suffix name="DangerousContent" label="File marked DANGEROUS_CONTENT"/>
  <suffix name="DangerousFile" label="File marked DANGEROUS_FILE"/>
  <suffix name="DangerousHost" label="File marked DANGEROUS_HOST"/>
  <suffix name="DangerousURL" label="File marked DANGEROUS_URL"/>
  <suffix name="PotentiallyUnwanted" label="File marked POTENTIALLY_UNWANTED"/>
  <suffix name="UncommonContent" label="File marked UNCOMMON_CONTENT"/>
  <affected-histogram name="Download.DownloadDangerPrompt"/>
</histogram_suffixes>

<histogram_suffixes name="EmePromise" separator=".">
  <suffix name="CloseSession" label="CloseSession promises only."/>
  <suffix name="CreateSession" label="CreateSession promises only.">
    <obsolete>
      Replaced by GenerateRequest.
    </obsolete>
  </suffix>
  <suffix name="GenerateRequest" label="GenerateRequest promises only."/>
  <suffix name="LoadSession" label="LoadSession promises only."/>
  <suffix name="RemoveSession" label="RemoveSession promises only."/>
  <suffix name="UpdateSession" label="UpdateSession promises only."/>
  <affected-histogram name="Media.EME.ClearKey"/>
  <affected-histogram name="Media.EME.Unknown"/>
  <affected-histogram name="Media.EME.Widevine"/>
</histogram_suffixes>

<histogram_suffixes name="EngagementScoreBuckets">
  <owner>calamity@chromium.org</owner>
  <suffix name="0"/>
  <suffix name="10"/>
  <suffix name="20"/>
  <suffix name="30"/>
  <suffix name="40"/>
  <suffix name="50"/>
  <suffix name="60"/>
  <suffix name="70"/>
  <suffix name="80"/>
  <suffix name="90"/>
  <suffix name="100"/>
  <affected-histogram name="SiteEngagementService.EngagementScoreBucket"/>
</histogram_suffixes>

<histogram_suffixes name="ExitFunnels" separator=".">
  <suffix name="BackgroundOff"/>
  <suffix name="BackgroundOn"/>
  <suffix name="BrowserExit"/>
  <suffix name="EndSession"/>
  <suffix name="ES_CloseApp"/>
  <suffix name="ES_Critical"/>
  <suffix name="ES_Logoff"/>
  <suffix name="ES_Other"/>
  <suffix name="HungBrowserTerminated"/>
  <suffix name="KillProcess"/>
  <suffix name="LastWindowClose"/>
  <suffix name="MessageWindowHung"/>
  <suffix name="MessageWindowNotFound"/>
  <suffix name="MessageWindowVanished"/>
  <suffix name="ProcessSingletonIsShuttingDown"/>
  <suffix name="RendezvousToHungBrowser"/>
  <suffix name="SessionEnding"/>
  <suffix name="TraybarEndSession"/>
  <suffix name="TraybarExit"/>
  <suffix name="WatcherEndSession"/>
  <suffix name="WatcherLogoff"/>
  <suffix name="WatcherQueryEndSession"/>
  <suffix name="WM_ENDSESSION"/>
  <affected-histogram name="Stability.ExitFunnel"/>
</histogram_suffixes>

<histogram_suffixes name="ExtensionsDatabaseOpen" separator=".">
  <suffix name="Rules" label="Rules backing stores"/>
  <suffix name="Settings" label="Settings backing stores"/>
  <suffix name="State" label="State backing stores"/>
  <affected-histogram name="Extensions.Database.Open"/>
</histogram_suffixes>

<histogram_suffixes name="ExtensionsDatabaseRestore" separator=".">
  <suffix name="Rules" label="Rules backing stores"/>
  <suffix name="Settings" label="Settings backing stores"/>
  <suffix name="State" label="State backing stores"/>
  <affected-histogram name="Extensions.Database.Restore"/>
</histogram_suffixes>

<histogram_suffixes name="ExternalExtensionEvent" separator="">
  <suffix name="NonWebstore"
      label="sideloaded extensions that don't update from the webstore"/>
  <suffix name="Webstore"
      label="sideloaded extensions that update from the webstore"/>
  <affected-histogram name="Extensions.ExternalExtensionEvent"/>
</histogram_suffixes>

<histogram_suffixes name="FieldPredictionNoSubmission" separator=".">
  <suffix name="NoSubmission" label="No observed submission."/>
  <affected-histogram
      name="Autofill.NumberOfEditedAutofilledFieldsAtSubmission"/>
  <affected-histogram name="Autofill.Quality.HeuristicType"/>
  <affected-histogram name="Autofill.Quality.HeuristicType.ByFieldType"/>
  <affected-histogram name="Autofill.Quality.PredictedType"/>
  <affected-histogram name="Autofill.Quality.PredictedType.ByFieldType"/>
  <affected-histogram name="Autofill.Quality.ServerType"/>
  <affected-histogram name="Autofill.Quality.ServerType.ByFieldType"/>
</histogram_suffixes>

<histogram_suffixes name="FileBrowserLoad" separator=".">
  <suffix name="Construct"
      label="Time spent constructing the main Javascript object."/>
  <suffix name="DOM" label="Time to initialize DOM."/>
  <suffix name="FileSystem"
      label="Deprecated as of 9/2013. Time to get access to the local file
             system."/>
  <suffix name="Parse" label="Time to parse Javascript and CSS."/>
  <suffix name="Roots" label="Time to enumerate file system roots."/>
  <suffix name="Total"
      label="Total load time from the moment the Javascript started parsing
             till the moment the empty file list is displayed."/>
  <affected-histogram name="FileBrowser.Load"/>
</histogram_suffixes>

<histogram_suffixes name="FirstPacketSplit">
  <suffix name="first_packet_intact"
      label="with GET/POST headers often using only 1 packet"/>
  <suffix name="first_packet_split"
      label="with all GET/POST requests using at least 2 packets"/>
  <affected-histogram name="Renderer4.Abandoned"/>
  <affected-histogram name="Renderer4.BeginToFinish_LinkLoadNormal"/>
  <affected-histogram name="Renderer4.BeginToFinish_LinkLoadReload"/>
  <affected-histogram name="Renderer4.BeginToFinish_LinkLoadStaleOk"/>
  <affected-histogram name="Renderer4.BeginToFinish_NormalLoad"/>
  <affected-histogram name="Renderer4.LoadType"/>
</histogram_suffixes>

<histogram_suffixes name="FromGWS">
  <suffix name="FromGWS"
      label="Only page loads that are a result of a navigation from a web
             search are considered."/>
  <affected-histogram name="PLT.BeginToFinish"/>
  <affected-histogram name="PLT.BeginToFinishDoc"/>
  <affected-histogram name="PLT.BeginToFirstPaint"/>
  <affected-histogram name="PLT.CommitToFirstPaint"/>
  <affected-histogram name="PLT.PT_BeginToCommit"/>
  <affected-histogram name="PLT.PT_BeginToFinish"/>
  <affected-histogram name="PLT.PT_BeginToFinishDoc"/>
  <affected-histogram name="PLT.PT_CommitToFinish"/>
  <affected-histogram name="PLT.PT_CommitToFinishDoc"/>
  <affected-histogram name="PLT.PT_RequestToCommit"/>
  <affected-histogram name="PLT.PT_RequestToDomContentLoaded"/>
  <affected-histogram name="PLT.PT_RequestToFinish"/>
  <affected-histogram name="PLT.PT_RequestToFinishDoc"/>
  <affected-histogram name="PLT.PT_RequestToStart"/>
  <affected-histogram name="PLT.PT_StartToCommit"/>
  <affected-histogram name="PLT.PT_StartToFinish"/>
</histogram_suffixes>

<histogram_suffixes name="GLApisWithErrorReporting">
  <suffix name="TexImage2D" label="All GL APIs that allocate a 2D texture."/>
  <suffix name="TexImage3D" label="All GL APIs that allocate a 3D texture."/>
  <affected-histogram name="GPU.Error"/>
</histogram_suffixes>

<histogram_suffixes name="GlobalSdch">
  <suffix name="global_disable_sdch" label="with SDCH completely disabled"/>
  <suffix name="global_enable_sdch"
      label="with SDCH support for applicable sites"/>
  <affected-histogram name="PLT.BeginToFinish_LinkLoad"/>
  <affected-histogram name="PLT.BeginToFinish_LinkLoadCacheOnly"/>
  <affected-histogram name="PLT.BeginToFinish_LinkLoadNormal"/>
  <affected-histogram name="PLT.BeginToFinish_LinkLoadReload"/>
  <affected-histogram name="PLT.BeginToFinish_LinkLoadStaleOk"/>
  <affected-histogram name="PLT.BeginToFinish_NormalLoad"/>
  <affected-histogram name="PLT.BeginToFinishDoc_LinkLoadCacheOnly"/>
  <affected-histogram name="PLT.BeginToFinishDoc_LinkLoadNormal"/>
  <affected-histogram name="PLT.BeginToFinishDoc_LinkLoadReload"/>
  <affected-histogram name="PLT.BeginToFinishDoc_LinkLoadStaleOk"/>
  <affected-histogram name="PLT.BeginToFinishDoc_NormalLoad"/>
  <affected-histogram name="PLT.LoadType"/>
  <affected-histogram name="PLT.RequestToFinish"/>
  <affected-histogram name="PLT.StartToFinish"/>
  <affected-histogram name="Renderer4.BeginToFinish_LinkLoad"/>
  <affected-histogram name="Renderer4.BeginToFinish_LinkLoadCacheOnly"/>
  <affected-histogram name="Renderer4.BeginToFinish_LinkLoadNormal"/>
  <affected-histogram name="Renderer4.BeginToFinish_LinkLoadReload"/>
  <affected-histogram name="Renderer4.BeginToFinish_LinkLoadStaleOk"/>
  <affected-histogram name="Renderer4.BeginToFinish_NormalLoad"/>
  <affected-histogram name="Renderer4.BeginToFinishDoc_LinkLoad"/>
  <affected-histogram name="Renderer4.BeginToFinishDoc_LinkLoadCacheOnly"/>
  <affected-histogram name="Renderer4.BeginToFinishDoc_LinkLoadNormal"/>
  <affected-histogram name="Renderer4.BeginToFinishDoc_LinkLoadReload"/>
  <affected-histogram name="Renderer4.BeginToFinishDoc_LinkLoadStaleOk"/>
  <affected-histogram name="Renderer4.BeginToFinishDoc_NormalLoad"/>
  <affected-histogram name="Renderer4.LoadType"/>
  <affected-histogram name="Renderer4.RequestToFinish"/>
  <affected-histogram name="Renderer4.StartToFinish"/>
</histogram_suffixes>

<histogram_suffixes name="GoogleSearchVariations">
  <owner>kmadhusu@chromium.org</owner>
  <suffix name="_PrerenderDisabled"
      label="Counts number of Google searches from various access points in
             the Android Chrome browser when prerendering is disabled via
             &quot;Bandwidth management&quot; settings or &quot;Privacy&quot;
             settings. Only recorded on Android."/>
  <suffix name="_PrerenderEnabled"
      label="Counts number of Google searches from various access points in
             the Android Chrome browser when prerendering is enabled via
             &quot;Bandwidth management&quot; settings or &quot;Privacy&quot;
             settings. Only recorded on Android."/>
  <affected-histogram name="GoogleSearch.AccessPoint"/>
</histogram_suffixes>

<histogram_suffixes name="GWSChromeJointExperiment">
  <suffix name="Experiment1"
      label="Only page loads that are a result of a navigation from a web
             search under a specific web search/Chrome joint experiment.
             Unused at this moment."/>
  <suffix name="Experiment2"
      label="Only page loads that are a result of a navigation from a web
             search under a specific web search/Chrome joint experiment.
             Unused at this moment."/>
  <suffix name="Experiment3"
      label="Only page loads that are a result of a navigation from a web
             search under a specific web search/Chrome joint experiment.
             Unused at this moment."/>
  <suffix name="Experiment4"
      label="Only page loads that are a result of a navigation from a web
             search under a specific web search/Chrome joint experiment.
             Unused at this moment."/>
  <suffix name="Experiment5"
      label="Only page loads that are a result of a navigation from a web
             search under a specific web search/Chrome joint experiment.
             Unused at this moment."/>
  <suffix name="Experiment6"
      label="Only page loads that are a result of a navigation from a web
             search under a specific web search/Chrome joint experiment.
             Unused at this moment."/>
  <suffix name="Experiment7"
      label="Only page loads that are a result of a navigation from a web
             search under a specific web search/Chrome joint experiment.
             Unused at this moment."/>
  <suffix name="Experiment8"
      label="Only page loads that are a result of a navigation from a web
             search under a specific web search/Chrome joint experiment.
             Unused at this moment."/>
  <suffix name="Experiment9"
      label="Only page loads that are a result of a navigation from a web
             search under a specific web search/Chrome joint experiment.
             Unused at this moment."/>
  <suffix name="Experiment10"
      label="Only page loads that are a result of a navigation from a web
             search under a specific web search/Chrome joint experiment.
             Unused at this moment."/>
  <suffix name="Experiment11"
      label="Only page loads that are a result of a navigation from a web
             search under a specific web search/Chrome joint experiment.
             Unused at this moment."/>
  <suffix name="Experiment12"
      label="Only page loads that are a result of a navigation from a web
             search under a specific web search/Chrome joint experiment.
             Unused at this moment."/>
  <suffix name="Experiment13"
      label="Only page loads that are a result of a navigation from a web
             search under a specific web search/Chrome joint experiment.
             Unused at this moment."/>
  <suffix name="Experiment14"
      label="Only page loads that are a result of a navigation from a web
             search under a specific web search/Chrome joint experiment.
             Unused at this moment."/>
  <suffix name="Experiment15"
      label="Only page loads that are a result of a navigation from a web
             search under a specific web search/Chrome joint experiment.
             Unused at this moment."/>
  <suffix name="Experiment16"
      label="Only page loads that are a result of a navigation from a web
             search under a specific web search/Chrome joint experiment.
             Unused at this moment."/>
  <suffix name="Experiment17"
      label="Only page loads that are a result of a navigation from a web
             search under a specific web search/Chrome joint experiment.
             Unused at this moment."/>
  <suffix name="Experiment18"
      label="Only page loads that are a result of a navigation from a web
             search under a specific web search/Chrome joint experiment.
             Unused at this moment."/>
  <suffix name="Experiment19"
      label="Only page loads that are a result of a navigation from a web
             search under a specific web search/Chrome joint experiment.
             Unused at this moment."/>
  <suffix name="Experiment20"
      label="Only page loads that are a result of a navigation from a web
             search under a specific web search/Chrome joint experiment.
             Unused at this moment."/>
  <affected-histogram name="PLT.BeginToFinish_FromGWS"/>
  <affected-histogram name="PLT.BeginToFinish_NoPreview"/>
  <affected-histogram name="PLT.BeginToFinish_Preview"/>
  <affected-histogram name="PLT.BeginToFinish_WithPreview"/>
  <affected-histogram name="PLT.BeginToFinishDoc_FromGWS"/>
  <affected-histogram name="PLT.BeginToFinishDoc_NoPreview"/>
  <affected-histogram name="PLT.BeginToFinishDoc_Preview"/>
  <affected-histogram name="PLT.BeginToFinishDoc_WithPreview"/>
  <affected-histogram name="PLT.BeginToFirstPaint_FromGWS"/>
  <affected-histogram name="PLT.BeginToFirstPaint_NoPreview"/>
  <affected-histogram name="PLT.BeginToFirstPaint_Preview"/>
  <affected-histogram name="PLT.BeginToFirstPaint_WithPreview"/>
  <affected-histogram name="PLT.CommitToFirstPaint_FromGWS"/>
  <affected-histogram name="PLT.CommitToFirstPaint_NoPreview"/>
  <affected-histogram name="PLT.CommitToFirstPaint_Preview"/>
  <affected-histogram name="PLT.CommitToFirstPaint_WithPreview"/>
  <affected-histogram name="PLT.PT_BeginToCommit_FromGWS"/>
  <affected-histogram name="PLT.PT_BeginToCommit_NoPreview"/>
  <affected-histogram name="PLT.PT_BeginToCommit_Preview"/>
  <affected-histogram name="PLT.PT_BeginToCommit_WithPreview"/>
  <affected-histogram name="PLT.PT_BeginToFinish_FromGWS"/>
  <affected-histogram name="PLT.PT_BeginToFinish_NoPreview"/>
  <affected-histogram name="PLT.PT_BeginToFinish_Preview"/>
  <affected-histogram name="PLT.PT_BeginToFinish_WithPreview"/>
  <affected-histogram name="PLT.PT_BeginToFinishDoc_FromGWS"/>
  <affected-histogram name="PLT.PT_BeginToFinishDoc_NoPreview"/>
  <affected-histogram name="PLT.PT_BeginToFinishDoc_Preview"/>
  <affected-histogram name="PLT.PT_BeginToFinishDoc_WithPreview"/>
  <affected-histogram name="PLT.PT_CommitToFinish_FromGWS"/>
  <affected-histogram name="PLT.PT_CommitToFinish_NoPreview"/>
  <affected-histogram name="PLT.PT_CommitToFinish_Preview"/>
  <affected-histogram name="PLT.PT_CommitToFinish_WithPreview"/>
  <affected-histogram name="PLT.PT_CommitToFinishDoc_FromGWS"/>
  <affected-histogram name="PLT.PT_CommitToFinishDoc_NoPreview"/>
  <affected-histogram name="PLT.PT_CommitToFinishDoc_Preview"/>
  <affected-histogram name="PLT.PT_CommitToFinishDoc_WithPreview"/>
  <affected-histogram name="PLT.PT_RequestToCommit_FromGWS"/>
  <affected-histogram name="PLT.PT_RequestToCommit_NoPreview"/>
  <affected-histogram name="PLT.PT_RequestToCommit_Preview"/>
  <affected-histogram name="PLT.PT_RequestToCommit_WithPreview"/>
  <affected-histogram name="PLT.PT_RequestToDomContentLoaded_FromGWS"/>
  <affected-histogram name="PLT.PT_RequestToDomContentLoaded_NoPreview"/>
  <affected-histogram name="PLT.PT_RequestToDomContentLoaded_Preview"/>
  <affected-histogram name="PLT.PT_RequestToDomContentLoaded_WithPreview"/>
  <affected-histogram name="PLT.PT_RequestToFinish_FromGWS"/>
  <affected-histogram name="PLT.PT_RequestToFinish_NoPreview"/>
  <affected-histogram name="PLT.PT_RequestToFinish_Preview"/>
  <affected-histogram name="PLT.PT_RequestToFinish_WithPreview"/>
  <affected-histogram name="PLT.PT_RequestToFinishDoc_FromGWS"/>
  <affected-histogram name="PLT.PT_RequestToFinishDoc_NoPreview"/>
  <affected-histogram name="PLT.PT_RequestToFinishDoc_Preview"/>
  <affected-histogram name="PLT.PT_RequestToFinishDoc_WithPreview"/>
  <affected-histogram name="PLT.PT_RequestToStart_FromGWS"/>
  <affected-histogram name="PLT.PT_RequestToStart_NoPreview"/>
  <affected-histogram name="PLT.PT_RequestToStart_Preview"/>
  <affected-histogram name="PLT.PT_RequestToStart_WithPreview"/>
  <affected-histogram name="PLT.PT_StartToCommit_FromGWS"/>
  <affected-histogram name="PLT.PT_StartToCommit_NoPreview"/>
  <affected-histogram name="PLT.PT_StartToCommit_Preview"/>
  <affected-histogram name="PLT.PT_StartToCommit_WithPreview"/>
  <affected-histogram name="PLT.PT_StartToFinish_FromGWS"/>
  <affected-histogram name="PLT.PT_StartToFinish_NoPreview"/>
  <affected-histogram name="PLT.PT_StartToFinish_Preview"/>
  <affected-histogram name="PLT.PT_StartToFinish_WithPreview"/>
</histogram_suffixes>

<histogram_suffixes name="HandshakeConfirmed" separator=".">
  <suffix name="HandshakeConfirmed" label="the handshake was confirmed"/>
  <affected-histogram name="Net.QuicSession.ConnectionCloseErrorCodeClient"/>
  <affected-histogram name="Net.QuicSession.ConnectionCloseErrorCodeServer"/>
</histogram_suffixes>

<histogram_suffixes name="HistogramInconsistencies" separator=".">
  <suffix name="Cronet" label="Cronet histograms."/>
  <affected-histogram name="Histogram.InconsistenciesBrowser"/>
  <affected-histogram name="Histogram.InconsistenciesBrowserUnique"/>
  <affected-histogram name="Histogram.InconsistentSnapshotBrowser"/>
</histogram_suffixes>

<histogram_suffixes name="HttpCacheAccessToDoneCases" separator=".">
  <suffix name="SentRequest" label="The request was sent over the network."/>
  <suffix name="Used"
      label="A cache entry was used without using the network."/>
  <affected-histogram name="HttpCache.AccessToDone"/>
</histogram_suffixes>

<histogram_suffixes name="HttpCacheBeforeSendCases" separator=".">
  <suffix name="CantConditionalize"
      label="A cached resource existed but no conditional request could be
             written."/>
  <suffix name="NotCached" label="There was no pre-existing disk cache entry."/>
  <suffix name="Updated"
      label="A cached resource existed and was updated over the network."/>
  <suffix name="Validated"
      label="A cached resource existed and was validated over the network."/>
  <affected-histogram name="HttpCache.BeforeSend"/>
  <affected-histogram name="HttpCache.PercentBeforeSend"/>
</histogram_suffixes>

<histogram_suffixes name="HttpPipeliningCompatibility">
  <suffix name="disable_test" label="Do nothing"/>
  <suffix name="enable_test" label="Test connection for HTTP pipelining"/>
  <affected-histogram name="NetConnectivity.Pipeline.0.NetworkError"/>
  <affected-histogram name="NetConnectivity.Pipeline.0.ResponseCode"/>
  <affected-histogram name="NetConnectivity.Pipeline.0.Status"/>
  <affected-histogram name="NetConnectivity.Pipeline.1.NetworkError"/>
  <affected-histogram name="NetConnectivity.Pipeline.1.ResponseCode"/>
  <affected-histogram name="NetConnectivity.Pipeline.1.Status"/>
  <affected-histogram name="NetConnectivity.Pipeline.2.NetworkError"/>
  <affected-histogram name="NetConnectivity.Pipeline.2.ResponseCode"/>
  <affected-histogram name="NetConnectivity.Pipeline.2.Status"/>
  <affected-histogram name="NetConnectivity.Pipeline.3.NetworkError"/>
  <affected-histogram name="NetConnectivity.Pipeline.3.ResponseCode"/>
  <affected-histogram name="NetConnectivity.Pipeline.3.Status"/>
  <affected-histogram name="NetConnectivity.Pipeline.4.NetworkError"/>
  <affected-histogram name="NetConnectivity.Pipeline.4.ResponseCode"/>
  <affected-histogram name="NetConnectivity.Pipeline.4.Status"/>
  <affected-histogram name="NetConnectivity.Pipeline.5.NetworkError"/>
  <affected-histogram name="NetConnectivity.Pipeline.5.ResponseCode"/>
  <affected-histogram name="NetConnectivity.Pipeline.5.Status"/>
  <affected-histogram name="NetConnectivity.Pipeline.AllHTTP11"/>
  <affected-histogram name="NetConnectivity.Pipeline.CanarySuccess"/>
  <affected-histogram name="NetConnectivity.Pipeline.Depth"/>
  <affected-histogram name="NetConnectivity.Pipeline.Success"/>
</histogram_suffixes>

<histogram_suffixes name="IdleSktToImpact">
  <suffix name="idle_timeout_5"
      label="with 5-second unused idle socket timeout"/>
  <suffix name="idle_timeout_10"
      label="with 10-second unused idle socket timeout"/>
  <suffix name="idle_timeout_20"
      label="with 20-second unused idle socket timeout"/>
  <suffix name="idle_timeout_60"
      label="with 60-second unused idle socket timeout"/>
  <affected-histogram name="PLT.Abandoned"/>
  <affected-histogram name="PLT.BeginToFinish_LinkLoadNormal"/>
  <affected-histogram name="PLT.BeginToFinish_LinkLoadReload"/>
  <affected-histogram name="PLT.BeginToFinish_LinkLoadStaleOk"/>
  <affected-histogram name="PLT.BeginToFinish_NormalLoad"/>
</histogram_suffixes>

<histogram_suffixes name="IMEAutoCorrect" separator=".">
  <suffix name="AC0" label="The auto-correct level is 0"/>
  <suffix name="AC1" label="The auto-correct level is 1"/>
  <suffix name="AC2" label="The auto-correct level is 2"/>
  <affected-histogram name="InputMethod.Commit.Index.FR"/>
  <affected-histogram name="InputMethod.Commit.Index.US"/>
  <affected-histogram name="InputMethod.Commit.Type.FR"/>
  <affected-histogram name="InputMethod.Commit.Type.US"/>
</histogram_suffixes>

<histogram_suffixes name="IMEMajorNames" separator=".">
  <suffix name="US" label="The US keyboard input method"/>
  <suffix name="FR" label="The French keyboard input method"/>
  <suffix name="Pinyin" label="The Chinse Pinyin input method"/>
  <affected-histogram name="InputMethod.Commit.Index"/>
  <affected-histogram name="InputMethod.Commit.Type"/>
</histogram_suffixes>

<histogram_suffixes name="IMEVKLatency" separator=".">
  <suffix name="BackgroundSettingsFetched"
      label="Latency for settings fetched from background"/>
  <suffix name="HtmlLoaded" label="Latency for the page is loaded"/>
  <suffix name="KeyboardCreated" label="Latency for the keyboard is created"/>
  <suffix name="KeyboardShown" label="Latency for keyboard is shown"/>
  <suffix name="KeysetLoaded" label="Latency for keyset config is loaded"/>
  <suffix name="LayoutLoaded" label="Latency for layout definition is loaded"/>
  <affected-histogram name="InputMethod.VirtualKeyboard.InitLatency"/>
</histogram_suffixes>

<histogram_suffixes name="ImmediatePageLoadTiming" separator=".">
  <suffix name="Immediate"
      label="Logged immediately after a timing update is observed, unlike
             normal PageLoad timing metrics, which are logged at the end of a
             page's lifetime. This metric is temporary and is intended to
             help loading-dev to understand the impact of logging metrics at
             the end of a page load."/>
  <affected-histogram name="PageLoad.Timing2.NavigationToFirstContentfulPaint"/>
  <obsolete>
    Deprecated by PageLoad.PaintTiming.NavigationToFirstContentfulPaint.
  </obsolete>
</histogram_suffixes>

<histogram_suffixes name="IndexedDBLevelDBErrnoMethods" separator=".">
  <suffix name="NewLogger" label="ChromiumEnv::NewLogger"/>
  <suffix name="NewSequentialFile" label="ChromiumEnv::NewSequentialFile"/>
  <suffix name="NewWritableFile" label="ChromiumEnv::NewWritableFile"/>
  <suffix name="SequentialFileRead" label="ChromiumSequentialFile::Read"/>
  <suffix name="SequentialFileSkip" label="ChromiumSequentialFile::Skip"/>
  <suffix name="WritableFileAppend" label="ChromiumWritableFile::Append"/>
  <suffix name="WritableFileClose" label="ChromiumWritableFile::Close"/>
  <suffix name="WritableFileFlush" label="ChromiumWritableFile::Flush"/>
  <suffix name="WritableFileSync" label="ChromiumWritableFile::Sync"/>
  <suffix name="WritableFileSyncParent"
      label="ChromiumWritableFile::SyncParent"/>
  <affected-histogram name="WebCore.IndexedDB.LevelDBOpenErrors.Errno"/>
  <affected-histogram name="WebCore.IndexedDB.LevelDBReadErrors.Errno"/>
  <affected-histogram name="WebCore.IndexedDB.LevelDBWriteErrors.Errno"/>
</histogram_suffixes>

<histogram_suffixes name="IndexedDBLevelDBPFEMethods" separator=".">
  <suffix name="CreateDir" label="ChromiumEnv::CreateDir"/>
  <suffix name="DeleteDir" label="ChromiumEnv::DeleteDir"/>
  <suffix name="DeleteFile" label="ChromiumEnv::DeleteFile"/>
  <suffix name="GetChildren" label="ChromiumEnv::GetChildren"/>
  <suffix name="GetFileSize" label="ChromiumEnv::GetFileSize"/>
  <suffix name="LockFile" label="ChromiumEnv::LockFile"/>
  <suffix name="NewAppendableFile" label="ChromiumEnv::NewAppendableFile"/>
  <suffix name="NewRandomAccessFile" label="ChromiumEnv::NewRandomAccessFile"/>
  <suffix name="RandomAccessFileRead" label="ChromiumRandomAccessFile::Read"/>
  <suffix name="RenameFile" label="ChromiumEnv::RenameFile"/>
  <suffix name="UnlockFile" label="ChromiumEnv::UnlockFile"/>
  <affected-histogram name="WebCore.IndexedDB.LevelDBOpenErrors.PFE"/>
  <affected-histogram name="WebCore.IndexedDB.LevelDBReadErrors.PFE"/>
  <affected-histogram name="WebCore.IndexedDB.LevelDBWriteErrors.PFE"/>
</histogram_suffixes>

<histogram_suffixes name="InstallerDownloadSources" separator="">
  <suffix name="HttpPeer" label="Download Source: HTTP Peer"/>
  <suffix name="HttpServer" label="Download Source: HTTP Server"/>
  <suffix name="HttpsServer" label="Download Source: HTTPS Server"/>
  <affected-histogram name="Installer.SuccessfulMBsDownloadedFrom"/>
  <affected-histogram name="Installer.TotalMBsDownloadedFrom"/>
</histogram_suffixes>

<histogram_suffixes name="Instant">
  <suffix name="Extended" label="Suggestions + Results"/>
  <suffix name="Instant" label="Results"/>
  <affected-histogram name="Instant.SessionsStorageNamespace"/>
</histogram_suffixes>

<histogram_suffixes name="InstantExtended_QuerytoQuery">
  <owner>macourteau@chromium.org</owner>
  <suffix name="400" label="Omnibox width &lt; 400"/>
  <suffix name="700" label="Omnibox width &lt; 700"/>
  <suffix name="1200" label="Omnibox width &lt; 1200"/>
  <suffix name="large" label="Omnibox width &gt;= 1200"/>
  <affected-histogram name="InstantExtended.PercentageMatchV2_QuerytoQuery"/>
  <affected-histogram name="InstantExtended.PercentageMatchV2_QuerytoURL"/>
  <affected-histogram name="InstantExtended.PercentageMatchV2_URLtoQuery"/>
  <affected-histogram name="InstantExtended.PercentageMatchV2_URLtoURL"/>
</histogram_suffixes>

<histogram_suffixes name="InstantSearchClicks">
  <obsolete>
    Deprecated as of 7/2015.
  </obsolete>
  <suffix name="WithPreview"
      label="Only page loads through data reduction proxy that are result of
             navigation from web search and preview version of the page shown
             are considered."/>
  <suffix name="Preview"
      label="Only page loads through data reduction proxy that are result of
             navigation from web search and preview version of the page shown
             are considered."/>
  <suffix name="NoPreview"
      label="Only page loads through data reduction proxy that are result of
             navigation from web search and preview version of the page shown
             are considered."/>
  <affected-histogram name="PLT.BeginToFinish"/>
  <affected-histogram name="PLT.BeginToFinish_ContentPrefetcherReferrer"/>
  <affected-histogram name="PLT.BeginToFinishDoc"/>
  <affected-histogram name="PLT.BeginToFinishDoc_ContentPrefetcherReferrer"/>
  <affected-histogram name="PLT.BeginToFirstPaint"/>
  <affected-histogram name="PLT.CommitToFirstPaint"/>
  <affected-histogram name="PLT.PT_BeginToCommit"/>
  <affected-histogram name="PLT.PT_BeginToFinish"/>
  <affected-histogram name="PLT.PT_BeginToFinishDoc"/>
  <affected-histogram name="PLT.PT_CommitToFinish"/>
  <affected-histogram name="PLT.PT_CommitToFinishDoc"/>
  <affected-histogram name="PLT.PT_RequestToCommit"/>
  <affected-histogram name="PLT.PT_RequestToDomContentLoaded"/>
  <affected-histogram name="PLT.PT_RequestToFinish"/>
  <affected-histogram name="PLT.PT_RequestToFinishDoc"/>
  <affected-histogram name="PLT.PT_RequestToStart"/>
  <affected-histogram name="PLT.PT_StartToCommit"/>
  <affected-histogram name="PLT.PT_StartToFinish"/>
</histogram_suffixes>

<histogram_suffixes name="InterProcessTimeTicksConversionType">
  <owner>ppi@chromium.org</owner>
  <suffix name="BrowserToRenderer"/>
  <suffix name="RendererToBrowser"/>
  <affected-histogram name="InterProcessTimeTicks.BrowserAhead"/>
  <affected-histogram name="InterProcessTimeTicks.BrowserBehind"/>
  <affected-histogram name="InterProcessTimeTicks.IsSkewAdditive"/>
</histogram_suffixes>

<histogram_suffixes name="Interval" separator="_">
  <suffix name="Interval" label="Interval between two consecutive connects is"/>
  <affected-histogram name="Net.TCP_Connection_Latency"/>
</histogram_suffixes>

<histogram_suffixes name="Interval_20ms_plus_and_minus" separator="_">
  <suffix name="Interval_20ms_Minus"
      label="Interval between two consecutive connects is less than 20ms."/>
  <suffix name="Interval_20ms_Plus"
      label="Interval between two consecutive connects is greater than or
             equal to 20ms."/>
  <affected-histogram name="Net.TCP_Connection_Latency"/>
</histogram_suffixes>

<histogram_suffixes name="Interval_lt_gt_20ms" separator="_">
  <suffix name="LessThanOrEqual_10ms" label="less than or equal to 10ms."/>
  <suffix name="LessThanOrEqual_20ms"
      label="more than 10ms, and less than or equal to 20ms."/>
  <suffix name="GreaterThan_20ms" label="greater than 20ms."/>
  <affected-histogram name="Net.TCP_Connection_Latency_Interval"/>
</histogram_suffixes>

<histogram_suffixes name="IOMode" separator=".">
  <suffix name="Synchronous"/>
  <suffix name="Asynchronous"/>
  <affected-histogram name="Net.QuicSession.PacketWriteTime"/>
</histogram_suffixes>

<histogram_suffixes name="iOS_PLT" separator="">
  <owner>pauljensen@chromium.org</owner>
  <suffix name="" label="not using Data Reduction Proxy"/>
  <suffix name="_DataReductionProxy" label="using Data Reduction Proxy"/>
  <affected-histogram name="Tabs.iOS_PostRedirectPLT"/>
</histogram_suffixes>

<histogram_suffixes name="IPProtocolType" separator="_">
  <suffix name="UDP"/>
  <suffix name="TCP"/>
  <affected-histogram name="WebRTC.PeerConnection.CandidatePairType"/>
  <affected-histogram name="WebRTC.SystemMaxConsecutiveBytesDelayed"/>
  <affected-histogram name="WebRTC.SystemPercentPacketsDelayed"/>
  <affected-histogram name="WebRTC.SystemSendPacketDuration"/>
</histogram_suffixes>

<histogram_suffixes name="IPv6_Probe">
  <suffix name="IPv6_probe_skipped"
      label="with IPv6 not probed, and default OS settings used"/>
  <suffix name="IPv6_probe_done"
      label="with IPv6 probed for and possibly disabled"/>
  <affected-histogram name="DNS.PrefetchResolution"/>
</histogram_suffixes>

<histogram_suffixes name="LateBindingExperiment">
  <suffix name="disable_late_binding" label="socket late binding is disabled"/>
  <suffix name="enable_late_binding" label="socket late binding is enabled"/>
  <affected-histogram name="Net.SocketIdleTimeBeforeNextUse_ReusedSocket"/>
  <affected-histogram name="Net.SocketIdleTimeBeforeNextUse_UnusedSocket"/>
  <affected-histogram name="Net.SocketIdleTimeOnIOError2_ReusedSocket"/>
  <affected-histogram name="Net.SocketIdleTimeOnIOError2_UnusedSocket"/>
  <affected-histogram name="Net.TCPSocketType"/>
  <affected-histogram name="Net.Transaction_Connected"/>
  <affected-histogram name="Net.Transaction_Connected_Under_10"/>
  <affected-histogram name="Net.TransportSocketRequestTime"/>
  <affected-histogram name="Renderer4.BeginToFinish_LinkLoad"/>
  <affected-histogram name="Renderer4.BeginToFinish_LinkLoadNormal"/>
  <affected-histogram name="Renderer4.BeginToFinish_LinkLoadReload"/>
  <affected-histogram name="Renderer4.BeginToFinish_NormalLoad"/>
  <affected-histogram name="Renderer4.BeginToFinishDoc_LinkLoad"/>
  <affected-histogram name="Renderer4.BeginToFinishDoc_LinkLoadNormal"/>
  <affected-histogram name="Renderer4.BeginToFinishDoc_LinkLoadReload"/>
  <affected-histogram name="Renderer4.BeginToFinishDoc_NormalLoad"/>
  <affected-histogram name="Renderer4.RequestToFinish"/>
  <affected-histogram name="Renderer4.StartToFinish"/>
</histogram_suffixes>

<histogram_suffixes name="LevelDBBFEMethods" separator=".">
  <owner>cmumford@chromium.org</owner>
  <suffix name="CreateDir" label="ChromiumEnv::CreateDir"/>
  <suffix name="DeleteDir" label="ChromiumEnv::DeleteDir"/>
  <suffix name="DeleteFile" label="ChromiumEnv::DeleteFile"/>
  <suffix name="GetChildren" label="ChromiumEnv::GetChildren"/>
  <suffix name="GetFileSize" label="ChromiumEnv::GetFileSize"/>
  <suffix name="GetTestDirectory" label="ChromiumEnv::GetTestDirectory"/>
  <suffix name="LockFile" label="ChromiumEnv::LockFile"/>
  <suffix name="NewAppendableFile" label="ChromiumEnv::NewAppendableFile"/>
  <suffix name="NewLogger" label="ChromiumEnv::NewLogger"/>
  <suffix name="NewRandomAccessFile" label="ChromiumEnv::NewRandomAccessFile"/>
  <suffix name="NewSequentialFile" label="ChromiumEnv::NewSequentialFile"/>
  <suffix name="NewWritableFile" label="ChromiumEnv::NewWritableFile"/>
  <suffix name="RandomAccessFileRead" label="ChromiumRandomAccessFile::Read"/>
  <suffix name="RenameFile" label="ChromiumEnv::RenameFile"/>
  <suffix name="SequentialFileRead" label="ChromiumSequentialFile::Read"/>
  <suffix name="SequentialFileSkip" label="ChromiumSequentialFile::Skip"/>
  <suffix name="UnlockFile" label="ChromiumEnv::UnlockFile"/>
  <suffix name="WritableFileAppend" label="ChromiumWritableFile::Append"/>
  <suffix name="WritableFileClose" label="ChromiumWritableFile::Close"/>
  <suffix name="WritableFileFlush" label="ChromiumWritableFile::Flush"/>
  <suffix name="WritableFileSync" label="ChromiumWritableFile::Sync"/>
  <suffix name="WritableFileSyncParent"
      label="ChromiumWritableFile::SyncParent"/>
  <affected-histogram name="LevelDBEnv.IDB.IOError.BFE"/>
  <affected-histogram name="LevelDBEnv.IOError.BFE"/>
  <affected-histogram name="LevelDBEnv.ServiceWorker.IOError.BFE"/>
  <affected-histogram name="WebCore.IndexedDB.LevelDBOpenErrors.BFE"/>
  <affected-histogram name="WebCore.IndexedDB.LevelDBReadErrors.BFE"/>
  <affected-histogram name="WebCore.IndexedDB.LevelDBWriteErrors.BFE"/>
</histogram_suffixes>

<histogram_suffixes name="LevelDBEnvBackupRestore" separator="">
  <suffix name="Backup" label="Backing up an ldb file."/>
  <suffix name="Restore" label="Restoring an ldb file."/>
  <affected-histogram name="LevelDBEnv.IDB.Table"/>
  <affected-histogram name="LevelDBEnv.ServiceWorker.Table"/>
  <affected-histogram name="LevelDBEnv.Table"/>
</histogram_suffixes>

<histogram_suffixes name="LevelDBEnvMaxFDs" separator=".">
  <suffix name="Success"
      label="This histogram shows the limit when open succeeded."/>
  <suffix name="TooManyOpened"
      label="This histogram shows the limit when open failed because the
             limit had been reached."/>
  <suffix name="OtherError"
      label="This histogram shows the limit when open failed for reasons
             other than exceeding the limit."/>
  <affected-histogram name="LevelDBEnv.IDB.MaxFDs"/>
  <affected-histogram name="LevelDBEnv.MaxFDs"/>
  <affected-histogram name="LevelDBEnv.ServiceWorker.MaxFDs"/>
</histogram_suffixes>

<histogram_suffixes name="LevelDBEnvPlatformFileErrors" separator="">
  <suffix name="CreateDir" label="ChromiumEnv::CreateDir"/>
  <suffix name="GetChildren" label="ChromiumEnv::GetChildren"/>
  <suffix name="LockFile" label="ChromiumEnv::LockFile"/>
  <suffix name="NewRandomAccessFile" label="ChromiumEnv::NewRandomAccessFile"/>
  <suffix name="RenameFile" label="ChromiumEnv::RenameFile"/>
  <affected-histogram name="LevelDBEnv.IDB.IOError."/>
  <affected-histogram name="LevelDBEnv.IOError."/>
  <affected-histogram name="LevelDBEnv.ServiceWorker.IOError."/>
</histogram_suffixes>

<histogram_suffixes name="LevelDBEnvRetry" separator="">
  <suffix name="RenameFile" label="RenameFile"/>
  <suffix name="LockFile" label="LockFile"/>
  <suffix name="CreateDir" label="CreateDir"/>
  <affected-histogram name="LevelDBEnv.IDB.RetryRecoveredFromErrorIn"/>
  <affected-histogram name="LevelDBEnv.IDB.TimeUntilSuccessFor"/>
  <affected-histogram name="LevelDBEnv.RetryRecoveredFromErrorIn"/>
  <affected-histogram
      name="LevelDBEnv.ServiceWorker.RetryRecoveredFromErrorIn"/>
  <affected-histogram name="LevelDBEnv.ServiceWorker.TimeUntilSuccessFor"/>
  <affected-histogram name="LevelDBEnv.TimeUntilSuccessFor"/>
</histogram_suffixes>

<histogram_suffixes name="LevelDBEnvRetryTimes" separator="">
  <obsolete>
    Deprecated 2013-04 in favor of LevelDBEnvRetry.
  </obsolete>
  <suffix name="Rename" label="RenameFile"/>
  <suffix name="LockFile" label="LockFile"/>
  <affected-histogram name="LevelDBEnv.IDB.TimeTo"/>
  <affected-histogram name="LevelDBEnv.TimeTo"/>
</histogram_suffixes>

<histogram_suffixes name="LevelDBOpenResults">
  <suffix name="DomDistillerStore" label="Databases for DomDistillerStore"/>
  <suffix name="GCMKeyStore" label="Databases for GCMKeyStore"/>
  <suffix name="ImageManager" label="Databases for ImageManager"/>
  <suffix name="OfflinePageMetadataStore"
      label="Databases for OfflinePageMetadataStore"/>
  <suffix name="UsageReportsBufferBackend"
      label="The result of the first attempt to open the usage reports buffer
             backend database."/>
  <affected-histogram name="LevelDB.Open"/>
</histogram_suffixes>

<histogram_suffixes name="LocalStorageSizes" separator="">
  <suffix name="Under100KB" label="DB size under 100KB"/>
  <suffix name="100KBTo1MB" label="DB size between 100KB and 1MB"/>
  <suffix name="1MBTo5MB" label="DB size between 1MB and 5MB"/>
  <affected-histogram name="LocalStorage.BrowserTimeToPrimeLocalStorage"/>
  <affected-histogram name="LocalStorage.MojoTimeToPrimeFor"/>
  <affected-histogram name="LocalStorage.RendererTimeToPrimeLocalStorage"/>
</histogram_suffixes>

<histogram_suffixes name="LockExistingCachedImage" separator=".">
  <suffix name="Software.EVENTUALLY" label="Eventually bin for software"/>
  <suffix name="Software.NOW" label="Now bin for software"/>
  <suffix name="Software.SOON" label="Soon bin for software"/>
  <affected-histogram name="Renderer4.LockExistingCachedImage"/>
</histogram_suffixes>

<histogram_suffixes name="LowMemoryMargin">
  <suffix name="default" label="Low memory margin set to the system default"/>
  <suffix name="off" label="Low memory notification disabled"/>
  <suffix name="0mb" label="Low memory margin set to 0MB"/>
  <suffix name="25mb" label="Low memory margin set to 25MB"/>
  <suffix name="50mb" label="Low memory margin set to 50MB"/>
  <suffix name="100mb" label="Low memory margin set to 100MB"/>
  <suffix name="200mb" label="Low memory margin set to 200MB"/>
  <affected-histogram name="Tabs.Discard.DiscardCount"/>
  <affected-histogram name="Tabs.Discard.InitialTime2"/>
  <affected-histogram name="Tabs.Discard.IntervalTime2"/>
  <affected-histogram name="Tabs.Discard.MemAnonymousMB"/>
  <affected-histogram name="Tabs.Discard.MemAvailableMB"/>
  <affected-histogram name="Tabs.Discard.TabCount"/>
  <affected-histogram name="Tabs.SadTab.CrashCreated"/>
  <affected-histogram name="Tabs.SadTab.KillCreated"/>
</histogram_suffixes>

<histogram_suffixes name="ManifestProperties" separator=".">
  <suffix name="name"/>
  <suffix name="short_name"/>
  <suffix name="start_url"/>
  <suffix name="display"/>
  <suffix name="orientation"/>
  <suffix name="icons"/>
  <suffix name="gcm_sender_id"/>
  <affected-histogram name="Manifest.HasProperty"/>
</histogram_suffixes>

<histogram_suffixes name="MediaAudioInputControllerTime" separator=".">
  <suffix name="CloseTime" label="Measures the time taken for DoClose()."/>
  <suffix name="CreateTime" label="Measures the time taken for DoCreate()."/>
  <suffix name="RecordTime" label="Measures the time taken for DoRecord()."/>
  <affected-histogram name="Media.AudioInputController"/>
</histogram_suffixes>

<histogram_suffixes name="MediaAudioInputDeviceManagerTime" separator=".">
  <suffix name="OpenOnDeviceThreadTime"
      label="Measures the time taken for OpenOnDeviceThread()."/>
  <suffix name="EnumerateOnDeviceThreadTime"
      label="Measures the time taken for EnumerateOnDeviceThread()."/>
  <affected-histogram name="Media.AudioInputDeviceManager"/>
</histogram_suffixes>

<histogram_suffixes name="MediaAudioOutputControllerTime" separator=".">
  <suffix name="CloseTime" label="Measures the time taken for DoClose()."/>
  <suffix name="CreateTime" label="Measures the time taken for DoCreate()."/>
  <suffix name="DeviceChangeTime"
      label="Measures the time taken for OnDeviceChange()."/>
  <suffix name="PauseTime" label="Measures the time taken for DoPause()."/>
  <suffix name="PlayTime"
      label="Measures the time taken for DoPlay(). Technically only the
             worker method AudioOutputController::PollAndStartIfDataReady()."/>
  <affected-histogram name="Media.AudioOutputController"/>
</histogram_suffixes>

<histogram_suffixes name="MediaPipelineStatusForStreams" separator=".">
  <suffix name="AudioVideo.Other"
      label="PipelineStatus for the codecs that dont have an explicit metric."/>
  <suffix name="AudioVideo.VP8.SW"
      label="PipelineStatus for AV streams with VP8 software decoder."/>
  <suffix name="AudioVideo.VP8.HW"
      label="PipelineStatus for AV streams with VP8 hardware decoder."/>
  <suffix name="AudioVideo.VP8.DDS.SW"
      label="PipelineStatus for AV streams with VP8 software codec and that
             go through the DecryptingDemuxerStream (DDS)."/>
  <suffix name="AudioVideo.VP8.DDS.HW"
      label="PipelineStatus for AV streams with VP8 hardware codec and that
             go through the DecryptingDemuxerStream (DDS)."/>
  <suffix name="AudioVideo.VP8.DVD"
      label="PipelineStatus for AV streams with VP8 codec and that go through
             the DecryptingVideoDecoder (DVD)."/>
  <suffix name="AudioVideo.VP9.SW"
      label="PipelineStatus for AV streams with VP9 software decoder."/>
  <suffix name="AudioVideo.VP9.HW"
      label="PipelineStatus for AV streams with VP9 hardware decoder."/>
  <suffix name="AudioVideo.VP9.DDS.SW"
      label="PipelineStatus for AV streams with VP9 codec and that go through
             the DecryptingDemuxerStream (DDS)."/>
  <suffix name="AudioVideo.VP9.DDS.HW"
      label="PipelineStatus for AV streams with VP9 hardware codec and that
             go through the DecryptingDemuxerStream (DDS)."/>
  <suffix name="AudioVideo.VP9.DVD"
      label="PipelineStatus for AV streams with VP9 software codec and that
             go through the DecryptingVideoDecoder (DVD)."/>
  <suffix name="AudioVideo.H264.SW"
      label="PipelineStatus for software decoded AV streams with H264
             decoder."/>
  <suffix name="AudioVideo.H264.HW"
      label="PipelineStatus for hardware decoded AV streams with H264
             decoder."/>
  <suffix name="AudioVideo.H264.DDS.SW"
      label="PipelineStatus for AV streams with H264 software decoder and
             that go through the DecryptingDemuxerStream (DDS)."/>
  <suffix name="AudioVideo.H264.DDS.HW"
      label="PipelineStatus for AV streams with H264 hardware decoder and
             that go through the DecryptingDemuxerStream (DDS)."/>
  <suffix name="AudioVideo.H264.DVD"
      label="PipelineStatus for AV streams with H264 decoder and that go
             through the DecryptingVideoDecoder (DVD)."/>
  <suffix name="AudioOnly" label="PipelineStatus for Audio-only streams."/>
  <suffix name="VideoOnly" label="PipelineStatus for Video-only streams."/>
  <suffix name="Unsupported" label="PipelineStatus for unsupported streams."/>
  <affected-histogram name="Media.PipelineStatus"/>
</histogram_suffixes>

<histogram_suffixes name="MediaVideoCaptureManagerTime" separator=".">
  <suffix name="StartDeviceTime"
      label="Measures the time taken for DoStartDeviceOnDeviceThread()."/>
  <suffix name="StopDeviceTime"
      label="Measures the time taken for DoStopDeviceOnDeviceThread()."/>
  <suffix name="GetAvailableDevicesInfoOnDeviceThreadTime"
      label="Measures the time taken to enumerate devices and their
             capabilities, between EnumerateDevices() and
             OnDevicesInfoEnumerated()."/>
  <affected-histogram name="Media.VideoCaptureManager"/>
</histogram_suffixes>

<histogram_suffixes name="MobileDownloadBytesDownloadedTypes" separator=".">
  <suffix name="ChromeNetworkStack.Failure"/>
  <suffix name="ChromeNetworkStack.Success"/>
  <suffix name="DownloadManager.Failure"/>
  <suffix name="DownloadManager.Success"/>
  <affected-histogram name="MobileDownload.BytesDownloaded"/>
</histogram_suffixes>

<histogram_suffixes name="MobileDownloadDownloadTimeTypes" separator=".">
  <suffix name="ChromeNetworkStack.Cancel"/>
  <suffix name="ChromeNetworkStack.Failure"/>
  <suffix name="ChromeNetworkStack.Success"/>
  <suffix name="DownloadManager.Failure"/>
  <suffix name="DownloadManager.Success"/>
  <affected-histogram name="MobileDownload.DownloadTime"/>
</histogram_suffixes>

<histogram_suffixes name="MobileDownloadInterruptionsCountTypes" separator=".">
  <suffix name="ChromeNetworkStack.Cancel"/>
  <suffix name="ChromeNetworkStack.Failure"/>
  <suffix name="ChromeNetworkStack.Success"/>
  <affected-histogram name="MobileDownload.InterruptionsCount"/>
</histogram_suffixes>

<histogram_suffixes name="MobileFreSignInChoiceEntryType" separator=".">
  <suffix name="MainIntent" label="Icon click"/>
  <suffix name="ViewIntent" label="VIEW intent"/>
  <affected-histogram name="MobileFre.SignInChoice"/>
</histogram_suffixes>

<histogram_suffixes name="MobileFreSignInChoiceNumberOfAccounts" separator=".">
  <suffix name="ZeroAccounts" label="Zero accounts"/>
  <suffix name="OneAccount" label="One account"/>
  <suffix name="ManyAccounts" label="Two or more accounts"/>
  <affected-histogram name="MobileFre.SignInChoice.MainIntent"/>
  <affected-histogram name="MobileFre.SignInChoice.ViewIntent"/>
</histogram_suffixes>

<histogram_suffixes name="ModuleIntegrityVerificationType" separator=".">
  <suffix name="WithoutByteSet"
      label="The version of the Module Integrity Verifier that doesn't use a
             hash set to track relocations."/>
  <suffix name="WithByteSet"
      label="The version of the Module Integrity Verifier that uses a hash set
             to track relocations.">
    <obsolete>
      Deprecated and removed from code as of 05/2015.
    </obsolete>
  </suffix>
  <affected-histogram name="ModuleIntegrityVerification.BytesModified"/>
  <affected-histogram name="ModuleIntegrityVerification.Difference"/>
</histogram_suffixes>

<histogram_suffixes name="NatType" separator=".">
  <suffix name="NoNAT"/>
  <suffix name="UnknownNAT"/>
  <suffix name="SymNAT"/>
  <suffix name="NonSymNAT"/>
  <affected-histogram name="WebRTC.Stun.BatchSuccessPercent"/>
  <affected-histogram name="WebRTC.Stun.ResponseLatency"/>
  <affected-histogram name="WebRTC.Stun.SuccessPercent"/>
</histogram_suffixes>

<histogram_suffixes name="NavigationCharacteristic">
  <suffix name="ExistingRenderer_BeforeUnloadDiscounted"
      label="Navigation reused an existing renderer process. Time spent in
             beforeunload subtracted."/>
  <suffix name="NewRenderer_BeforeUnloadDiscounted"
      label="Navigation spawned a new renderer process. Time spent in
             beforeunload subtracted."/>
  <suffix name="SessionRestored_BeforeUnloadDiscounted"
      label="Navigation caused by restoring a tab from a previous session
             (whether from a crash or a continued session) either spawning or
             reusing a renderer. Time spent in beforeunload subtracted."/>
  <suffix name="SessionRestored"
      label="Navigation caused by restoring a tab from a previous session
             (whether from a crash or a continued session) either spawning or
             reusing a renderer. Time spent in beforeunload subtracted.">
    <obsolete>
      Replaced by the likely named entry. It had a misleading name as it also
      has the before-unload time discounted.
    </obsolete>
  </suffix>
  <affected-histogram name="Navigation.TimeToCommit"/>
  <affected-histogram name="Navigation.TimeToURLJobStart"/>
</histogram_suffixes>

<histogram_suffixes name="Net.QuicClientHelloRejectReasons.QuicIsSecureOrNot"
    separator=".">
  <owner>rtenneti@chromium.org</owner>
  <suffix name="Insecure" label="for insecure QUIC.">
    <obsolete>
      Deprecated and removed from code as of 10/2015.
    </obsolete>
  </suffix>
  <suffix name="Secure" label="for secure QUIC."/>
  <suffix name="TooMany"
      label="for secure QUIC when there were too many rejects."/>
  <affected-histogram name="Net.QuicClientHelloRejectReasons"/>
</histogram_suffixes>

<histogram_suffixes name="Net.QuicSession.21CumulativePackets" separator="_">
  <owner>rch@chromium.org</owner>
  <suffix name="First21"
      label="Only the first group of 21 packets in a connection via"/>
  <suffix name="Some21s"
      label="After the first 21, this records data for some groups of 21
             consecutive sequence nmubers, arriving via."/>
  <affected-histogram name="Net.QuicSession.21CumulativePacketsReceived"/>
</histogram_suffixes>

<histogram_suffixes name="Net.QuicSession.6PacketPatterns" separator="_">
  <owner>rch@chromium.org</owner>
  <suffix name="First6"
      label="Only the first group of 6 packets in a connection via"/>
  <suffix name="Some6s"
      label="After the first 6, this records patterns for some groups of 6
             consecutive sequence numbers, arriving via."/>
  <affected-histogram name="Net.QuicSession.6PacketsPatternsReceived"/>
</histogram_suffixes>

<histogram_suffixes name="Net.QuicSession.PacketReceived" separator="_">
  <owner>rch@chromium.org</owner>
  <suffix name="Ack"
      label="Only packets that were received by Chrome as well being part of
             connections via"/>
  <suffix name="Nack"
      label="Only packets that were missed by Chrome as well being part of
             connections via"/>
  <suffix name="IsAnAck"
      label="Only packets that were probably solo ACK packets when recieved
             by Chrome as well being part of connections via"/>
  <suffix name="IsNotAck"
      label="Only packets that were probably NOT solo ACK packets when
             recieved by Chrome as well being part of connections via"/>
  <affected-histogram name="Net.QuicSession.PacketReceived"/>
</histogram_suffixes>

<histogram_suffixes name="Net.QuicSession.PacketReceived_CONNECTION_TYPE"
    separator="_">
  <owner>rch@chromium.org</owner>
  <suffix name="CONNECTION_UNKNOWN" label="WiFi are tallied."/>
  <suffix name="CONNECTION_ETHERNET"
      label="ethernet are tallied, but this may include connections to a WiFi
             bridge."/>
  <suffix name="CONNECTION_WIFI"
      label="WiFi are tallied, but this may include connections to a mobile
             hotspot. Also check similar histograms that end in WIFI_802.11*
             for more details on some platforms."/>
  <suffix name="CONNECTION_WIFI_ANCIENT"
      label="802.11 that are no longer standard are tallied."/>
  <suffix name="CONNECTION_WIFI_802.11a" label="802.11a are tallied."/>
  <suffix name="CONNECTION_WIFI_802.11b" label="802.11b are tallied."/>
  <suffix name="CONNECTION_WIFI_802.11g" label="802.11g are tallied."/>
  <suffix name="CONNECTION_WIFI_802.11n" label="802.11n are tallied."/>
  <suffix name="CONNECTION_2G" label="mobile 2G are tallied."/>
  <suffix name="CONNECTION_3G" label="mobile 3G are tallied."/>
  <suffix name="CONNECTION_4G" label="mobile 4G are tallied."/>
  <suffix name="CONNECTION_NONE"
      label="NO(?) network are tallied (should be empty)."/>
  <suffix name="CONNECTION_BLUETOOTH"
      label="Bluetooth are tallied, but this may include connections to a
             mobile hotspot."/>
  <affected-histogram
      name="Net.QuicSession.21CumulativePacketsReceived_First21"/>
  <affected-histogram
      name="Net.QuicSession.21CumulativePacketsReceived_Some21s"/>
  <affected-histogram name="Net.QuicSession.6PacketsPatternsReceived_First6"/>
  <affected-histogram name="Net.QuicSession.6PacketsPatternsReceived_Some6s"/>
  <affected-histogram name="Net.QuicSession.PacketLossRate"/>
  <affected-histogram name="Net.QuicSession.PacketReceived_Ack"/>
  <affected-histogram name="Net.QuicSession.PacketReceived_IsAnAck"/>
  <affected-histogram name="Net.QuicSession.PacketReceived_IsNotAck"/>
  <affected-histogram name="Net.QuicSession.PacketReceived_Nack"/>
</histogram_suffixes>

<histogram_suffixes name="NetConnectivity" separator=".">
  <suffix name="53.100B" label="100 bytes of data on port 53."/>
  <suffix name="53.100B.NoProxy"
      label="100 bytes of data on port 53 with no proxy."/>
  <suffix name="53.1K" label="1K bytes of data on port 53."/>
  <suffix name="53.1K.NoProxy"
      label="1K bytes of data on port 53 with no proxy."/>
  <suffix name="53.100B.RTT"
      label="100 bytes of data on port 53 successfully."/>
  <suffix name="53.100B.RTT.NoProxy"
      label="100 bytes of data on port 53 successfully with no proxy."/>
  <suffix name="53.1K.RTT" label="1K bytes of data on port 53 successfully."/>
  <suffix name="53.1K.RTT.NoProxy"
      label="1K bytes of data on port 53 successfully with no proxy."/>
  <suffix name="587.100B" label="100 bytes of data on port 587."/>
  <suffix name="587.100B.NoProxy"
      label="100 bytes of data on port 587 with no proxy."/>
  <suffix name="587.1K" label="1K bytes of data on port 587."/>
  <suffix name="587.1K.NoProxy"
      label="1K bytes of data on port 587 with no proxy."/>
  <suffix name="587.100B.RTT"
      label="100 bytes of data on port 587 successfully."/>
  <suffix name="587.100B.RTT.NoProxy"
      label="100 bytes of data on port 587 successfully with no proxy."/>
  <suffix name="587.1K.RTT" label="1K bytes of data on port 587 successfully."/>
  <suffix name="587.1K.RTT.NoProxy"
      label="1K bytes of data on port 587 successfully with no proxy."/>
  <suffix name="6121.100B" label="100 bytes of data on port 6121."/>
  <suffix name="6121.100B.NoProxy"
      label="100 bytes of data on port 6121 with no proxy."/>
  <suffix name="6121.1K" label="1K bytes of data on port 6121."/>
  <suffix name="6121.1K.NoProxy"
      label="1K bytes of data on port 6121 with no proxy."/>
  <suffix name="6121.100B.RTT"
      label="100 bytes of data on port 6121 successfully."/>
  <suffix name="6121.100B.RTT.NoProxy"
      label="100 bytes of data on port 6121 successfully with no proxy."/>
  <suffix name="6121.1K.RTT"
      label="1K bytes of data on port 6121 successfully."/>
  <suffix name="6121.1K.RTT.NoProxy"
      label="1K bytes of data on port 6121 successfully with no proxy."/>
  <suffix name="80.100B" label="100 bytes of data on port 80."/>
  <suffix name="80.100B.NoProxy"
      label="100 bytes of data on port 80 with no proxy."/>
  <suffix name="80.1K" label="1K bytes of data on port 80."/>
  <suffix name="80.1K.NoProxy"
      label="1K bytes of data on port 80 with no proxy."/>
  <suffix name="80.100B.RTT"
      label="100 bytes of data on port 80 successfully."/>
  <suffix name="80.100B.RTT.NoProxy"
      label="100 bytes of data on port 80 successfully with no proxy."/>
  <suffix name="80.1K.RTT" label="1K bytes of data on port 80 successfully."/>
  <suffix name="80.1K.RTT.NoProxy"
      label="1K bytes of data on port 80 successfully with no proxy."/>
  <suffix name="8080.100B" label="100 bytes of data on port 8080."/>
  <suffix name="8080.100B.NoProxy"
      label="100 bytes of data on port 8080 with no proxy."/>
  <suffix name="8080.1K" label="1K bytes of data on port 8080."/>
  <suffix name="8080.1K.NoProxy"
      label="1K bytes of data on port 8080 with no proxy."/>
  <suffix name="8080.100B.RTT"
      label="100 bytes of data on port 8080 successfully."/>
  <suffix name="8080.100B.RTT.NoProxy"
      label="100 bytes of data on port 8080 successfully with no proxy."/>
  <suffix name="8080.1K.RTT"
      label="1K bytes of data on port 8080 successfully."/>
  <suffix name="8080.1K.RTT.NoProxy"
      label="1K bytes of data on port 8080 successfully with no proxy."/>
  <affected-histogram name="NetConnectivity.TCP.Status"/>
  <affected-histogram name="NetConnectivity.TCP.Success"/>
  <affected-histogram name="NetConnectivity.UDP.PacketLoss"/>
  <affected-histogram name="NetConnectivity.UDP.PacketLoss6"/>
  <affected-histogram name="NetConnectivity.UDP.Status"/>
  <affected-histogram name="NetConnectivity.UDP.Success"/>
</histogram_suffixes>

<histogram_suffixes name="NetConnectivity2" separator=".">
  <suffix name="AcksReceivedFromFirst2Packets" label="2 packets."/>
  <suffix name="AcksReceivedFromFirst3Packets" label="3 packets."/>
  <suffix name="AcksReceivedFromFirst4Packets" label="4 packets."/>
  <suffix name="AcksReceivedFromFirst5Packets" label="5 packets."/>
  <suffix name="AcksReceivedFromFirst6Packets" label="6 packets."/>
  <suffix name="AcksReceivedFromFirst7Packets" label="7 packets."/>
  <suffix name="AcksReceivedFromFirst8Packets" label="8 packets."/>
  <suffix name="AcksReceivedFromFirst9Packets" label="9 packets."/>
  <suffix name="AcksReceivedFromFirst10Packets" label="10 packets."/>
  <suffix name="AcksReceivedFromFirst11Packets" label="11 packets."/>
  <suffix name="AcksReceivedFromFirst12Packets" label="12 packets."/>
  <suffix name="AcksReceivedFromFirst13Packets" label="13 packets."/>
  <suffix name="AcksReceivedFromFirst14Packets" label="14 packets."/>
  <suffix name="AcksReceivedFromFirst15Packets" label="15 packets."/>
  <suffix name="AcksReceivedFromFirst16Packets" label="16 packets."/>
  <suffix name="AcksReceivedFromFirst17Packets" label="17 packets."/>
  <suffix name="AcksReceivedFromFirst18Packets" label="18 packets."/>
  <suffix name="AcksReceivedFromFirst19Packets" label="19 packets."/>
  <suffix name="AcksReceivedFromFirst20Packets" label="20 packets."/>
  <suffix name="AcksReceivedFromFirst21Packets" label="21 packets."/>
  <affected-histogram name="NetConnectivity.Sent21"/>
</histogram_suffixes>

<histogram_suffixes name="NetConnectivity2a" separator=".">
  <suffix name="6121.100B" label="100 bytes of data is sent on port 6121."/>
  <suffix name="6121.500B" label="500 bytes of data is sent on port 6121."/>
  <suffix name="6121.1K" label="1K bytes of data is sent on port 6121."/>
  <affected-histogram name="NetConnectivity2.Sent21.AckReceivedForNthPacket"/>
  <affected-histogram name="NetConnectivity2.Sent21.GotAnAck"/>
  <affected-histogram name="NetConnectivity2.Sent21.PacketsSent"/>
</histogram_suffixes>

<histogram_suffixes name="NetConnectivity2b" separator=".">
  <suffix name="AcksReceivedFromFirst2Packets.6121.100B"
      label="2 packets. 100 bytes of data is sent on port 6121."/>
  <suffix name="AcksReceivedFromFirst3Packets.6121.100B"
      label="3 packets. 100 bytes of data is sent on port 6121."/>
  <suffix name="AcksReceivedFromFirst4Packets.6121.100B"
      label="4 packets. 100 bytes of data is sent on port 6121."/>
  <suffix name="AcksReceivedFromFirst5Packets.6121.100B"
      label="5 packets. 100 bytes of data is sent on port 6121."/>
  <suffix name="AcksReceivedFromFirst6Packets.6121.100B"
      label="6 packets. 100 bytes of data is sent on port 6121."/>
  <suffix name="AcksReceivedFromFirst7Packets.6121.100B"
      label="7 packets. 100 bytes of data is sent on port 6121."/>
  <suffix name="AcksReceivedFromFirst8Packets.6121.100B"
      label="8 packets. 100 bytes of data is sent on port 6121."/>
  <suffix name="AcksReceivedFromFirst9Packets.6121.100B"
      label="9 packets. 100 bytes of data is sent on port 6121."/>
  <suffix name="AcksReceivedFromFirst10Packets.6121.100B"
      label="10 packets. 100 bytes of data is sent on port 6121."/>
  <suffix name="AcksReceivedFromFirst11Packets.6121.100B"
      label="11 packets. 100 bytes of data is sent on port 6121."/>
  <suffix name="AcksReceivedFromFirst12Packets.6121.100B"
      label="12 packets. 100 bytes of data is sent on port 6121."/>
  <suffix name="AcksReceivedFromFirst13Packets.6121.100B"
      label="13 packets. 100 bytes of data is sent on port 6121."/>
  <suffix name="AcksReceivedFromFirst14Packets.6121.100B"
      label="14 packets. 100 bytes of data is sent on port 6121."/>
  <suffix name="AcksReceivedFromFirst15Packets.6121.100B"
      label="15 packets. 100 bytes of data is sent on port 6121."/>
  <suffix name="AcksReceivedFromFirst16Packets.6121.100B"
      label="16 packets. 100 bytes of data is sent on port 6121."/>
  <suffix name="AcksReceivedFromFirst17Packets.6121.100B"
      label="17 packets. 100 bytes of data is sent on port 6121."/>
  <suffix name="AcksReceivedFromFirst18Packets.6121.100B"
      label="18 packets. 100 bytes of data is sent on port 6121."/>
  <suffix name="AcksReceivedFromFirst19Packets.6121.100B"
      label="19 packets. 100 bytes of data is sent on port 6121."/>
  <suffix name="AcksReceivedFromFirst20Packets.6121.100B"
      label="20 packets. 100 bytes of data is sent on port 6121."/>
  <suffix name="AcksReceivedFromFirst21Packets.6121.100B"
      label="21 packets. 100 bytes of data is sent on port 6121."/>
  <affected-histogram name="NetConnectivity2.Sent21"/>
</histogram_suffixes>

<histogram_suffixes name="NetConnectivity2c" separator=".">
  <suffix name="6121.100B" label="100 bytes of data is sent on port 6121."/>
  <suffix name="6121.100B.NoProxy"
      label="100 bytes of data is sent on port 6121 with no proxy."/>
  <suffix name="6121.500B" label="500 bytes of data is sent on port 6121."/>
  <suffix name="6121.500B.NoProxy"
      label="500 bytes of data is sent on port 6121 with no proxy."/>
  <suffix name="6121.1K" label="1K bytes of data is sent on port 6121."/>
  <suffix name="6121.1K.NoProxy"
      label="1K bytes of data is sent on port 6121 with no proxy."/>
  <affected-histogram name="NetConnectivity2.Send6.PacketsSent"/>
  <affected-histogram name="NetConnectivity2.Send6.SeriesAcked"/>
</histogram_suffixes>

<histogram_suffixes name="NetConnectivity2d" separator=".">
  <suffix name="AcksReceivedFromFirst2Packets.6121.500B"
      label="2 packets. 500 bytes of data is sent on port 6121."/>
  <suffix name="AcksReceivedFromFirst3Packets.6121.500B"
      label="3 packets. 500 bytes of data is sent on port 6121."/>
  <suffix name="AcksReceivedFromFirst4Packets.6121.500B"
      label="4 packets. 500 bytes of data is sent on port 6121."/>
  <suffix name="AcksReceivedFromFirst5Packets.6121.500B"
      label="5 packets. 500 bytes of data is sent on port 6121."/>
  <suffix name="AcksReceivedFromFirst6Packets.6121.500B"
      label="6 packets. 500 bytes of data is sent on port 6121."/>
  <suffix name="AcksReceivedFromFirst7Packets.6121.500B"
      label="7 packets. 500 bytes of data is sent on port 6121."/>
  <suffix name="AcksReceivedFromFirst8Packets.6121.500B"
      label="8 packets. 500 bytes of data is sent on port 6121."/>
  <suffix name="AcksReceivedFromFirst9Packets.6121.500B"
      label="9 packets. 500 bytes of data is sent on port 6121."/>
  <suffix name="AcksReceivedFromFirst10Packets.6121.500B"
      label="10 packets. 500 bytes of data is sent on port 6121."/>
  <suffix name="AcksReceivedFromFirst11Packets.6121.500B"
      label="11 packets. 500 bytes of data is sent on port 6121."/>
  <suffix name="AcksReceivedFromFirst12Packets.6121.500B"
      label="12 packets. 500 bytes of data is sent on port 6121."/>
  <suffix name="AcksReceivedFromFirst13Packets.6121.500B"
      label="13 packets. 500 bytes of data is sent on port 6121."/>
  <suffix name="AcksReceivedFromFirst14Packets.6121.500B"
      label="14 packets. 500 bytes of data is sent on port 6121."/>
  <suffix name="AcksReceivedFromFirst15Packets.6121.500B"
      label="15 packets. 500 bytes of data is sent on port 6121."/>
  <suffix name="AcksReceivedFromFirst16Packets.6121.500B"
      label="16 packets. 500 bytes of data is sent on port 6121."/>
  <suffix name="AcksReceivedFromFirst17Packets.6121.500B"
      label="17 packets. 500 bytes of data is sent on port 6121."/>
  <suffix name="AcksReceivedFromFirst18Packets.6121.500B"
      label="18 packets. 500 bytes of data is sent on port 6121."/>
  <suffix name="AcksReceivedFromFirst19Packets.6121.500B"
      label="19 packets. 500 bytes of data is sent on port 6121."/>
  <suffix name="AcksReceivedFromFirst20Packets.6121.500B"
      label="20 packets. 500 bytes of data is sent on port 6121."/>
  <suffix name="AcksReceivedFromFirst21Packets.6121.500B"
      label="21 packets. 500 bytes of data is sent on port 6121."/>
  <affected-histogram name="NetConnectivity2.Sent21"/>
</histogram_suffixes>

<histogram_suffixes name="NetConnectivity2e" separator=".">
  <suffix name="AcksReceivedFromFirst2Packets.6121.1K"
      label="2 packets. 1K bytes of data is sent on port 6121."/>
  <suffix name="AcksReceivedFromFirst3Packets.6121.1K"
      label="3 packets. 1K bytes of data is sent on port 6121."/>
  <suffix name="AcksReceivedFromFirst4Packets.6121.1K"
      label="4 packets. 1K bytes of data is sent on port 6121."/>
  <suffix name="AcksReceivedFromFirst5Packets.6121.1K"
      label="5 packets. 1K bytes of data is sent on port 6121."/>
  <suffix name="AcksReceivedFromFirst6Packets.6121.1K"
      label="6 packets. 1K bytes of data is sent on port 6121."/>
  <suffix name="AcksReceivedFromFirst7Packets.6121.1K"
      label="7 packets. 1K bytes of data is sent on port 6121."/>
  <suffix name="AcksReceivedFromFirst8Packets.6121.1K"
      label="8 packets. 1K bytes of data is sent on port 6121."/>
  <suffix name="AcksReceivedFromFirst9Packets.6121.1K"
      label="9 packets. 1K bytes of data is sent on port 6121."/>
  <suffix name="AcksReceivedFromFirst10Packets.6121.1K"
      label="10 packets. 1K bytes of data is sent on port 6121."/>
  <suffix name="AcksReceivedFromFirst11Packets.6121.1K"
      label="11 packets. 1K bytes of data is sent on port 6121."/>
  <suffix name="AcksReceivedFromFirst12Packets.6121.1K"
      label="12 packets. 1K bytes of data is sent on port 6121."/>
  <suffix name="AcksReceivedFromFirst13Packets.6121.1K"
      label="13 packets. 1K bytes of data is sent on port 6121."/>
  <suffix name="AcksReceivedFromFirst14Packets.6121.1K"
      label="14 packets. 1K bytes of data is sent on port 6121."/>
  <suffix name="AcksReceivedFromFirst15Packets.6121.1K"
      label="15 packets. 1K bytes of data is sent on port 6121."/>
  <suffix name="AcksReceivedFromFirst16Packets.6121.1K"
      label="16 packets. 1K bytes of data is sent on port 6121."/>
  <suffix name="AcksReceivedFromFirst17Packets.6121.1K"
      label="17 packets. 1K bytes of data is sent on port 6121."/>
  <suffix name="AcksReceivedFromFirst18Packets.6121.1K"
      label="18 packets. 1K bytes of data is sent on port 6121."/>
  <suffix name="AcksReceivedFromFirst19Packets.6121.1K"
      label="19 packets. 1K bytes of data is sent on port 6121."/>
  <suffix name="AcksReceivedFromFirst20Packets.6121.1K"
      label="20 packets. 1K bytes of data is sent on port 6121."/>
  <suffix name="AcksReceivedFromFirst21Packets.6121.1K"
      label="21 packets. 1K bytes of data is sent on port 6121."/>
  <affected-histogram name="NetConnectivity2.Sent21"/>
</histogram_suffixes>

<histogram_suffixes name="NetConnectivity3a" separator=".">
  <suffix name="NonPacedPacket"
      label="In this histogram results are only shown if at least two packets
             were ACKed in the Startup Test. Packets were sent as rapidly as
             possible."/>
  <suffix name="PacedPacket"
      label="In this histogram results are only shown if at least two packets
             were ACKed in the Startup Test. Packets are sent at equal
             intervals. The interval is selected to match the bandwidth
             discovered during the StartPacket test."/>
  <suffix name="StartPacket"
      label="Packets are sent as rapidly as possible, just after successfully
             sending an UMA upload. Each packet was numbered, as was its ACK
             sent back by Google. If no packets (of the 21) were ever ACKed,
             then the port is assumed to be blocked, and no data is recorded
             in this histogram."/>
  <affected-histogram name="NetConnectivity3"/>
</histogram_suffixes>

<histogram_suffixes name="NetConnectivity3aa" separator=".">
  <suffix name="Sent21"
      label="This histogram shows the number of echo responses received from
             the first"/>
  <affected-histogram name="NetConnectivity3.NonPacedPacket"/>
  <affected-histogram name="NetConnectivity3.PacedPacket"/>
  <affected-histogram name="NetConnectivity3.StartPacket"/>
</histogram_suffixes>

<histogram_suffixes name="NetConnectivity3AckReceivedForNthPacket"
    separator=".">
  <suffix name="Sent21.AckReceivedForNthPacket"
      label="Each packet was numbered, as was its ACK sent back by Google.
             This histogram records, for each packet number, how often we
             received an ACK for that packet."/>
  <affected-histogram name="NetConnectivity3.NonPacedPacket"/>
  <affected-histogram name="NetConnectivity3.PacedPacket"/>
  <affected-histogram name="NetConnectivity3.StartPacket"/>
</histogram_suffixes>

<histogram_suffixes name="NetConnectivity3AcksReceivedFromFirst" separator=".">
  <suffix name="AcksReceivedFromFirst02Packets" label="2 packets."/>
  <suffix name="AcksReceivedFromFirst03Packets" label="3 packets."/>
  <suffix name="AcksReceivedFromFirst04Packets" label="4 packets."/>
  <suffix name="AcksReceivedFromFirst05Packets" label="5 packets."/>
  <suffix name="AcksReceivedFromFirst06Packets" label="6 packets."/>
  <suffix name="AcksReceivedFromFirst07Packets" label="7 packets."/>
  <suffix name="AcksReceivedFromFirst08Packets" label="8 packets."/>
  <suffix name="AcksReceivedFromFirst09Packets" label="9 packets."/>
  <suffix name="AcksReceivedFromFirst10Packets" label="10 packets."/>
  <suffix name="AcksReceivedFromFirst11Packets" label="11 packets."/>
  <suffix name="AcksReceivedFromFirst12Packets" label="12 packets."/>
  <suffix name="AcksReceivedFromFirst13Packets" label="13 packets."/>
  <suffix name="AcksReceivedFromFirst14Packets" label="14 packets."/>
  <suffix name="AcksReceivedFromFirst15Packets" label="15 packets."/>
  <suffix name="AcksReceivedFromFirst16Packets" label="16 packets."/>
  <suffix name="AcksReceivedFromFirst17Packets" label="17 packets."/>
  <suffix name="AcksReceivedFromFirst18Packets" label="18 packets."/>
  <suffix name="AcksReceivedFromFirst19Packets" label="19 packets."/>
  <suffix name="AcksReceivedFromFirst20Packets" label="20 packets."/>
  <suffix name="AcksReceivedFromFirst21Packets" label="21 packets."/>
  <affected-histogram name="NetConnectivity3.NonPacedPacket.Sent21"/>
  <affected-histogram name="NetConnectivity3.PacedPacket.Sent21"/>
  <affected-histogram name="NetConnectivity3.StartPacket.Sent21"/>
</histogram_suffixes>

<histogram_suffixes name="NetConnectivity3GotAnAck" separator=".">
  <suffix name="Sent21.GotAnAck"
      label="The histogram shows if we ever got an ACK for a packet in our
             series of 21."/>
  <affected-histogram name="NetConnectivity3.NonPacedPacket"/>
  <affected-histogram name="NetConnectivity3.PacedPacket"/>
  <affected-histogram name="NetConnectivity3.StartPacket"/>
</histogram_suffixes>

<histogram_suffixes name="NetConnectivity3PacketDelay1" separator=".">
  <suffix name="Sent21.443"
      label="This histogram shows the difference between the time when we
             have received 1st byte from the server and the last time when we
             have received data from the server on port 443."/>
  <suffix name="Sent21.6121"
      label="This histogram shows the difference between the time when we
             have received 1st byte from the server and the last time when we
             have received data from the server on port 6121."/>
  <affected-histogram name="NetConnectivity3.NonPacedPacket"/>
  <affected-histogram name="NetConnectivity3.PacedPacket"/>
  <affected-histogram name="NetConnectivity3.StartPacket"/>
</histogram_suffixes>

<histogram_suffixes name="NetConnectivity3PacketDelay2" separator=".">
  <suffix name="443.100B.PacketDelay"
      label="100 bytes of data is sent on port 443."/>
  <suffix name="443.1200B.PacketDelay"
      label="1200 bytes of data is sent on port 443."/>
  <suffix name="443.500B.PacketDelay"
      label="500 bytes of data is sent on port 443."/>
  <suffix name="6121.100B.PacketDelay"
      label="100 bytes of data is sent on port 6121."/>
  <suffix name="6121.1200B.PacketDelay"
      label="1200 bytes of data is sent on port 6121."/>
  <suffix name="6121.500B.PacketDelay"
      label="500 bytes of data is sent on port 6121."/>
  <affected-histogram name="NetConnectivity3.NonPacedPacket.Sent21"/>
  <affected-histogram name="NetConnectivity3.PacedPacket.Sent21"/>
  <affected-histogram name="NetConnectivity3.StartPacket.Sent21"/>
</histogram_suffixes>

<histogram_suffixes name="NetConnectivity3PacketRTT" separator=".">
  <suffix name="Sent21.Success.RTT" label="The histogram shows the RTT for"/>
  <affected-histogram name="NetConnectivity3.NonPacedPacket"/>
  <affected-histogram name="NetConnectivity3.PacedPacket"/>
  <affected-histogram name="NetConnectivity3.StartPacket"/>
</histogram_suffixes>

<histogram_suffixes name="NetConnectivity3Packets" separator=".">
  <suffix name="Packet01" label="1st packet."/>
  <suffix name="Packet02" label="2nd packet."/>
  <suffix name="Packet03" label="3rd packet."/>
  <suffix name="Packet10" label="10th packet."/>
  <suffix name="Packet20" label="20th packet."/>
  <affected-histogram
      name="NetConnectivity3.NonPacedPacket.Sent21.Success.RTT"/>
  <affected-histogram name="NetConnectivity3.PacedPacket.Sent21.Success.RTT"/>
  <affected-histogram name="NetConnectivity3.StartPacket.Sent21.Success.RTT"/>
</histogram_suffixes>

<histogram_suffixes name="NetConnectivity3PacketsSent" separator=".">
  <suffix name="Sent21.PacketsSent"
      label="This histogram records how many packets (out of 21 attempted)
             were sent to the server via UDP."/>
  <suffix name="Send6.SeriesAcked"
      label="Chrome sends 6 UDP packets in a row to test to see if there is a
             probabalistic dependency in packet loss for consecutive packets.
             We record a bit vector of packets received, where the least
             significant bit is a 1 if the first packet was received, etc.
             For example, if all packets other than packet 2 and 4 are
             responded to, then we'd have a sample (in binary) of 110101B, or
             53."/>
  <affected-histogram name="NetConnectivity3.NonPacedPacket"/>
  <affected-histogram name="NetConnectivity3.PacedPacket"/>
  <affected-histogram name="NetConnectivity3.StartPacket"/>
</histogram_suffixes>

<histogram_suffixes name="NetConnectivity3PacketsSentBytes" separator=".">
  <suffix name="443.100B" label="100 bytes of data is sent on port 443."/>
  <suffix name="443.500B" label="500 bytes of data is sent on port 443."/>
  <suffix name="443.1200B" label="1200 bytes of data is sent on port 443."/>
  <suffix name="6121.100B" label="100 bytes of data is sent on port 6121."/>
  <suffix name="6121.500B" label="500 bytes of data is sent on port 6121."/>
  <suffix name="6121.1200B" label="1200 bytes of data is sent on port 6121."/>
  <affected-histogram
      name="NetConnectivity3.NonPacedPacket.Sent21.AckReceivedForNthPacket"/>
  <affected-histogram
      name="NetConnectivity3.NonPacedPacket.Sent21.AcksReceivedFromFirst02Packets"/>
  <affected-histogram
      name="NetConnectivity3.NonPacedPacket.Sent21.AcksReceivedFromFirst03Packets"/>
  <affected-histogram
      name="NetConnectivity3.NonPacedPacket.Sent21.AcksReceivedFromFirst04Packets"/>
  <affected-histogram
      name="NetConnectivity3.NonPacedPacket.Sent21.AcksReceivedFromFirst05Packets"/>
  <affected-histogram
      name="NetConnectivity3.NonPacedPacket.Sent21.AcksReceivedFromFirst06Packets"/>
  <affected-histogram
      name="NetConnectivity3.NonPacedPacket.Sent21.AcksReceivedFromFirst07Packets"/>
  <affected-histogram
      name="NetConnectivity3.NonPacedPacket.Sent21.AcksReceivedFromFirst08Packets"/>
  <affected-histogram
      name="NetConnectivity3.NonPacedPacket.Sent21.AcksReceivedFromFirst09Packets"/>
  <affected-histogram
      name="NetConnectivity3.NonPacedPacket.Sent21.AcksReceivedFromFirst10Packets"/>
  <affected-histogram
      name="NetConnectivity3.NonPacedPacket.Sent21.AcksReceivedFromFirst11Packets"/>
  <affected-histogram
      name="NetConnectivity3.NonPacedPacket.Sent21.AcksReceivedFromFirst12Packets"/>
  <affected-histogram
      name="NetConnectivity3.NonPacedPacket.Sent21.AcksReceivedFromFirst13Packets"/>
  <affected-histogram
      name="NetConnectivity3.NonPacedPacket.Sent21.AcksReceivedFromFirst14Packets"/>
  <affected-histogram
      name="NetConnectivity3.NonPacedPacket.Sent21.AcksReceivedFromFirst15Packets"/>
  <affected-histogram
      name="NetConnectivity3.NonPacedPacket.Sent21.AcksReceivedFromFirst16Packets"/>
  <affected-histogram
      name="NetConnectivity3.NonPacedPacket.Sent21.AcksReceivedFromFirst17Packets"/>
  <affected-histogram
      name="NetConnectivity3.NonPacedPacket.Sent21.AcksReceivedFromFirst18Packets"/>
  <affected-histogram
      name="NetConnectivity3.NonPacedPacket.Sent21.AcksReceivedFromFirst19Packets"/>
  <affected-histogram
      name="NetConnectivity3.NonPacedPacket.Sent21.AcksReceivedFromFirst20Packets"/>
  <affected-histogram
      name="NetConnectivity3.NonPacedPacket.Sent21.AcksReceivedFromFirst21Packets"/>
  <affected-histogram name="NetConnectivity3.NonPacedPacket.Sent21.GotAnAck"/>
  <affected-histogram
      name="NetConnectivity3.NonPacedPacket.Sent21.PacketsSent"/>
  <affected-histogram
      name="NetConnectivity3.NonPacedPacket.Sent21.Success.RTT.Packet01"/>
  <affected-histogram
      name="NetConnectivity3.NonPacedPacket.Sent21.Success.RTT.Packet02"/>
  <affected-histogram
      name="NetConnectivity3.NonPacedPacket.Sent21.Success.RTT.Packet03"/>
  <affected-histogram
      name="NetConnectivity3.NonPacedPacket.Sent21.Success.RTT.Packet10"/>
  <affected-histogram
      name="NetConnectivity3.NonPacedPacket.Sent21.Success.RTT.Packet20"/>
  <affected-histogram
      name="NetConnectivity3.PacedPacket.Sent21.AckReceivedForNthPacket"/>
  <affected-histogram
      name="NetConnectivity3.PacedPacket.Sent21.AcksReceivedFromFirst02Packets"/>
  <affected-histogram
      name="NetConnectivity3.PacedPacket.Sent21.AcksReceivedFromFirst03Packets"/>
  <affected-histogram
      name="NetConnectivity3.PacedPacket.Sent21.AcksReceivedFromFirst04Packets"/>
  <affected-histogram
      name="NetConnectivity3.PacedPacket.Sent21.AcksReceivedFromFirst05Packets"/>
  <affected-histogram
      name="NetConnectivity3.PacedPacket.Sent21.AcksReceivedFromFirst06Packets"/>
  <affected-histogram
      name="NetConnectivity3.PacedPacket.Sent21.AcksReceivedFromFirst07Packets"/>
  <affected-histogram
      name="NetConnectivity3.PacedPacket.Sent21.AcksReceivedFromFirst08Packets"/>
  <affected-histogram
      name="NetConnectivity3.PacedPacket.Sent21.AcksReceivedFromFirst09Packets"/>
  <affected-histogram
      name="NetConnectivity3.PacedPacket.Sent21.AcksReceivedFromFirst10Packets"/>
  <affected-histogram
      name="NetConnectivity3.PacedPacket.Sent21.AcksReceivedFromFirst11Packets"/>
  <affected-histogram
      name="NetConnectivity3.PacedPacket.Sent21.AcksReceivedFromFirst12Packets"/>
  <affected-histogram
      name="NetConnectivity3.PacedPacket.Sent21.AcksReceivedFromFirst13Packets"/>
  <affected-histogram
      name="NetConnectivity3.PacedPacket.Sent21.AcksReceivedFromFirst14Packets"/>
  <affected-histogram
      name="NetConnectivity3.PacedPacket.Sent21.AcksReceivedFromFirst15Packets"/>
  <affected-histogram
      name="NetConnectivity3.PacedPacket.Sent21.AcksReceivedFromFirst16Packets"/>
  <affected-histogram
      name="NetConnectivity3.PacedPacket.Sent21.AcksReceivedFromFirst17Packets"/>
  <affected-histogram
      name="NetConnectivity3.PacedPacket.Sent21.AcksReceivedFromFirst18Packets"/>
  <affected-histogram
      name="NetConnectivity3.PacedPacket.Sent21.AcksReceivedFromFirst19Packets"/>
  <affected-histogram
      name="NetConnectivity3.PacedPacket.Sent21.AcksReceivedFromFirst20Packets"/>
  <affected-histogram
      name="NetConnectivity3.PacedPacket.Sent21.AcksReceivedFromFirst21Packets"/>
  <affected-histogram name="NetConnectivity3.PacedPacket.Sent21.GotAnAck"/>
  <affected-histogram name="NetConnectivity3.PacedPacket.Sent21.PacketsSent"/>
  <affected-histogram
      name="NetConnectivity3.PacedPacket.Sent21.Success.RTT.Packet01"/>
  <affected-histogram
      name="NetConnectivity3.PacedPacket.Sent21.Success.RTT.Packet02"/>
  <affected-histogram
      name="NetConnectivity3.PacedPacket.Sent21.Success.RTT.Packet03"/>
  <affected-histogram
      name="NetConnectivity3.PacedPacket.Sent21.Success.RTT.Packet10"/>
  <affected-histogram
      name="NetConnectivity3.PacedPacket.Sent21.Success.RTT.Packet20"/>
  <affected-histogram
      name="NetConnectivity3.StartPacket.Sent21.AckReceivedForNthPacket"/>
  <affected-histogram
      name="NetConnectivity3.StartPacket.Sent21.AcksReceivedFromFirst02Packets"/>
  <affected-histogram
      name="NetConnectivity3.StartPacket.Sent21.AcksReceivedFromFirst03Packets"/>
  <affected-histogram
      name="NetConnectivity3.StartPacket.Sent21.AcksReceivedFromFirst04Packets"/>
  <affected-histogram
      name="NetConnectivity3.StartPacket.Sent21.AcksReceivedFromFirst05Packets"/>
  <affected-histogram
      name="NetConnectivity3.StartPacket.Sent21.AcksReceivedFromFirst06Packets"/>
  <affected-histogram
      name="NetConnectivity3.StartPacket.Sent21.AcksReceivedFromFirst07Packets"/>
  <affected-histogram
      name="NetConnectivity3.StartPacket.Sent21.AcksReceivedFromFirst08Packets"/>
  <affected-histogram
      name="NetConnectivity3.StartPacket.Sent21.AcksReceivedFromFirst09Packets"/>
  <affected-histogram
      name="NetConnectivity3.StartPacket.Sent21.AcksReceivedFromFirst10Packets"/>
  <affected-histogram
      name="NetConnectivity3.StartPacket.Sent21.AcksReceivedFromFirst11Packets"/>
  <affected-histogram
      name="NetConnectivity3.StartPacket.Sent21.AcksReceivedFromFirst12Packets"/>
  <affected-histogram
      name="NetConnectivity3.StartPacket.Sent21.AcksReceivedFromFirst13Packets"/>
  <affected-histogram
      name="NetConnectivity3.StartPacket.Sent21.AcksReceivedFromFirst14Packets"/>
  <affected-histogram
      name="NetConnectivity3.StartPacket.Sent21.AcksReceivedFromFirst15Packets"/>
  <affected-histogram
      name="NetConnectivity3.StartPacket.Sent21.AcksReceivedFromFirst16Packets"/>
  <affected-histogram
      name="NetConnectivity3.StartPacket.Sent21.AcksReceivedFromFirst17Packets"/>
  <affected-histogram
      name="NetConnectivity3.StartPacket.Sent21.AcksReceivedFromFirst18Packets"/>
  <affected-histogram
      name="NetConnectivity3.StartPacket.Sent21.AcksReceivedFromFirst19Packets"/>
  <affected-histogram
      name="NetConnectivity3.StartPacket.Sent21.AcksReceivedFromFirst20Packets"/>
  <affected-histogram
      name="NetConnectivity3.StartPacket.Sent21.AcksReceivedFromFirst21Packets"/>
  <affected-histogram name="NetConnectivity3.StartPacket.Sent21.GotAnAck"/>
  <affected-histogram name="NetConnectivity3.StartPacket.Sent21.PacketsSent"/>
  <affected-histogram
      name="NetConnectivity3.StartPacket.Sent21.Success.RTT.Packet01"/>
  <affected-histogram
      name="NetConnectivity3.StartPacket.Sent21.Success.RTT.Packet02"/>
  <affected-histogram
      name="NetConnectivity3.StartPacket.Sent21.Success.RTT.Packet03"/>
  <affected-histogram
      name="NetConnectivity3.StartPacket.Sent21.Success.RTT.Packet10"/>
  <affected-histogram
      name="NetConnectivity3.StartPacket.Sent21.Success.RTT.Packet20"/>
</histogram_suffixes>

<histogram_suffixes name="NetConnectivity3Send6Acked" separator=".">
  <suffix name="443.100B" label="100 bytes of data is sent on port 443."/>
  <suffix name="443.100B.NoProxy"
      label="100 bytes of data is sent on port 443 with no proxy."/>
  <suffix name="443.500B" label="500 bytes of data is sent on port 443."/>
  <suffix name="443.500B.NoProxy"
      label="500 bytes of data is sent on port 443 with no proxy."/>
  <suffix name="443.1200B" label="1200 bytes of data is sent on port 443."/>
  <suffix name="443.1200B.NoProxy"
      label="1200 bytes of data is sent on port 443 with no proxy."/>
  <suffix name="6121.100B" label="100 bytes of data is sent on port 6121."/>
  <suffix name="6121.100B.NoProxy"
      label="100 bytes of data is sent on port 6121 with no proxy."/>
  <suffix name="6121.500B" label="500 bytes of data is sent on port 6121."/>
  <suffix name="6121.500B.NoProxy"
      label="500 bytes of data is sent on port 6121 with no proxy."/>
  <suffix name="6121.1200B" label="1200 bytes of data is sent on port 6121."/>
  <suffix name="6121.1200B.NoProxy"
      label="1200 bytes of data is sent on port 6121 with no proxy."/>
  <affected-histogram name="NetConnectivity3.NonPacedPacket.Send6.SeriesAcked"/>
  <affected-histogram name="NetConnectivity3.PacedPacket.Send6.SeriesAcked"/>
  <affected-histogram name="NetConnectivity3.StartPacket.Send6.PacketsSent"/>
  <affected-histogram name="NetConnectivity3.StartPacket.Send6.SeriesAcked"/>
</histogram_suffixes>

<histogram_suffixes name="NetConnectivity4a" separator=".">
  <suffix name="NATBind.Sent2"
      label="Two packets were sent spreading over a random period, to test if
             the NAT dropped the binding. Afterwords, an extra (short) packet
             was sent with renewed NAT binding to test whether the network
             that was used to deliver the first packet is still connected.
             Results are only shown in this histogram if at least ten packets
             were received in the StartPacket test."/>
  <suffix name="NonPacedPacket"
      label="21 Packets were sent as rapidly as possible. Results are only
             shown in this histogram if at least two packets were received in
             the StartPacket Test."/>
  <suffix name="PacedPacket"
      label="21 Packets were sent at equal intervals, which were selected to
             match the bandwidth discovered during the StartPacket test.
             Results are only shown in this histogram if at least two packets
             were received in the StartPacket Test."/>
  <suffix name="StartPacket"
      label="21 Packets were sent as rapidly as possible, just after the
             client successfully sent a UMA upload. Each packet was numbered
             when it was sent by Google."/>
  <affected-histogram name="NetConnectivity4"/>
  <affected-histogram name="NetConnectivity5"/>
</histogram_suffixes>

<histogram_suffixes name="NetConnectivity4NATBindPacketReceives" separator=".">
  <suffix name="Bind.Failure"
      label="Only when the second packet never arrived (we wait for 10 extra
             seconds) and the first and the extra (short) packets arrived did
             we record the duration in seconds between the sendings of the
             first two packets in this histogram."/>
  <suffix name="Bind.Success"
      label="Only when all three packets including the extra (short) packet
             arrived did we record the duration in seconds between the
             sendings of the first two packets in this histogram."/>
  <suffix name="Connectivity.Failure"
      label="Only when the extra (short) packet (with renewed NAT binding)
             never arrived (we wait for 10 extra seconds) did we record the
             duration in seconds between the sendings of the first two
             packets in this histogram."/>
  <suffix name="Connectivity.Success"
      label="Only when the extra (short) packet arrived did we record the
             duration in seconds between the sendings of the first two
             packets in this histogram."/>
  <suffix name="SendToLastRecvDelay"
      label="This histogram records the time duration (in milliseconds)
             between the client sending the request and the receiving of the
             second packet sent from the server, excluding the idle time
             between sendings of the first two packets. Results are only
             shown if the first two packets are both received."/>
  <affected-histogram name="NetConnectivity4.NATBind.Sent2"/>
  <affected-histogram name="NetConnectivity5.NATBind.Sent2"/>
</histogram_suffixes>

<histogram_suffixes name="NetConnectivity4PacketFirst6" separator=".">
  <suffix name="First6.SeriesRecv"
      label="This histogram records a bit vector of the first 6 packets sent,
             where the least significant bit is a 1 if the first packet was
             received, etc. For example, if all packets other than packet 2
             and 4 are received, then we'd have a sample (in binary) of
             110101B, or 53."/>
  <suffix name="Sent21"
      label="This histogram shows the number of packets received from the
             first"/>
  <affected-histogram name="NetConnectivity4.NonPacedPacket"/>
  <affected-histogram name="NetConnectivity4.PacedPacket"/>
  <affected-histogram name="NetConnectivity4.StartPacket"/>
  <affected-histogram name="NetConnectivity5.NonPacedPacket"/>
  <affected-histogram name="NetConnectivity5.PacedPacket"/>
  <affected-histogram name="NetConnectivity5.StartPacket"/>
</histogram_suffixes>

<histogram_suffixes name="NetConnectivity4PacketReceives" separator=".">
  <suffix name="NumRecvFromFirst01Packets" label="1 packet."/>
  <suffix name="NumRecvFromFirst02Packets" label="2 packets."/>
  <suffix name="NumRecvFromFirst03Packets" label="3 packets."/>
  <suffix name="NumRecvFromFirst04Packets" label="4 packets."/>
  <suffix name="NumRecvFromFirst05Packets" label="5 packets."/>
  <suffix name="NumRecvFromFirst06Packets" label="6 packets."/>
  <suffix name="NumRecvFromFirst07Packets" label="7 packets."/>
  <suffix name="NumRecvFromFirst08Packets" label="8 packets."/>
  <suffix name="NumRecvFromFirst09Packets" label="9 packets."/>
  <suffix name="NumRecvFromFirst10Packets" label="10 packets."/>
  <suffix name="NumRecvFromFirst11Packets" label="11 packets."/>
  <suffix name="NumRecvFromFirst12Packets" label="12 packets."/>
  <suffix name="NumRecvFromFirst13Packets" label="13 packets."/>
  <suffix name="NumRecvFromFirst14Packets" label="14 packets."/>
  <suffix name="NumRecvFromFirst15Packets" label="15 packets."/>
  <suffix name="NumRecvFromFirst16Packets" label="16 packets."/>
  <suffix name="NumRecvFromFirst17Packets" label="17 packets."/>
  <suffix name="NumRecvFromFirst18Packets" label="18 packets."/>
  <suffix name="NumRecvFromFirst19Packets" label="19 packets."/>
  <suffix name="NumRecvFromFirst20Packets" label="20 packets."/>
  <suffix name="NumRecvFromFirst21Packets" label="21 packets."/>
  <affected-histogram name="NetConnectivity4.NonPacedPacket.Sent21"/>
  <affected-histogram name="NetConnectivity4.PacedPacket.Sent21"/>
  <affected-histogram name="NetConnectivity4.StartPacket.Sent21"/>
  <affected-histogram name="NetConnectivity5.NonPacedPacket.Sent21"/>
  <affected-histogram name="NetConnectivity5.PacedPacket.Sent21"/>
  <affected-histogram name="NetConnectivity5.StartPacket.Sent21"/>
</histogram_suffixes>

<histogram_suffixes name="NetConnectivity4PacketRTT" separator=".">
  <suffix name="Sent21.GotAPacket"
      label="The histogram shows if we ever got at least one packet in our
             series of 21."/>
  <suffix name="Sent21.PacketDelay"
      label="The histogram shows the average inter-arrival time between every
             two consecutive packets we receive in our series of 21
             multiplied by 20 (so this is essentially the time duration
             between the first and the last received packets)."/>
  <suffix name="Sent21.PacketsRecv"
      label="The histogram shows how many packets we receive in our series of
             21."/>
  <suffix name="Sent21.RecvNthPacket"
      label="Each packet was numbered when it was sent by Google. This
             histogram records, for each packet number, how often we received
             that packet."/>
  <suffix name="Sent21.SendToLastRecvDelay"
      label="This histogram records the time duration between the client
             sending the request and the receiving of the last packet sent
             from the server, excluding the total pacing time requested by
             the client. Results are only shown if at least two packets are
             received."/>
  <suffix name="Sent21.Success.RTT"
      label="The histogram shows the RTT for the"/>
  <affected-histogram name="NetConnectivity4.NonPacedPacket"/>
  <affected-histogram name="NetConnectivity4.PacedPacket"/>
  <affected-histogram name="NetConnectivity4.StartPacket"/>
  <affected-histogram name="NetConnectivity5.NonPacedPacket"/>
  <affected-histogram name="NetConnectivity5.PacedPacket"/>
  <affected-histogram name="NetConnectivity5.StartPacket"/>
</histogram_suffixes>

<histogram_suffixes name="NetConnectivity4PacketRTTSeries" separator=".">
  <suffix name="Packet01" label="1st packet."/>
  <suffix name="Packet02" label="2nd packet."/>
  <suffix name="Packet03" label="3rd packet."/>
  <suffix name="Packet10" label="10th packet."/>
  <suffix name="Packet20" label="20th packet."/>
  <affected-histogram
      name="NetConnectivity4.NonPacedPacket.Sent21.Success.RTT"/>
  <affected-histogram name="NetConnectivity4.PacedPacket.Sent21.Success.RTT"/>
  <affected-histogram name="NetConnectivity4.StartPacket.Sent21.Success.RTT"/>
  <affected-histogram
      name="NetConnectivity5.NonPacedPacket.Sent21.Success.RTT"/>
  <affected-histogram name="NetConnectivity5.PacedPacket.Sent21.Success.RTT"/>
  <affected-histogram name="NetConnectivity5.StartPacket.Sent21.Success.RTT"/>
</histogram_suffixes>

<histogram_suffixes name="NetConnectivity4PacketsAll" separator=".">
  <suffix name="443.100B" label="100 bytes of data is sent on port 443."/>
  <suffix name="443.1200B" label="1200 bytes of data is sent on port 443."/>
  <suffix name="443.500B" label="500 bytes of data is sent on port 443."/>
  <suffix name="80.100B" label="100 bytes of data is sent on port 80."/>
  <suffix name="80.1200B" label="1200 bytes of data is sent on port 80."/>
  <suffix name="80.500B" label="500 bytes of data is sent on port 80."/>
  <affected-histogram name="NetConnectivity4.NATBind.Sent2.Bind.Failure"/>
  <affected-histogram name="NetConnectivity4.NATBind.Sent2.Bind.Success"/>
  <affected-histogram
      name="NetConnectivity4.NATBind.Sent2.Connectivity.Failure"/>
  <affected-histogram
      name="NetConnectivity4.NATBind.Sent2.Connectivity.Success"/>
  <affected-histogram
      name="NetConnectivity4.NATBind.Sent2.SendToLastRecvDelay"/>
  <affected-histogram name="NetConnectivity4.NonPacedPacket.Sent21.GotAPacket"/>
  <affected-histogram
      name="NetConnectivity4.NonPacedPacket.Sent21.NumRecvFromFirst01Packets"/>
  <affected-histogram
      name="NetConnectivity4.NonPacedPacket.Sent21.NumRecvFromFirst02Packets"/>
  <affected-histogram
      name="NetConnectivity4.NonPacedPacket.Sent21.NumRecvFromFirst03Packets"/>
  <affected-histogram
      name="NetConnectivity4.NonPacedPacket.Sent21.NumRecvFromFirst04Packets"/>
  <affected-histogram
      name="NetConnectivity4.NonPacedPacket.Sent21.NumRecvFromFirst05Packets"/>
  <affected-histogram
      name="NetConnectivity4.NonPacedPacket.Sent21.NumRecvFromFirst06Packets"/>
  <affected-histogram
      name="NetConnectivity4.NonPacedPacket.Sent21.NumRecvFromFirst07Packets"/>
  <affected-histogram
      name="NetConnectivity4.NonPacedPacket.Sent21.NumRecvFromFirst08Packets"/>
  <affected-histogram
      name="NetConnectivity4.NonPacedPacket.Sent21.NumRecvFromFirst09Packets"/>
  <affected-histogram
      name="NetConnectivity4.NonPacedPacket.Sent21.NumRecvFromFirst10Packets"/>
  <affected-histogram
      name="NetConnectivity4.NonPacedPacket.Sent21.NumRecvFromFirst11Packets"/>
  <affected-histogram
      name="NetConnectivity4.NonPacedPacket.Sent21.NumRecvFromFirst12Packets"/>
  <affected-histogram
      name="NetConnectivity4.NonPacedPacket.Sent21.NumRecvFromFirst13Packets"/>
  <affected-histogram
      name="NetConnectivity4.NonPacedPacket.Sent21.NumRecvFromFirst14Packets"/>
  <affected-histogram
      name="NetConnectivity4.NonPacedPacket.Sent21.NumRecvFromFirst15Packets"/>
  <affected-histogram
      name="NetConnectivity4.NonPacedPacket.Sent21.NumRecvFromFirst16Packets"/>
  <affected-histogram
      name="NetConnectivity4.NonPacedPacket.Sent21.NumRecvFromFirst17Packets"/>
  <affected-histogram
      name="NetConnectivity4.NonPacedPacket.Sent21.NumRecvFromFirst18Packets"/>
  <affected-histogram
      name="NetConnectivity4.NonPacedPacket.Sent21.NumRecvFromFirst19Packets"/>
  <affected-histogram
      name="NetConnectivity4.NonPacedPacket.Sent21.NumRecvFromFirst20Packets"/>
  <affected-histogram
      name="NetConnectivity4.NonPacedPacket.Sent21.NumRecvFromFirst21Packets"/>
  <affected-histogram
      name="NetConnectivity4.NonPacedPacket.Sent21.PacketDelay"/>
  <affected-histogram
      name="NetConnectivity4.NonPacedPacket.Sent21.PacketsRecv"/>
  <affected-histogram
      name="NetConnectivity4.NonPacedPacket.Sent21.RecvNthPacket"/>
  <affected-histogram
      name="NetConnectivity4.NonPacedPacket.Sent21.SendToLastRecvDelay"/>
  <affected-histogram
      name="NetConnectivity4.NonPacedPacket.Sent21.Success.RTT.Packet01"/>
  <affected-histogram
      name="NetConnectivity4.NonPacedPacket.Sent21.Success.RTT.Packet02"/>
  <affected-histogram
      name="NetConnectivity4.NonPacedPacket.Sent21.Success.RTT.Packet03"/>
  <affected-histogram
      name="NetConnectivity4.NonPacedPacket.Sent21.Success.RTT.Packet10"/>
  <affected-histogram
      name="NetConnectivity4.NonPacedPacket.Sent21.Success.RTT.Packet20"/>
  <affected-histogram name="NetConnectivity4.PacedPacket.Sent21.GotAPacket"/>
  <affected-histogram
      name="NetConnectivity4.PacedPacket.Sent21.NumRecvFromFirst01Packets"/>
  <affected-histogram
      name="NetConnectivity4.PacedPacket.Sent21.NumRecvFromFirst02Packets"/>
  <affected-histogram
      name="NetConnectivity4.PacedPacket.Sent21.NumRecvFromFirst03Packets"/>
  <affected-histogram
      name="NetConnectivity4.PacedPacket.Sent21.NumRecvFromFirst04Packets"/>
  <affected-histogram
      name="NetConnectivity4.PacedPacket.Sent21.NumRecvFromFirst05Packets"/>
  <affected-histogram
      name="NetConnectivity4.PacedPacket.Sent21.NumRecvFromFirst06Packets"/>
  <affected-histogram
      name="NetConnectivity4.PacedPacket.Sent21.NumRecvFromFirst07Packets"/>
  <affected-histogram
      name="NetConnectivity4.PacedPacket.Sent21.NumRecvFromFirst08Packets"/>
  <affected-histogram
      name="NetConnectivity4.PacedPacket.Sent21.NumRecvFromFirst09Packets"/>
  <affected-histogram
      name="NetConnectivity4.PacedPacket.Sent21.NumRecvFromFirst10Packets"/>
  <affected-histogram
      name="NetConnectivity4.PacedPacket.Sent21.NumRecvFromFirst11Packets"/>
  <affected-histogram
      name="NetConnectivity4.PacedPacket.Sent21.NumRecvFromFirst12Packets"/>
  <affected-histogram
      name="NetConnectivity4.PacedPacket.Sent21.NumRecvFromFirst13Packets"/>
  <affected-histogram
      name="NetConnectivity4.PacedPacket.Sent21.NumRecvFromFirst14Packets"/>
  <affected-histogram
      name="NetConnectivity4.PacedPacket.Sent21.NumRecvFromFirst15Packets"/>
  <affected-histogram
      name="NetConnectivity4.PacedPacket.Sent21.NumRecvFromFirst16Packets"/>
  <affected-histogram
      name="NetConnectivity4.PacedPacket.Sent21.NumRecvFromFirst17Packets"/>
  <affected-histogram
      name="NetConnectivity4.PacedPacket.Sent21.NumRecvFromFirst18Packets"/>
  <affected-histogram
      name="NetConnectivity4.PacedPacket.Sent21.NumRecvFromFirst19Packets"/>
  <affected-histogram
      name="NetConnectivity4.PacedPacket.Sent21.NumRecvFromFirst20Packets"/>
  <affected-histogram
      name="NetConnectivity4.PacedPacket.Sent21.NumRecvFromFirst21Packets"/>
  <affected-histogram name="NetConnectivity4.PacedPacket.Sent21.PacketDelay"/>
  <affected-histogram name="NetConnectivity4.PacedPacket.Sent21.PacketsRecv"/>
  <affected-histogram name="NetConnectivity4.PacedPacket.Sent21.RecvNthPacket"/>
  <affected-histogram
      name="NetConnectivity4.PacedPacket.Sent21.SendToLastRecvDelay"/>
  <affected-histogram
      name="NetConnectivity4.PacedPacket.Sent21.Success.RTT.Packet01"/>
  <affected-histogram
      name="NetConnectivity4.PacedPacket.Sent21.Success.RTT.Packet02"/>
  <affected-histogram
      name="NetConnectivity4.PacedPacket.Sent21.Success.RTT.Packet03"/>
  <affected-histogram
      name="NetConnectivity4.PacedPacket.Sent21.Success.RTT.Packet10"/>
  <affected-histogram
      name="NetConnectivity4.PacedPacket.Sent21.Success.RTT.Packet20"/>
  <affected-histogram name="NetConnectivity4.StartPacket.Sent21.GotAPacket"/>
  <affected-histogram
      name="NetConnectivity4.StartPacket.Sent21.NumRecvFromFirst01Packets"/>
  <affected-histogram
      name="NetConnectivity4.StartPacket.Sent21.NumRecvFromFirst02Packets"/>
  <affected-histogram
      name="NetConnectivity4.StartPacket.Sent21.NumRecvFromFirst03Packets"/>
  <affected-histogram
      name="NetConnectivity4.StartPacket.Sent21.NumRecvFromFirst04Packets"/>
  <affected-histogram
      name="NetConnectivity4.StartPacket.Sent21.NumRecvFromFirst05Packets"/>
  <affected-histogram
      name="NetConnectivity4.StartPacket.Sent21.NumRecvFromFirst06Packets"/>
  <affected-histogram
      name="NetConnectivity4.StartPacket.Sent21.NumRecvFromFirst07Packets"/>
  <affected-histogram
      name="NetConnectivity4.StartPacket.Sent21.NumRecvFromFirst08Packets"/>
  <affected-histogram
      name="NetConnectivity4.StartPacket.Sent21.NumRecvFromFirst09Packets"/>
  <affected-histogram
      name="NetConnectivity4.StartPacket.Sent21.NumRecvFromFirst10Packets"/>
  <affected-histogram
      name="NetConnectivity4.StartPacket.Sent21.NumRecvFromFirst11Packets"/>
  <affected-histogram
      name="NetConnectivity4.StartPacket.Sent21.NumRecvFromFirst12Packets"/>
  <affected-histogram
      name="NetConnectivity4.StartPacket.Sent21.NumRecvFromFirst13Packets"/>
  <affected-histogram
      name="NetConnectivity4.StartPacket.Sent21.NumRecvFromFirst14Packets"/>
  <affected-histogram
      name="NetConnectivity4.StartPacket.Sent21.NumRecvFromFirst15Packets"/>
  <affected-histogram
      name="NetConnectivity4.StartPacket.Sent21.NumRecvFromFirst16Packets"/>
  <affected-histogram
      name="NetConnectivity4.StartPacket.Sent21.NumRecvFromFirst17Packets"/>
  <affected-histogram
      name="NetConnectivity4.StartPacket.Sent21.NumRecvFromFirst18Packets"/>
  <affected-histogram
      name="NetConnectivity4.StartPacket.Sent21.NumRecvFromFirst19Packets"/>
  <affected-histogram
      name="NetConnectivity4.StartPacket.Sent21.NumRecvFromFirst20Packets"/>
  <affected-histogram
      name="NetConnectivity4.StartPacket.Sent21.NumRecvFromFirst21Packets"/>
  <affected-histogram name="NetConnectivity4.StartPacket.Sent21.PacketDelay"/>
  <affected-histogram name="NetConnectivity4.StartPacket.Sent21.PacketsRecv"/>
  <affected-histogram name="NetConnectivity4.StartPacket.Sent21.RecvNthPacket"/>
  <affected-histogram
      name="NetConnectivity4.StartPacket.Sent21.SendToLastRecvDelay"/>
  <affected-histogram
      name="NetConnectivity4.StartPacket.Sent21.Success.RTT.Packet01"/>
  <affected-histogram
      name="NetConnectivity4.StartPacket.Sent21.Success.RTT.Packet02"/>
  <affected-histogram
      name="NetConnectivity4.StartPacket.Sent21.Success.RTT.Packet03"/>
  <affected-histogram
      name="NetConnectivity4.StartPacket.Sent21.Success.RTT.Packet10"/>
  <affected-histogram
      name="NetConnectivity4.StartPacket.Sent21.Success.RTT.Packet20"/>
  <affected-histogram name="NetConnectivity5.NATBind.Sent2.Bind.Failure"/>
  <affected-histogram name="NetConnectivity5.NATBind.Sent2.Bind.Success"/>
  <affected-histogram
      name="NetConnectivity5.NATBind.Sent2.Connectivity.Failure"/>
  <affected-histogram
      name="NetConnectivity5.NATBind.Sent2.Connectivity.Success"/>
  <affected-histogram
      name="NetConnectivity5.NATBind.Sent2.SendToLastRecvDelay"/>
  <affected-histogram name="NetConnectivity5.NonPacedPacket.Sent21.GotAPacket"/>
  <affected-histogram
      name="NetConnectivity5.NonPacedPacket.Sent21.NumRecvFromFirst01Packets"/>
  <affected-histogram
      name="NetConnectivity5.NonPacedPacket.Sent21.NumRecvFromFirst02Packets"/>
  <affected-histogram
      name="NetConnectivity5.NonPacedPacket.Sent21.NumRecvFromFirst03Packets"/>
  <affected-histogram
      name="NetConnectivity5.NonPacedPacket.Sent21.NumRecvFromFirst04Packets"/>
  <affected-histogram
      name="NetConnectivity5.NonPacedPacket.Sent21.NumRecvFromFirst05Packets"/>
  <affected-histogram
      name="NetConnectivity5.NonPacedPacket.Sent21.NumRecvFromFirst06Packets"/>
  <affected-histogram
      name="NetConnectivity5.NonPacedPacket.Sent21.NumRecvFromFirst07Packets"/>
  <affected-histogram
      name="NetConnectivity5.NonPacedPacket.Sent21.NumRecvFromFirst08Packets"/>
  <affected-histogram
      name="NetConnectivity5.NonPacedPacket.Sent21.NumRecvFromFirst09Packets"/>
  <affected-histogram
      name="NetConnectivity5.NonPacedPacket.Sent21.NumRecvFromFirst10Packets"/>
  <affected-histogram
      name="NetConnectivity5.NonPacedPacket.Sent21.NumRecvFromFirst11Packets"/>
  <affected-histogram
      name="NetConnectivity5.NonPacedPacket.Sent21.NumRecvFromFirst12Packets"/>
  <affected-histogram
      name="NetConnectivity5.NonPacedPacket.Sent21.NumRecvFromFirst13Packets"/>
  <affected-histogram
      name="NetConnectivity5.NonPacedPacket.Sent21.NumRecvFromFirst14Packets"/>
  <affected-histogram
      name="NetConnectivity5.NonPacedPacket.Sent21.NumRecvFromFirst15Packets"/>
  <affected-histogram
      name="NetConnectivity5.NonPacedPacket.Sent21.NumRecvFromFirst16Packets"/>
  <affected-histogram
      name="NetConnectivity5.NonPacedPacket.Sent21.NumRecvFromFirst17Packets"/>
  <affected-histogram
      name="NetConnectivity5.NonPacedPacket.Sent21.NumRecvFromFirst18Packets"/>
  <affected-histogram
      name="NetConnectivity5.NonPacedPacket.Sent21.NumRecvFromFirst19Packets"/>
  <affected-histogram
      name="NetConnectivity5.NonPacedPacket.Sent21.NumRecvFromFirst20Packets"/>
  <affected-histogram
      name="NetConnectivity5.NonPacedPacket.Sent21.NumRecvFromFirst21Packets"/>
  <affected-histogram
      name="NetConnectivity5.NonPacedPacket.Sent21.PacketDelay"/>
  <affected-histogram
      name="NetConnectivity5.NonPacedPacket.Sent21.PacketsRecv"/>
  <affected-histogram
      name="NetConnectivity5.NonPacedPacket.Sent21.RecvNthPacket"/>
  <affected-histogram
      name="NetConnectivity5.NonPacedPacket.Sent21.SendToLastRecvDelay"/>
  <affected-histogram
      name="NetConnectivity5.NonPacedPacket.Sent21.Success.RTT.Packet01"/>
  <affected-histogram
      name="NetConnectivity5.NonPacedPacket.Sent21.Success.RTT.Packet02"/>
  <affected-histogram
      name="NetConnectivity5.NonPacedPacket.Sent21.Success.RTT.Packet03"/>
  <affected-histogram
      name="NetConnectivity5.NonPacedPacket.Sent21.Success.RTT.Packet10"/>
  <affected-histogram
      name="NetConnectivity5.NonPacedPacket.Sent21.Success.RTT.Packet20"/>
  <affected-histogram name="NetConnectivity5.PacedPacket.Sent21.GotAPacket"/>
  <affected-histogram
      name="NetConnectivity5.PacedPacket.Sent21.NumRecvFromFirst01Packets"/>
  <affected-histogram
      name="NetConnectivity5.PacedPacket.Sent21.NumRecvFromFirst02Packets"/>
  <affected-histogram
      name="NetConnectivity5.PacedPacket.Sent21.NumRecvFromFirst03Packets"/>
  <affected-histogram
      name="NetConnectivity5.PacedPacket.Sent21.NumRecvFromFirst04Packets"/>
  <affected-histogram
      name="NetConnectivity5.PacedPacket.Sent21.NumRecvFromFirst05Packets"/>
  <affected-histogram
      name="NetConnectivity5.PacedPacket.Sent21.NumRecvFromFirst06Packets"/>
  <affected-histogram
      name="NetConnectivity5.PacedPacket.Sent21.NumRecvFromFirst07Packets"/>
  <affected-histogram
      name="NetConnectivity5.PacedPacket.Sent21.NumRecvFromFirst08Packets"/>
  <affected-histogram
      name="NetConnectivity5.PacedPacket.Sent21.NumRecvFromFirst09Packets"/>
  <affected-histogram
      name="NetConnectivity5.PacedPacket.Sent21.NumRecvFromFirst10Packets"/>
  <affected-histogram
      name="NetConnectivity5.PacedPacket.Sent21.NumRecvFromFirst11Packets"/>
  <affected-histogram
      name="NetConnectivity5.PacedPacket.Sent21.NumRecvFromFirst12Packets"/>
  <affected-histogram
      name="NetConnectivity5.PacedPacket.Sent21.NumRecvFromFirst13Packets"/>
  <affected-histogram
      name="NetConnectivity5.PacedPacket.Sent21.NumRecvFromFirst14Packets"/>
  <affected-histogram
      name="NetConnectivity5.PacedPacket.Sent21.NumRecvFromFirst15Packets"/>
  <affected-histogram
      name="NetConnectivity5.PacedPacket.Sent21.NumRecvFromFirst16Packets"/>
  <affected-histogram
      name="NetConnectivity5.PacedPacket.Sent21.NumRecvFromFirst17Packets"/>
  <affected-histogram
      name="NetConnectivity5.PacedPacket.Sent21.NumRecvFromFirst18Packets"/>
  <affected-histogram
      name="NetConnectivity5.PacedPacket.Sent21.NumRecvFromFirst19Packets"/>
  <affected-histogram
      name="NetConnectivity5.PacedPacket.Sent21.NumRecvFromFirst20Packets"/>
  <affected-histogram
      name="NetConnectivity5.PacedPacket.Sent21.NumRecvFromFirst21Packets"/>
  <affected-histogram name="NetConnectivity5.PacedPacket.Sent21.PacketDelay"/>
  <affected-histogram name="NetConnectivity5.PacedPacket.Sent21.PacketsRecv"/>
  <affected-histogram name="NetConnectivity5.PacedPacket.Sent21.RecvNthPacket"/>
  <affected-histogram
      name="NetConnectivity5.PacedPacket.Sent21.SendToLastRecvDelay"/>
  <affected-histogram
      name="NetConnectivity5.PacedPacket.Sent21.Success.RTT.Packet01"/>
  <affected-histogram
      name="NetConnectivity5.PacedPacket.Sent21.Success.RTT.Packet02"/>
  <affected-histogram
      name="NetConnectivity5.PacedPacket.Sent21.Success.RTT.Packet03"/>
  <affected-histogram
      name="NetConnectivity5.PacedPacket.Sent21.Success.RTT.Packet10"/>
  <affected-histogram
      name="NetConnectivity5.PacedPacket.Sent21.Success.RTT.Packet20"/>
  <affected-histogram name="NetConnectivity5.StartPacket.Sent21.GotAPacket"/>
  <affected-histogram
      name="NetConnectivity5.StartPacket.Sent21.NumRecvFromFirst01Packets"/>
  <affected-histogram
      name="NetConnectivity5.StartPacket.Sent21.NumRecvFromFirst02Packets"/>
  <affected-histogram
      name="NetConnectivity5.StartPacket.Sent21.NumRecvFromFirst03Packets"/>
  <affected-histogram
      name="NetConnectivity5.StartPacket.Sent21.NumRecvFromFirst04Packets"/>
  <affected-histogram
      name="NetConnectivity5.StartPacket.Sent21.NumRecvFromFirst05Packets"/>
  <affected-histogram
      name="NetConnectivity5.StartPacket.Sent21.NumRecvFromFirst06Packets"/>
  <affected-histogram
      name="NetConnectivity5.StartPacket.Sent21.NumRecvFromFirst07Packets"/>
  <affected-histogram
      name="NetConnectivity5.StartPacket.Sent21.NumRecvFromFirst08Packets"/>
  <affected-histogram
      name="NetConnectivity5.StartPacket.Sent21.NumRecvFromFirst09Packets"/>
  <affected-histogram
      name="NetConnectivity5.StartPacket.Sent21.NumRecvFromFirst10Packets"/>
  <affected-histogram
      name="NetConnectivity5.StartPacket.Sent21.NumRecvFromFirst11Packets"/>
  <affected-histogram
      name="NetConnectivity5.StartPacket.Sent21.NumRecvFromFirst12Packets"/>
  <affected-histogram
      name="NetConnectivity5.StartPacket.Sent21.NumRecvFromFirst13Packets"/>
  <affected-histogram
      name="NetConnectivity5.StartPacket.Sent21.NumRecvFromFirst14Packets"/>
  <affected-histogram
      name="NetConnectivity5.StartPacket.Sent21.NumRecvFromFirst15Packets"/>
  <affected-histogram
      name="NetConnectivity5.StartPacket.Sent21.NumRecvFromFirst16Packets"/>
  <affected-histogram
      name="NetConnectivity5.StartPacket.Sent21.NumRecvFromFirst17Packets"/>
  <affected-histogram
      name="NetConnectivity5.StartPacket.Sent21.NumRecvFromFirst18Packets"/>
  <affected-histogram
      name="NetConnectivity5.StartPacket.Sent21.NumRecvFromFirst19Packets"/>
  <affected-histogram
      name="NetConnectivity5.StartPacket.Sent21.NumRecvFromFirst20Packets"/>
  <affected-histogram
      name="NetConnectivity5.StartPacket.Sent21.NumRecvFromFirst21Packets"/>
  <affected-histogram name="NetConnectivity5.StartPacket.Sent21.PacketDelay"/>
  <affected-histogram name="NetConnectivity5.StartPacket.Sent21.PacketsRecv"/>
  <affected-histogram name="NetConnectivity5.StartPacket.Sent21.RecvNthPacket"/>
  <affected-histogram
      name="NetConnectivity5.StartPacket.Sent21.SendToLastRecvDelay"/>
  <affected-histogram
      name="NetConnectivity5.StartPacket.Sent21.Success.RTT.Packet01"/>
  <affected-histogram
      name="NetConnectivity5.StartPacket.Sent21.Success.RTT.Packet02"/>
  <affected-histogram
      name="NetConnectivity5.StartPacket.Sent21.Success.RTT.Packet03"/>
  <affected-histogram
      name="NetConnectivity5.StartPacket.Sent21.Success.RTT.Packet10"/>
  <affected-histogram
      name="NetConnectivity5.StartPacket.Sent21.Success.RTT.Packet20"/>
</histogram_suffixes>

<histogram_suffixes name="NetConnectivity4PacketSizeTest" separator=".">
  <suffix name="PacketSizeTest.Connectivity.Failure"
      label="This histogram records the size of the packet size that was not
             received from the server."/>
  <suffix name="PacketSizeTest.Connectivity.Success"
      label="This histogram records the size of the packet size that was
             received from the server."/>
  <affected-histogram name="NetConnectivity4"/>
  <affected-histogram name="NetConnectivity5"/>
</histogram_suffixes>

<histogram_suffixes name="NetConnectivity4PacketSizeTestPort" separator=".">
  <suffix name="443" label="Packet is sent on port 443."/>
  <suffix name="80" label="Packet is sent on port 80."/>
  <affected-histogram
      name="NetConnectivity4.PacketSizeTest.Connectivity.Failure"/>
  <affected-histogram
      name="NetConnectivity4.PacketSizeTest.Connectivity.Success"/>
  <affected-histogram
      name="NetConnectivity5.PacketSizeTest.Connectivity.Failure"/>
  <affected-histogram
      name="NetConnectivity5.PacketSizeTest.Connectivity.Success"/>
</histogram_suffixes>

<histogram_suffixes name="NetConnectivity4SeriesRecv" separator=".">
  <suffix name="443.100B" label="100 bytes of data is sent on port 443."/>
  <suffix name="443.100B.NoProxy"
      label="100 bytes of data is sent on port 443 with no proxy."/>
  <suffix name="443.1200B" label="1200 bytes of data is sent on port 443."/>
  <suffix name="443.1200B.NoProxy"
      label="1200 bytes of data is sent on port 443 with no proxy."/>
  <suffix name="443.500B" label="500 bytes of data is sent on port 443."/>
  <suffix name="443.500B.NoProxy"
      label="500 bytes of data is sent on port 443 with no proxy."/>
  <suffix name="80.100B" label="100 bytes of data is sent on port 80."/>
  <suffix name="80.100B.NoProxy"
      label="100 bytes of data is sent on port 80 with no proxy."/>
  <suffix name="80.1200B" label="1200 bytes of data is sent on port 80."/>
  <suffix name="80.1200B.NoProxy"
      label="1200 bytes of data is sent on port 80 with no proxy."/>
  <suffix name="80.500B" label="500 bytes of data is sent on port 80."/>
  <suffix name="80.500B.NoProxy"
      label="500 bytes of data is sent on port 80 with no proxy."/>
  <affected-histogram name="NetConnectivity4.NonPacedPacket.First6.SeriesRecv"/>
  <affected-histogram name="NetConnectivity4.PacedPacket.First6.SeriesRecv"/>
  <affected-histogram name="NetConnectivity4.StartPacket.First6.SeriesRecv"/>
  <affected-histogram name="NetConnectivity5.NonPacedPacket.First6.SeriesRecv"/>
  <affected-histogram name="NetConnectivity5.PacedPacket.First6.SeriesRecv"/>
  <affected-histogram name="NetConnectivity5.StartPacket.First6.SeriesRecv"/>
</histogram_suffixes>

<histogram_suffixes name="NetErrorCodeSubtype" separator="." ordering="prefix">
  <owner>csharrison@chromium.org</owner>
  <suffix name="NTP.Google" label="The Google web NTP"/>
  <suffix name="NTP.ThirdParty"
      label="The NTP served by a third party (e.g. Bing)"/>
  <suffix name="NTP.Local" label="The local NTP"/>
  <affected-histogram name="Net.RequestTime2.ErrAborted"/>
  <affected-histogram name="Net.RequestTime2.Success"/>
</histogram_suffixes>

<histogram_suffixes name="NetProxyResolverExecutionTime">
  <suffix name="UrlOver2K" label="URL length was over 2K"/>
  <suffix name="UrlOver4K" label="URL length was over 4K"/>
  <suffix name="UrlOver8K" label="URL length was over 8K"/>
  <suffix name="UrlOver128K" label="URL length was over 128K"/>
  <affected-histogram name="Net.ProxyResolver.ExecutionTime"/>
</histogram_suffixes>

<histogram_suffixes name="NetQuicDiskCacheBackend" separator=".">
  <owner>rtenneti@chromium.org</owner>
  <suffix name="NoBackend" label="DiskCache didn't have a backend"/>
  <suffix name="DiskCache" label="DiskCache backend is using disk cache."/>
  <suffix name="MemoryCache" label="DiskCache backend is using memory cache."/>
  <suffix name="WaitForDataReady"
      label="Tracks the last failure reason until WaitForDataReady or its
             callback is executed. This is recorded when data is ready in
             WaitForDataReady or when the callback is executed"/>
  <affected-histogram name="Net.QuicDiskCache.APICall"/>
  <affected-histogram name="Net.QuicDiskCache.FailureReason"/>
</histogram_suffixes>

<histogram_suffixes name="NetRequestTime" separator=".">
  <suffix name="ErrAborted" label="Request aborted"/>
  <suffix name="ErrConnectionReset" label="Connection reset"/>
  <suffix name="ErrConnectionTimedOut" label="Request connection timed out"/>
  <suffix name="ErrInternetDisconnected" label="Internet disconnected"/>
  <suffix name="ErrNameNotResolved" label="Request domain not resolved"/>
  <suffix name="ErrTimedOut" label="Request timed out"/>
  <suffix name="MiscError" label="Uncategorized error"/>
  <suffix name="Success" label="Success"/>
  <affected-histogram name="Net.RequestTime"/>
  <affected-histogram name="Net.RequestTime2"/>
</histogram_suffixes>

<histogram_suffixes name="NetworkErrors" separator=".">
  <suffix name="AuthExtTimeout" label="with the last error AuthExtTimeout"/>
  <suffix name="Offline" label="with the last error Offline"/>
  <suffix name="Portal" label="with the last error Portal"/>
  <suffix name="Proxy" label="with the last error Proxy"/>
  <affected-histogram name="OOBE.ErrorScreensTime.Enrollment"/>
  <affected-histogram name="OOBE.ErrorScreensTime.Signin"/>
  <affected-histogram name="OOBE.ErrorScreensTime.Supervised"/>
  <affected-histogram name="OOBE.ErrorScreensTime.Update"/>
</histogram_suffixes>

<histogram_suffixes name="NewTabPageProviders" separator=".">
  <suffix name="client" label="Suggestions coming from the client."/>
  <suffix name="client0"
      label="deprecated - Suggestions coming from the client source 0."/>
  <suffix name="popular" label="Non-personalized, popular suggestions."/>
  <suffix name="whitelist"
      label="Installed whitelist entry point suggestions."/>
<!-- Server providers 1 through 8 have never been logged. -->

  <suffix name="server" label="Suggestions coming from the server."/>
  <suffix name="server0" label="Suggestions coming from server source 0."/>
  <suffix name="server8" label="Suggestions coming from server source 8."/>
  <suffix name="server9" label="Suggestions coming from server source 9."/>
  <suffix name="server10" label="Suggestions coming from server source 10."/>
  <suffix name="server11" label="Suggestions coming from server source 11."/>
  <affected-histogram name="NewTabPage.MostVisited"/>
  <affected-histogram name="NewTabPage.SuggestionsImpression"/>
  <affected-histogram name="NewTabPage.TileType"/>
  <affected-histogram name="NewTabPage.TileTypeClicked"/>
</histogram_suffixes>

<histogram_suffixes name="NewTabPageTimings" separator=".">
  <suffix name="MostLikely" label="Loaded server-side suggestions."/>
  <suffix name="MostVisited" label="Loaded client-side suggestions."/>
  <suffix name="LocalNTP" label="Loaded local NTP"/>
  <suffix name="Web" label="Loaded server-side NTP"/>
  <suffix name="Startup" label="NTP loaded during browser startup."/>
  <suffix name="NewTab" label="NTP loaded on a new tab."/>
  <affected-histogram name="NewTabPage.LoadTime"/>
</histogram_suffixes>

<histogram_suffixes name="NextTabState">
  <suffix name="Active"
      label="For a tab active which is shown foreground in a browser window."/>
  <suffix name="Inactive"
      label="For tabs in background and not shown to user."/>
  <suffix name="Detached"
      label="For a tab that is being dragged by user to outside of the
             browser window."/>
  <suffix name="Closed" label="For a tab that is about to be closed."/>
  <affected-histogram name="Tabs.StateTransfer.Time_Active"/>
  <affected-histogram name="Tabs.StateTransfer.Time_Detached"/>
  <affected-histogram name="Tabs.StateTransfer.Time_Inactive"/>
</histogram_suffixes>

<histogram_suffixes name="NQE.DifferentPercentiles" separator=".">
  <suffix name="Percentile0" label="0th percentile"/>
  <suffix name="Percentile10" label="10th percentile"/>
  <suffix name="Percentile50" label="50th percentile"/>
  <suffix name="Percentile90" label="90th percentile"/>
  <suffix name="Percentile100" label="100th percentile"/>
  <affected-histogram name="NQE.RTT"/>
</histogram_suffixes>

<histogram_suffixes name="NQE.NetworkTypes" separator=".">
  <suffix name="Unknown" label="On Unknown network"/>
  <suffix name="Ethernet" label="On Ethernet network"/>
  <suffix name="WiFi" label="On WiFi network"/>
  <suffix name="2G" label="On 2G network"/>
  <suffix name="3G" label="On 3G Network"/>
  <suffix name="4G" label="On 4G network"/>
  <suffix name="None" label="With no detected network"/>
  <suffix name="Bluetooth" label="On Bluetooth network"/>
  <affected-histogram name="NQE.DifferenceRTTActualAndEstimated"/>
  <affected-histogram name="NQE.DifferenceRTTEstimatedAndActual"/>
  <affected-histogram name="NQE.FastestRTT"/>
  <affected-histogram name="NQE.PeakKbps"/>
  <affected-histogram name="NQE.RatioEstimatedToActualRTT"/>
  <affected-histogram name="NQE.RTT.Percentile0"/>
  <affected-histogram name="NQE.RTT.Percentile10"/>
  <affected-histogram name="NQE.RTT.Percentile100"/>
  <affected-histogram name="NQE.RTT.Percentile50"/>
  <affected-histogram name="NQE.RTT.Percentile90"/>
  <affected-histogram name="NQE.RTTObservations"/>
</histogram_suffixes>

<histogram_suffixes name="OffDomainInclusionAbortReason" separator=".">
  <obsolete>
    Deprecated 2016-05 as the OffDomainInclusionDetector was removed.
  </obsolete>
  <suffix name="EmptyMainFrameURL" label="The main frame URL was empty."/>
  <suffix name="HistoryLookupFailed"
      label="The lookup to the HistoryService failed."/>
  <suffix name="Incognito"
      label="The profile associated with the frame under analysis is an
             incognito profile."/>
  <suffix name="NoHistoryService"
      label="There was no HistoryService associated with the profile of the
             frame under analysis (this can happen seldomly on startup for
             early net requests, or on shutdown by the asynchronous nature of
             the analysis, but shouldn't be common)."/>
  <suffix name="NoProfile"
      label="The profile associated with the frame under analysis couldn't be
             resolved (expected to happen at a low frequency by the
             asynchronous nature of the analysis)."/>
  <affected-histogram name="SBOffDomainInclusion.Abort"/>
  <affected-histogram name="SBOffDomainInclusion2.Abort"/>
</histogram_suffixes>

<histogram_suffixes name="OfflinePagesNamespace" separator=".">
  <suffix name="bookmark" label="Offline bookmark cache"/>
  <suffix name="last-n" label="Offline recent pages"/>
  <affected-histogram name="OfflinePages.DeletePage.AccessCount"/>
  <affected-histogram name="OfflinePages.DeletePage.LastOpenToCreated"/>
  <affected-histogram name="OfflinePages.DeletePage.PageSize"/>
  <affected-histogram name="OfflinePages.DeletePage.TimeSinceLastOpen"/>
  <affected-histogram name="OfflinePages.FirstOpenSinceCreated"/>
  <affected-histogram name="OfflinePages.OpenSinceLastOpen"/>
  <affected-histogram name="OfflinePages.PageLifetime"/>
  <affected-histogram name="OfflinePages.PageSize"/>
  <affected-histogram name="OfflinePages.SavePageResult"/>
  <affected-histogram name="OfflinePages.SavePageTime"/>
</histogram_suffixes>

<histogram_suffixes name="OmniboxProviderTime" separator=".">
  <suffix name="Bookmark"/>
  <suffix name="Builtin"/>
  <suffix name="Contact"/>
  <suffix name="ExtensionApp"/>
  <suffix name="HistoryContents"/>
  <suffix name="HistoryQuick"/>
  <suffix name="HistoryURL"/>
  <suffix name="Keyword"/>
  <suffix name="Search"/>
  <suffix name="Shortcuts"/>
  <suffix name="ZeroSuggest"/>
  <affected-histogram name="Omnibox.ProviderTime"/>
  <affected-histogram name="Omnibox.ProviderTime2"/>
</histogram_suffixes>

<histogram_suffixes name="OobeScreenName" separator=".">
  <suffix name="Eula"/>
  <suffix name="Hid-detection"/>
  <suffix name="Image"/>
  <suffix name="Network"/>
  <suffix name="Update"/>
  <suffix name="Wrong-hwid"/>
  <affected-histogram name="OOBE.StepCompletionTime"/>
</histogram_suffixes>

<histogram_suffixes name="OtherActivityProcesses" separator=".">
  <suffix name="gpu-process"/>
  <suffix name="renderer"/>
  <suffix name="setup"/>
  <affected-histogram name="UMA.Histograms.Activity"/>
</histogram_suffixes>

<histogram_suffixes name="OverlappedReadImpact">
  <suffix name="OverlappedReadDisabled" label="Non-blocking reads"/>
  <suffix name="OverlappedReadEnabled" label="Default, async reads"/>
  <affected-histogram name="Net.HttpJob.TotalTime"/>
  <affected-histogram name="Net.HttpJob.TotalTimeCached"/>
  <affected-histogram name="Net.HttpJob.TotalTimeCancel"/>
  <affected-histogram name="Net.HttpJob.TotalTimeNotCached"/>
  <affected-histogram name="Net.HttpJob.TotalTimeSuccess"/>
  <affected-histogram name="PLT.Abandoned"/>
  <affected-histogram name="PLT.BeginToFinish_LinkLoadNormal"/>
  <affected-histogram name="PLT.BeginToFinish_LinkLoadReload"/>
  <affected-histogram name="PLT.BeginToFinish_LinkLoadStaleOk"/>
  <affected-histogram name="PLT.BeginToFinish_NormalLoad"/>
  <affected-histogram name="PLT.LoadType"/>
</histogram_suffixes>

<histogram_suffixes name="PageLoadBackgrounded" separator=".">
  <obsolete>
    Deprecated in favor of PageLoadBackgrounded2.
  </obsolete>
  <suffix name="BG"
      label="Event occurred at least partially in the background"/>
  <affected-histogram
      name="PageLoad.Timing2.NavigationToDOMContentLoadedEventFired"/>
  <affected-histogram name="PageLoad.Timing2.NavigationToFirstLayout"/>
  <affected-histogram name="PageLoad.Timing2.NavigationToFirstTextPaint"/>
  <affected-histogram name="PageLoad.Timing2.NavigationToLoadEventFired"/>
</histogram_suffixes>

<histogram_suffixes name="PageLoadBackgrounded2" separator=".">
  <affected-histogram
      name="PageLoad.Clients.DocWrite.Block.Timing2.ParseBlockedOnScriptLoad"/>
  <affected-histogram
      name="PageLoad.Clients.DocWrite.Block.Timing2.ParseBlockedOnScriptLoad.ParseComplete"/>
  <affected-histogram
      name="PageLoad.Clients.DocWrite.Block.Timing2.ParseBlockedOnScriptLoadFromDocumentWrite"/>
  <affected-histogram
      name="PageLoad.Clients.DocWrite.Block.Timing2.ParseBlockedOnScriptLoadFromDocumentWrite.ParseComplete"/>
  <affected-histogram
      name="PageLoad.Clients.DocWrite.Block.Timing2.ParseDuration"/>
  <affected-histogram
      name="PageLoad.Clients.DocWrite.Evaluator.Timing2.NavigationToFirstContentfulPaint"/>
  <affected-histogram
      name="PageLoad.Clients.DocWrite.Evaluator.Timing2.ParseBlockedOnScriptLoad"/>
  <affected-histogram
      name="PageLoad.Clients.DocWrite.Evaluator.Timing2.ParseBlockedOnScriptLoadFromDocumentWrite"/>
  <affected-histogram
      name="PageLoad.Clients.DocWrite.Evaluator.Timing2.ParseDuration"/>
  <affected-histogram
      name="PageLoad.Clients.ServiceWorker.Timing2.NavigationToFirstContentfulPaint"/>
  <affected-histogram
      name="PageLoad.DocumentTiming.NavigationToDOMContentLoadedEventFired"/>
  <affected-histogram name="PageLoad.DocumentTiming.NavigationToFirstLayout"/>
  <affected-histogram
      name="PageLoad.DocumentTiming.NavigationToLoadEventFired"/>
  <suffix name="Background"
      label="The page was backgrounded at least once from navigation start to
             this event."/>
  <affected-histogram name="PageLoad.Events.Committed"/>
  <affected-histogram name="PageLoad.Events.Provisional"/>
  <affected-histogram
      name="PageLoad.PaintTiming.NavigationToFirstContentfulPaint"/>
  <affected-histogram name="PageLoad.PaintTiming.NavigationToFirstImagePaint"/>
  <affected-histogram name="PageLoad.PaintTiming.NavigationToFirstPaint"/>
  <affected-histogram name="PageLoad.PaintTiming.NavigationToFirstTextPaint"/>
  <affected-histogram
      name="PageLoad.PaintTiming.ParseStartToFirstContentfulPaint"/>
  <affected-histogram name="PageLoad.ParseTiming.NavigationToParseStart"/>
  <affected-histogram name="PageLoad.ParseTiming.ParseBlockedOnScriptLoad"/>
  <affected-histogram
      name="PageLoad.ParseTiming.ParseBlockedOnScriptLoadFromDocumentWrite"/>
  <affected-histogram name="PageLoad.ParseTiming.ParseDuration"/>
  <affected-histogram name="PageLoad.Timing2.NavigationToCommit"/>
  <affected-histogram
      name="PageLoad.Timing2.NavigationToDOMContentLoadedEventFired"/>
  <affected-histogram name="PageLoad.Timing2.NavigationToFirstContentfulPaint"/>
  <affected-histogram name="PageLoad.Timing2.NavigationToFirstImagePaint"/>
  <affected-histogram name="PageLoad.Timing2.NavigationToFirstLayout"/>
  <affected-histogram name="PageLoad.Timing2.NavigationToFirstPaint"/>
  <affected-histogram name="PageLoad.Timing2.NavigationToFirstTextPaint"/>
  <affected-histogram name="PageLoad.Timing2.NavigationToLoadEventFired"/>
  <affected-histogram name="PageLoad.Timing2.ParseBlockedOnScriptLoad"/>
  <affected-histogram
      name="PageLoad.Timing2.ParseBlockedOnScriptLoad.ParseComplete"/>
  <affected-histogram
      name="PageLoad.Timing2.ParseBlockedOnScriptLoadFromDocumentWrite"/>
  <affected-histogram
      name="PageLoad.Timing2.ParseBlockedOnScriptLoadFromDocumentWrite.ParseComplete"/>
  <affected-histogram name="PageLoad.Timing2.ParseDuration"/>
</histogram_suffixes>

<histogram_suffixes name="PageLoadEventConditions" separator=".">
  <suffix name="BeforeCommit"/>
  <suffix name="AfterCommit.BeforePaint"/>
  <suffix name="DuringParse"/>
  <affected-histogram name="PageLoad.AbortTiming.Close"/>
  <affected-histogram name="PageLoad.AbortTiming.ForwardBackNavigation"/>
  <affected-histogram name="PageLoad.AbortTiming.NewNavigation"/>
  <affected-histogram name="PageLoad.AbortTiming.Other"/>
  <affected-histogram name="PageLoad.AbortTiming.Reload"/>
  <affected-histogram name="PageLoad.AbortTiming.Stop"/>
  <affected-histogram name="PageLoad.AbortTiming.UnknownNavigation"/>
  <affected-histogram name="PageLoad.Timing2.NavigationToFirstBackground"/>
</histogram_suffixes>

<histogram_suffixes name="PageLoadMetricsAbortClients" separator="."
    ordering="prefix">
  <suffix name="Clients.FromGWS2"
      label="PageLoadMetrics that are a result of a navigation from a Google
             web search">
    <obsolete>
      Deprecated in favor of Clients.FromGoogleSearch.
    </obsolete>
  </suffix>
  <suffix name="Clients.FromGoogleSearch"
      label="PageLoadMetrics that are a result of a navigation from a Google
             web search"/>
  <affected-histogram
      name="PageLoad.AbortTiming.Close.AfterCommit.BeforePaint"/>
  <affected-histogram name="PageLoad.AbortTiming.Close.BeforeCommit"/>
  <affected-histogram
      name="PageLoad.AbortTiming.ForwardBackNavigation.AfterCommit.BeforePaint"/>
  <affected-histogram
      name="PageLoad.AbortTiming.NewNavigation.AfterCommit.BeforePaint"/>
  <affected-histogram name="PageLoad.AbortTiming.Other.BeforeCommit"/>
  <affected-histogram
      name="PageLoad.AbortTiming.Reload.AfterCommit.BeforePaint"/>
  <affected-histogram name="PageLoad.AbortTiming.Stop.AfterCommit.BeforePaint"/>
  <affected-histogram name="PageLoad.AbortTiming.Stop.BeforeCommit"/>
  <affected-histogram
      name="PageLoad.AbortTiming.UnknownNavigation.BeforeCommit"/>
</histogram_suffixes>

<histogram_suffixes name="PageLoadMetricsClients" separator="."
    ordering="prefix">
  <affected-histogram
      name="PageLoad.DocumentTiming.NavigationToDOMContentLoadedEventFired"/>
  <affected-histogram name="PageLoad.DocumentTiming.NavigationToFirstLayout"/>
  <affected-histogram
      name="PageLoad.DocumentTiming.NavigationToLoadEventFired"/>
  <affected-histogram
      name="PageLoad.PaintTiming.NavigationToFirstContentfulPaint"/>
  <affected-histogram name="PageLoad.PaintTiming.NavigationToFirstImagePaint"/>
  <affected-histogram name="PageLoad.PaintTiming.NavigationToFirstPaint"/>
  <affected-histogram name="PageLoad.PaintTiming.NavigationToFirstTextPaint"/>
  <affected-histogram
      name="PageLoad.PaintTiming.ParseStartToFirstContentfulPaint"/>
  <affected-histogram name="PageLoad.ParseTiming.NavigationToParseStart"/>
  <affected-histogram name="PageLoad.ParseTiming.ParseDuration"/>
  <suffix name="Clients.FromGWS"
      label="PageLoadMetrics that are a result of a navigation from a Google
             web search">
    <obsolete>
      Deprecated in favor of Clients.FromGoogleSearch.
    </obsolete>
  </suffix>
  <suffix name="Clients.FromGWS2"
      label="PageLoadMetrics that are a result of a navigation from a Google
             web search">
    <obsolete>
      Deprecated in favor of Clients.FromGoogleSearch.
    </obsolete>
  </suffix>
  <suffix name="Clients.FromGoogleSearch"
      label="PageLoadMetrics that are a result of a navigation from a Google
             web search"/>
  <suffix name="Clients.DataReductionProxy"
      label="PageLoadMetrics that are a result of a navigation through the
             data reduction proxy."/>
  <suffix name="Clients.DataReductionProxy.LoFiOn"
      label="PageLoadMetrics that are a result of a navigation through the
             data reduction proxy with LoFi requested."/>
  <suffix name="Clients.DocWrite.Evaluator"
      label="PageLoadMetrics from a page that could have been evaluated by
             the DocumentWriteEvaluator"/>
  <suffix name="Clients.ServiceWorker"
      label="PageLoadMetrics from a page that is controlled by a Service
             Worker"/>
  <affected-histogram
      name="PageLoad.Timing2.DOMLoadingToDOMContentLoadedEventFired"/>
  <affected-histogram name="PageLoad.Timing2.DOMLoadingToFirstContentfulPaint"/>
  <suffix name="Clients.DocWrite.Block"
      label="PageLoadMetrics from a page that has synchronous, cross-origin
             document.written scripts that could be blocked if the
             document.write script blocking feature is enabled."/>
  <affected-histogram
      name="PageLoad.Timing2.NavigationToDOMContentLoadedEventFired"/>
  <affected-histogram name="PageLoad.Timing2.NavigationToFirstContentfulPaint"/>
  <affected-histogram name="PageLoad.Timing2.NavigationToFirstImagePaint"/>
  <affected-histogram name="PageLoad.Timing2.NavigationToFirstLayout"/>
  <affected-histogram name="PageLoad.Timing2.NavigationToFirstPaint"/>
  <affected-histogram name="PageLoad.Timing2.NavigationToFirstTextPaint"/>
  <affected-histogram name="PageLoad.Timing2.NavigationToLoadEventFired"/>
  <affected-histogram name="PageLoad.Timing2.ParseBlockedOnScriptLoad"/>
  <affected-histogram
      name="PageLoad.Timing2.ParseBlockedOnScriptLoad.ParseComplete"/>
  <affected-histogram
      name="PageLoad.Timing2.ParseBlockedOnScriptLoadFromDocumentWrite"/>
  <affected-histogram
      name="PageLoad.Timing2.ParseBlockedOnScriptLoadFromDocumentWrite.ParseComplete"/>
  <affected-histogram name="PageLoad.Timing2.ParseDuration"/>
  <affected-histogram name="PageLoad.Timing2.ParseStartToFirstContentfulPaint"/>
</histogram_suffixes>

<histogram_suffixes name="PageLoadType">
  <suffix name="HistoryLoad"
      label="but only for user pressing back or forward"/>
  <suffix name="LinkLoad"
      label="deprecated - see LinkLoadReload, LinkLoadNormal,
             LinkLoadStaleOk, LinkLoadCacheOnly; content initiated, commonly
             back to a posted page"/>
  <suffix name="LinkLoadCacheOnly"
      label="content initiated, commonly back to a posted page, where browser
             must ONLY use cache"/>
  <suffix name="LinkLoadNormal"
      label="content initiated, ordinary link traversal or post"/>
  <suffix name="LinkLoadReload" label="content initiated, calling reload()"/>
  <suffix name="LinkLoadStaleOk"
      label="content initiated, commonly forward or back where stale cached
             data is very acceptable"/>
  <suffix name="NormalLoad"
      label="but only for user entered URL or omnibox search"/>
  <suffix name="Reload" label="but only for user pressed reload"/>
  <suffix name="UndefLoad"
      label="should never happen... as it is only for an client-code error
             case which should not exist"/>
  <affected-histogram name="PLT.BeginToFinish"/>
  <affected-histogram name="PLT.BeginToFinishDoc"/>
  <affected-histogram name="PLT.StartToCommit">
    <with-suffix name="LinkLoadNormal"/>
    <with-suffix name="NormalLoad"/>
  </affected-histogram>
  <affected-histogram name="PLT.StartToFinish">
    <with-suffix name="LinkLoadNormal"/>
    <with-suffix name="NormalLoad"/>
  </affected-histogram>
  <affected-histogram name="Renderer4.BeginToFinish"/>
  <affected-histogram name="Renderer4.BeginToFinishDoc"/>
</histogram_suffixes>

<histogram_suffixes name="PageLoadType">
  <suffix name="HistoryLoad"
      label="but only for user pressing back or forward"/>
  <suffix name="LinkLoad"
      label="deprecated - see LinkLoadReload, LinkLoadNormal,
             LinkLoadStaleOk, LinkLoadCacheOnly; content initiated, commonly
             back to a posted page"/>
  <suffix name="LinkLoadCacheOnly"
      label="content initiated, commonly back to a posted page, where browser
             must ONLY use cache"/>
  <suffix name="LinkLoadNormal"
      label="content initiated, ordinary link traversal or post"/>
  <suffix name="LinkLoadReload" label="content initiated, calling reload()"/>
  <suffix name="LinkLoadStaleOk"
      label="content initiated, commonly forward or back where stale cached
             data is very acceptable"/>
  <suffix name="NormalLoad"
      label="but only for user entered URL or omnibox search"/>
  <suffix name="Reload" label="but only for user pressed reload"/>
  <suffix name="UndefLoad"
      label="should never happen... as it is only for an client-code error
             case which should not exist"/>
  <affected-histogram name="PLT.BeginToFinish"/>
  <affected-histogram name="PLT.BeginToFinishDoc"/>
  <affected-histogram name="PLT.StartToCommit">
    <with-suffix name="LinkLoadNormal"/>
    <with-suffix name="NormalLoad"/>
  </affected-histogram>
  <affected-histogram name="PLT.StartToFinish">
    <with-suffix name="LinkLoadNormal"/>
    <with-suffix name="NormalLoad"/>
  </affected-histogram>
  <affected-histogram name="Renderer4.BeginToFinish"/>
  <affected-histogram name="Renderer4.BeginToFinishDoc"/>
</histogram_suffixes>

<histogram_suffixes name="PasswordCustomPassphrase" separator=".">
  <suffix name="WithCustomPassphrase"/>
  <suffix name="WithoutCustomPassphrase"/>
  <affected-histogram name="PasswordManager.AccountsPerSite"/>
  <affected-histogram name="PasswordManager.AccountsPerSite.AutoGenerated"/>
  <affected-histogram name="PasswordManager.AccountsPerSite.UserCreated"/>
  <affected-histogram name="PasswordManager.BlacklistedSites"/>
  <affected-histogram name="PasswordManager.TimesGeneratedPasswordUsed"/>
  <affected-histogram name="PasswordManager.TimesPasswordUsed.AutoGenerated"/>
  <affected-histogram name="PasswordManager.TimesPasswordUsed.UserCreated"/>
  <affected-histogram name="PasswordManager.TotalAccounts.AutoGenerated"/>
  <affected-histogram name="PasswordManager.TotalAccounts.UserCreated"/>
</histogram_suffixes>

<histogram_suffixes name="PasswordGenerated" separator=".">
  <suffix name="UserCreated"/>
  <suffix name="AutoGenerated"/>
  <affected-histogram name="PasswordManager.AccountsPerSite"/>
  <affected-histogram name="PasswordManager.TimesPasswordUsed"/>
  <affected-histogram name="PasswordManager.TotalAccounts"/>
</histogram_suffixes>

<histogram_suffixes name="PasswordManagerMonitor">
  <obsolete>
    Deprecated as of 03/2016.
  </obsolete>
  <suffix name="group_1" label="group 1"/>
  <suffix name="group_2" label="group 2"/>
  <suffix name="group_3" label="group 3"/>
  <suffix name="group_4" label="group 4"/>
  <suffix name="group_5" label="group 5"/>
  <suffix name="group_6" label="group 6"/>
  <suffix name="group_7" label="group 7"/>
  <suffix name="group_8" label="group 8"/>
  <suffix name="group_9" label="group 9"/>
  <suffix name="group_10" label="group 10"/>
  <suffix name="group_11" label="group 11"/>
  <suffix name="group_12" label="group 12"/>
  <suffix name="group_13" label="group 13"/>
  <suffix name="group_14" label="group 14"/>
  <suffix name="group_15" label="group 15"/>
  <suffix name="group_16" label="group 16"/>
  <suffix name="group_17" label="group 17"/>
  <suffix name="group_18" label="group 18"/>
  <suffix name="group_19" label="group 19"/>
  <suffix name="group_20" label="group 20"/>
  <suffix name="" label=""/>
  <affected-histogram name="PasswordManager.LinuxBackendStatistics"/>
  <affected-histogram name="PasswordManager.ProvisionalSaveFailure"/>
  <affected-histogram
      name="PasswordManager.SavePasswordPromptDisappearedQuickly"/>
  <affected-histogram name="PasswordManager.SavePasswordPromptDisplayed"/>
  <affected-histogram name="PasswordManager.SavePasswordPromptResponse"/>
</histogram_suffixes>

<histogram_suffixes name="PasswordReuseSourceRealm" separator=".">
  <suffix name="FromHttpRealm"
      label="The account in question was saved on an HTTP site."/>
  <suffix name="FromHttpsRealm"
      label="The account in question was saved on a HTTPS site (including
             those with certificate issues)."/>
  <affected-histogram name="PasswordManager.AccountsReusingPassword"/>
</histogram_suffixes>

<histogram_suffixes name="PasswordReuseTargetRealm" separator=".">
  <suffix name="OnHttpRealmWithSameHost"
      label="The number of other accounts whose realms have HTTP scheme and
             the same host as the account in question."/>
  <suffix name="OnHttpsRealmWithSameHost"
      label="The number of other accounts whose realms have HTTPS scheme and
             the same host as the account in question."/>
  <suffix name="OnHttpRealmWithDifferentHost"
      label="The number of other accounts whose realms have HTTP scheme and
             different hosts than the account in question."/>
  <suffix name="OnHttpsRealmWithDifferentHost"
      label="The number of other accounts whose realms have HTTPS scheme and
             different hosts than the account in question."/>
  <suffix name="OnAnyRealmWithDifferentHost"
      label="The number of other accounts whose realms have different hosts
             than the account in question, and their scheme is either HTTP or
             HTTPS."/>
  <suffix name="OnPSLMatchingRealm"
      label="The number of other accounts whose realms are public suffix
             matches to that of the account in question (the scheme is always
             the same in these cases)."/>
  <affected-histogram
      name="PasswordManager.AccountsReusingPassword.FromHttpRealm"/>
  <affected-histogram
      name="PasswordManager.AccountsReusingPassword.FromHttpsRealm"/>
</histogram_suffixes>

<histogram_suffixes name="PasswordScheme" separator=".">
  <suffix name="Android" label="The password is for an Android app."/>
  <suffix name="Ftp" label="The scheme of the origin is FTP."/>
  <suffix name="Http" label="The scheme of the origin is HTTP."/>
  <suffix name="Https" label="The scheme of the origin is HTTPS."/>
  <suffix name="Other" label="The scheme of the origin is something else."/>
  <affected-histogram name="PasswordManager.TotalAccountsHiRes.WithScheme"/>
</histogram_suffixes>

<histogram_suffixes name="PerformanceMonitor" separator=".">
  <suffix name="BrowserProcess"/>
  <suffix name="GPUProcess"/>
  <suffix name="PluginProcess"/>
  <suffix name="PPAPIFlashProcess"/>
  <suffix name="PPAPIProcess"/>
  <suffix name="RendererProcess"/>
  <suffix name="RendererExtensionEventProcess"/>
  <suffix name="RendererExtensionPersistentProcess"/>
  <suffix name="WorkerProcess"/>
  <affected-histogram name="PerformanceMonitor.AverageCPU"/>
  <affected-histogram name="PerformanceMonitor.HighCPU"/>
</histogram_suffixes>

<histogram_suffixes name="PermissionTypes" separator=".">
  <suffix name="MidiSysEx" label="Midi SysEx permsision actions"/>
  <suffix name="PushMessaging" label="Push messaging permission actions"/>
  <suffix name="Notifications" label="Notification permission actions"/>
  <suffix name="Geolocation" label="Geolocation permission actions"/>
  <suffix name="ProtectedMedia" label="Protected media permission actions"/>
  <suffix name="DurableStorage" label="Durable Storage permission actions"/>
  <suffix name="AudioCapture" label="Microphone permission actions"/>
  <suffix name="VideoCapture" label="Camera permission actions"/>
  <affected-histogram name="ContentSettings.PermissionActions"/>
  <affected-histogram name="ContentSettings.PermissionActionsInsecureOrigin"/>
  <affected-histogram name="ContentSettings.PermissionActionsSecureOrigin"/>
  <affected-histogram name="Permissions.Action"/>
  <affected-histogram name="Permissions.Action.InsecureOrigin"/>
  <affected-histogram name="Permissions.Action.SecureOrigin"/>
  <affected-histogram name="Permissions.Requested.CrossOrigin"/>
</histogram_suffixes>

<histogram_suffixes name="PhysicalWebDebugActions" separator=".">
  <suffix name="ChromeStart" label="when Chrome first starts up"/>
  <suffix name="LaunchFromDiagnostics"
      label="when the user launches the ListUrlActivity from the Physical Web
             diagnostics page"/>
  <suffix name="LaunchFromPreferences"
      label="when the user launches the ListUrlActivity from the Physical Web
             preferencs screen"/>
  <affected-histogram name="PhysicalWeb.State.Bluetooth"/>
  <affected-histogram name="PhysicalWeb.State.DataConnectionActive"/>
  <affected-histogram name="PhysicalWeb.State.LocationPermission"/>
  <affected-histogram name="PhysicalWeb.State.LocationServices"/>
  <affected-histogram name="PhysicalWeb.State.Preference"/>
</histogram_suffixes>

<histogram_suffixes name="PNaClTranslatorTypes" separator=".">
  <suffix name="" label="All translator types"/>
  <suffix name="LLC" label="LLC-based translator"/>
  <suffix name="Subzero" label="Subzero-based translator"/>
  <affected-histogram name="NaCl.Options.PNaCl.OptLevel"/>
  <affected-histogram name="NaCl.Perf.PNaClCache.IsHit"/>
  <affected-histogram name="NaCl.Perf.PNaClLoadTime.CompileKBPerSec"/>
  <affected-histogram name="NaCl.Perf.PNaClLoadTime.CompileTime"/>
  <affected-histogram name="NaCl.Perf.PNaClLoadTime.LoadCompiler"/>
  <affected-histogram
      name="NaCl.Perf.PNaClLoadTime.PctCompiledWhenFullyDownloaded"/>
  <affected-histogram name="NaCl.Perf.PNaClLoadTime.TotalUncachedKBPerSec"/>
  <affected-histogram name="NaCl.Perf.PNaClLoadTime.TotalUncachedTime"/>
  <affected-histogram name="NaCl.Perf.Size.PexeNexeSizePct"/>
  <affected-histogram name="NaCl.Perf.Size.PNaClTranslatedNexe"/>
</histogram_suffixes>

<histogram_suffixes name="PpapiPluginName">
  <suffix name="libpepflashplayer.so" label="Flash player on Linux or Cros"/>
  <suffix name="libwidevinecdmadapter.so"
      label="Widevine CDM on Linux or Cros"/>
  <suffix name="pepflashplayer.dll" label="Flash player on Windows"/>
  <suffix name="PepperFlashPlayer.plugin" label="Flash player on Mac"/>
  <suffix name="widevinecdmadapter.dll" label="Widevine CDM on Windows"/>
  <suffix name="widevinecdmadapter.plugin" label="Widevine CDM on Mac"/>
  <affected-histogram name="Plugin.PpapiBrokerLoadErrorCode"/>
  <affected-histogram name="Plugin.PpapiBrokerLoadResult"/>
  <affected-histogram name="Plugin.PpapiBrokerLoadTime"/>
  <affected-histogram name="Plugin.PpapiPluginLoadErrorCode"/>
  <affected-histogram name="Plugin.PpapiPluginLoadResult"/>
  <affected-histogram name="Plugin.PpapiPluginLoadTime"/>
</histogram_suffixes>

<histogram_suffixes name="PrecacheCellular" separator=".">
  <suffix name="Cellular"
      label="covers fetches when connected to cellular networks"/>
  <affected-histogram name="Precache.DownloadedNonPrecache"/>
  <affected-histogram name="Precache.Saved"/>
</histogram_suffixes>

<histogram_suffixes name="PreferenceFileNames" separator=".">
  <suffix name="Local_State" label="Local State file"/>
  <suffix name="Preferences" label="Preferences file"/>
  <suffix name="Secure_Preferences" label="Secure Preferences file"/>
  <affected-histogram name="Settings.JsonDataReadSizeKilobytes"/>
  <affected-histogram name="Settings.JsonDataSizeKilobytes"/>
  <affected-histogram name="Settings.JsonDataWriteCount"/>
</histogram_suffixes>

<histogram_suffixes name="Prefetch">
  <suffix name="ContentPrefetchPrefetchOff"
      label="Prefetch is completely disabled."/>
  <suffix name="ContentPrefetchPrefetchOn"
      label="prefetch is enabled but prerender is disabled."/>
  <affected-histogram name="HttpCache.EntryLockWait"/>
  <affected-histogram name="Net.HttpTimeToFirstByte"/>
  <affected-histogram name="PLT.Abandoned"/>
  <affected-histogram name="PLT.BeginToFinish"/>
  <affected-histogram name="PLT.BeginToFinish_ContentPrefetcher"/>
  <affected-histogram name="PLT.BeginToFinish_ContentPrefetcherReferrer"/>
  <affected-histogram name="PLT.BeginToFinishDoc"/>
  <affected-histogram name="PLT.BeginToFinishDoc_ContentPrefetcher"/>
  <affected-histogram name="PLT.BeginToFinishDoc_ContentPrefetcherReferrer"/>
  <affected-histogram name="PLT.PerceivedLoadTime"/>
  <affected-histogram name="PLT.PerceivedLoadTime_PrerenderLoad"/>
</histogram_suffixes>

<histogram_suffixes name="Prerender">
  <suffix name="PrerenderEnabled" label="prerender is enabled."/>
  <suffix name="PrerenderControl" label="prerender is disabled."/>
  <suffix name="PrerenderNoUse"
      label="prerender is enabled, but pages are not swapped in."/>
  <suffix name="PrerenderMulti"
      label="prerender is enabled with multiple simultanious prerenders."/>
  <suffix name="Prerender5minTTL"
      label="prerender is enabled, and the TTL is extended to 5 minutes."/>
  <suffix name="PrerenderMatchComplete"
      label="prerender is enabled, and match complete replacements are used
             to gather extended statistics."/>
  <affected-histogram name="HttpCache.EntryLockWait"/>
  <affected-histogram name="Net.HttpTimeToFirstByte"/>
  <affected-histogram name="PLT.Abandoned"/>
  <affected-histogram name="PLT.BeginToFinish"/>
  <affected-histogram name="PLT.BeginToFinish_ContentPrefetcher"/>
  <affected-histogram name="PLT.BeginToFinish_ContentPrefetcherReferrer"/>
  <affected-histogram name="PLT.BeginToFinishDoc"/>
  <affected-histogram name="PLT.BeginToFinishDoc_ContentPrefetcher"/>
  <affected-histogram name="PLT.BeginToFinishDoc_ContentPrefetcherReferrer"/>
  <affected-histogram name="PLT.PerceivedLoadTime"/>
  <affected-histogram name="PLT.PerceivedLoadTime_PrerenderLoad"/>
  <affected-histogram name="Prerender.FinalStatus"/>
  <affected-histogram name="Prerender.FinalStatusMatchComplete"/>
  <affected-histogram name="Prerender.FractionPixelsFinalAtSwapin"/>
  <affected-histogram name="Prerender.LocalPredictorEvent"/>
  <affected-histogram name="Prerender.PerceivedPLT"/>
  <affected-histogram name="Prerender.PerceivedPLTFirstAfterMiss"/>
  <affected-histogram name="Prerender.PerceivedPLTFirstAfterMissAnyOnly"/>
  <affected-histogram name="Prerender.PerceivedPLTFirstAfterMissBoth"/>
  <affected-histogram
      name="Prerender.PerceivedPLTFirstAfterMissNonOverlapping"/>
  <affected-histogram
      name="Prerender.PerceivedPLTFirstAfterMissNonOverlappingOnly"/>
  <affected-histogram name="Prerender.PerceivedPLTMatched"/>
  <affected-histogram name="Prerender.PerceivedPLTMatchedComplete"/>
  <affected-histogram name="Prerender.PerceivedPLTWindowed"/>
  <affected-histogram name="Prerender.PerceivedPLTWindowNotMatched"/>
  <affected-histogram name="Prerender.PercentLoadDoneAtSwapin"/>
  <affected-histogram name="Prerender.PrerenderNotSwappedInPLT"/>
  <affected-histogram name="Prerender.RendererIdleTime"/>
  <affected-histogram name="Prerender.RendererPerceivedPLT"/>
  <affected-histogram name="Prerender.RendererPerceivedPLTMatched"/>
  <affected-histogram name="Prerender.RendererTimeUntilDisplay"/>
  <affected-histogram name="Prerender.SimulatedLocalBrowsingBaselinePLT"/>
  <affected-histogram name="Prerender.SimulatedLocalBrowsingPLT"/>
</histogram_suffixes>

<histogram_suffixes name="PrerenderHoverType" ordering="prefix">
  <obsolete>
    deprecated May 10 2012
  </obsolete>
  <suffix name="HoverStats_50" label="Hover stats @ threshold 50 ms."/>
  <suffix name="HoverStats_75" label="Hover stats @ threshold 75 ms."/>
  <suffix name="HoverStats_100" label="Hover stats @ threshold 100 ms."/>
  <suffix name="HoverStats_150" label="Hover stats @ threshold 150 ms."/>
  <suffix name="HoverStats_200" label="Hover stats @ threshold 200 ms."/>
  <suffix name="HoverStats_250" label="Hover stats @ threshold 250 ms."/>
  <suffix name="HoverStats_300" label="Hover stats @ threshold 300 ms."/>
  <suffix name="HoverStats_400" label="Hover stats @ threshold 400 ms."/>
  <suffix name="HoverStats_500" label="Hover stats @ threshold 500 ms."/>
  <suffix name="HoverStats_750" label="Hover stats @ threshold 750 ms."/>
  <suffix name="HoverStats_1000" label="Hover stats @ threshold 1000 ms."/>
  <suffix name="HoverStats_1500" label="Hover stats @ threshold 1500 ms."/>
  <suffix name="HoverStats_2000" label="Hover stats @ threshold 2000 ms."/>
  <suffix name="HoverStats_3000" label="Hover stats @ threshold 3000 ms."/>
  <suffix name="HoverStats_4000" label="Hover stats @ threshold 4000 ms."/>
  <suffix name="HoverStats_5000" label="Hover stats @ threshold 5000 ms."/>
  <affected-histogram name="Prerender.Events"/>
  <affected-histogram name="Prerender.TimeToClick"/>
</histogram_suffixes>

<histogram_suffixes name="PrerenderSource" ordering="prefix">
  <suffix name="" label="All prerenders."/>
  <suffix name="exp1" label="Likelihood threshold experiment 1.">
    <obsolete>
      Deprecated April 2015
    </obsolete>
  </suffix>
  <suffix name="exp2" label="Likelihood threshold experiment 2.">
    <obsolete>
      Deprecated April 2015
    </obsolete>
  </suffix>
  <suffix name="exp3" label="Likelihood threshold experiment 3.">
    <obsolete>
      Deprecated April 2015
    </obsolete>
  </suffix>
  <suffix name="exp4" label="Likelihood threshold experiment 4.">
    <obsolete>
      Deprecated April 2015
    </obsolete>
  </suffix>
  <suffix name="exp5" label="Likelihood threshold experiment 5.">
    <obsolete>
      Deprecated April 2015
    </obsolete>
  </suffix>
  <suffix name="exp6" label="Likelihood threshold experiment 6.">
    <obsolete>
      Deprecated April 2015
    </obsolete>
  </suffix>
  <suffix name="exp7" label="Likelihood threshold experiment 7.">
    <obsolete>
      Deprecated April 2015
    </obsolete>
  </suffix>
  <suffix name="exp8" label="Likelihood threshold experiment 8.">
    <obsolete>
      Deprecated April 2015
    </obsolete>
  </suffix>
  <suffix name="exp9" label="Likelihood threshold experiment 9.">
    <obsolete>
      Deprecated April 2015
    </obsolete>
  </suffix>
  <suffix name="gws" label="GWS triggered prerender."/>
  <suffix name="externalrequest" label="Externally triggered prerender."/>
  <suffix name="externalrequestforced"
      label="Forced prerender regardless of network."/>
  <suffix name="Instant" label="Instant search prerender."/>
  <suffix name="localpredictor" label="Local predictor triggered prerender.">
    <obsolete>
      Deprecated April 2015
    </obsolete>
  </suffix>
  <suffix name="omnibox" label="Triggered from the omnibox."/>
  <suffix name="wash" label="Multiple sources could have triggered."/>
  <suffix name="web" label="Link triggered prerender."/>
  <suffix name="webcross"
      label="Link triggered prerender, rel=prerender, cross domain."/>
  <suffix name="websame"
      label="Link triggered prerender, rel=prerender, same domain."/>
  <suffix name="webnext" label="Link triggered prerender, rel=next."/>
  <suffix name="offline"
      label="Prerender triggered for saving a page for offline use."/>
  <affected-histogram name="Prerender.AbandonTimeUntilUsed"/>
  <affected-histogram name="Prerender.CookieSendType"/>
  <affected-histogram name="Prerender.CookieStatus"/>
  <affected-histogram name="Prerender.Event"/>
  <affected-histogram name="Prerender.FinalStatus"/>
  <affected-histogram name="Prerender.FinalStatus_Prerender5minTTL"/>
  <affected-histogram name="Prerender.FinalStatus_PrerenderControl"/>
  <affected-histogram name="Prerender.FinalStatus_PrerenderEnabled"/>
  <affected-histogram name="Prerender.FinalStatus_PrerenderMatchComplete"/>
  <affected-histogram name="Prerender.FinalStatus_PrerenderMulti"/>
  <affected-histogram name="Prerender.FinalStatus_PrerenderNoUse"/>
  <affected-histogram name="Prerender.FinalStatusMatchComplete"/>
  <affected-histogram
      name="Prerender.FinalStatusMatchComplete_Prerender5minTTL"/>
  <affected-histogram
      name="Prerender.FinalStatusMatchComplete_PrerenderControl"/>
  <affected-histogram
      name="Prerender.FinalStatusMatchComplete_PrerenderEnabled"/>
  <affected-histogram
      name="Prerender.FinalStatusMatchComplete_PrerenderMatchComplete"/>
  <affected-histogram name="Prerender.FinalStatusMatchComplete_PrerenderMulti"/>
  <affected-histogram name="Prerender.FinalStatusMatchComplete_PrerenderNoUse"/>
  <affected-histogram name="Prerender.FractionPixelsFinalAtSwapin"/>
  <affected-histogram
      name="Prerender.FractionPixelsFinalAtSwapin_Prerender5minTTL"/>
  <affected-histogram
      name="Prerender.FractionPixelsFinalAtSwapin_PrerenderControl"/>
  <affected-histogram
      name="Prerender.FractionPixelsFinalAtSwapin_PrerenderEnabled"/>
  <affected-histogram
      name="Prerender.FractionPixelsFinalAtSwapin_PrerenderMatchComplete"/>
  <affected-histogram
      name="Prerender.FractionPixelsFinalAtSwapin_PrerenderMulti"/>
  <affected-histogram
      name="Prerender.FractionPixelsFinalAtSwapin_PrerenderNoUse"/>
  <affected-histogram name="Prerender.LocalPredictorEvent"/>
  <affected-histogram name="Prerender.LocalPredictorEvent_Prerender5minTTL"/>
  <affected-histogram name="Prerender.LocalPredictorEvent_PrerenderControl"/>
  <affected-histogram name="Prerender.LocalPredictorEvent_PrerenderEnabled"/>
  <affected-histogram
      name="Prerender.LocalPredictorEvent_PrerenderMatchComplete"/>
  <affected-histogram name="Prerender.LocalPredictorEvent_PrerenderMulti"/>
  <affected-histogram name="Prerender.LocalPredictorEvent_PrerenderNoUse"/>
  <affected-histogram name="Prerender.LocalPredictorTimeUntilUsed"/>
  <affected-histogram name="Prerender.NetworkBytesUsed"/>
  <affected-histogram name="Prerender.NetworkBytesWasted"/>
  <affected-histogram name="Prerender.PageVisitedStatus"/>
  <affected-histogram name="Prerender.PerceivedPLT"/>
  <affected-histogram name="Prerender.PerceivedPLT_Prerender5minTTL"/>
  <affected-histogram name="Prerender.PerceivedPLT_PrerenderControl"/>
  <affected-histogram name="Prerender.PerceivedPLT_PrerenderEnabled"/>
  <affected-histogram name="Prerender.PerceivedPLT_PrerenderMatchComplete"/>
  <affected-histogram name="Prerender.PerceivedPLT_PrerenderMulti"/>
  <affected-histogram name="Prerender.PerceivedPLT_PrerenderNoUse"/>
  <affected-histogram name="Prerender.PerceivedPLTFirstAfterMiss"/>
  <affected-histogram
      name="Prerender.PerceivedPLTFirstAfterMiss_Prerender5minTTL"/>
  <affected-histogram
      name="Prerender.PerceivedPLTFirstAfterMiss_PrerenderControl"/>
  <affected-histogram
      name="Prerender.PerceivedPLTFirstAfterMiss_PrerenderEnabled"/>
  <affected-histogram
      name="Prerender.PerceivedPLTFirstAfterMiss_PrerenderMatchComplete"/>
  <affected-histogram
      name="Prerender.PerceivedPLTFirstAfterMiss_PrerenderMulti"/>
  <affected-histogram
      name="Prerender.PerceivedPLTFirstAfterMiss_PrerenderNoUse"/>
  <affected-histogram name="Prerender.PerceivedPLTFirstAfterMissAnyOnly"/>
  <affected-histogram
      name="Prerender.PerceivedPLTFirstAfterMissAnyOnly_Prerender5minTTL"/>
  <affected-histogram
      name="Prerender.PerceivedPLTFirstAfterMissAnyOnly_PrerenderControl"/>
  <affected-histogram
      name="Prerender.PerceivedPLTFirstAfterMissAnyOnly_PrerenderEnabled"/>
  <affected-histogram
      name="Prerender.PerceivedPLTFirstAfterMissAnyOnly_PrerenderMatchComplete"/>
  <affected-histogram
      name="Prerender.PerceivedPLTFirstAfterMissAnyOnly_PrerenderMulti"/>
  <affected-histogram
      name="Prerender.PerceivedPLTFirstAfterMissAnyOnly_PrerenderNoUse"/>
  <affected-histogram name="Prerender.PerceivedPLTFirstAfterMissBoth"/>
  <affected-histogram
      name="Prerender.PerceivedPLTFirstAfterMissBoth_Prerender5minTTL"/>
  <affected-histogram
      name="Prerender.PerceivedPLTFirstAfterMissBoth_PrerenderControl"/>
  <affected-histogram
      name="Prerender.PerceivedPLTFirstAfterMissBoth_PrerenderEnabled"/>
  <affected-histogram
      name="Prerender.PerceivedPLTFirstAfterMissBoth_PrerenderMatchComplete"/>
  <affected-histogram
      name="Prerender.PerceivedPLTFirstAfterMissBoth_PrerenderMulti"/>
  <affected-histogram
      name="Prerender.PerceivedPLTFirstAfterMissBoth_PrerenderNoUse"/>
  <affected-histogram
      name="Prerender.PerceivedPLTFirstAfterMissNonOverlapping"/>
  <affected-histogram
      name="Prerender.PerceivedPLTFirstAfterMissNonOverlapping_Prerender5minTTL"/>
  <affected-histogram
      name="Prerender.PerceivedPLTFirstAfterMissNonOverlapping_PrerenderControl"/>
  <affected-histogram
      name="Prerender.PerceivedPLTFirstAfterMissNonOverlapping_PrerenderEnabled"/>
  <affected-histogram
      name="Prerender.PerceivedPLTFirstAfterMissNonOverlapping_PrerenderMatchComplete"/>
  <affected-histogram
      name="Prerender.PerceivedPLTFirstAfterMissNonOverlapping_PrerenderMulti"/>
  <affected-histogram
      name="Prerender.PerceivedPLTFirstAfterMissNonOverlapping_PrerenderNoUse"/>
  <affected-histogram
      name="Prerender.PerceivedPLTFirstAfterMissNonOverlappingOnly"/>
  <affected-histogram
      name="Prerender.PerceivedPLTFirstAfterMissNonOverlappingOnly_Prerender5minTTL"/>
  <affected-histogram
      name="Prerender.PerceivedPLTFirstAfterMissNonOverlappingOnly_PrerenderControl"/>
  <affected-histogram
      name="Prerender.PerceivedPLTFirstAfterMissNonOverlappingOnly_PrerenderEnabled"/>
  <affected-histogram
      name="Prerender.PerceivedPLTFirstAfterMissNonOverlappingOnly_PrerenderMatchComplete"/>
  <affected-histogram
      name="Prerender.PerceivedPLTFirstAfterMissNonOverlappingOnly_PrerenderMulti"/>
  <affected-histogram
      name="Prerender.PerceivedPLTFirstAfterMissNonOverlappingOnly_PrerenderNoUse"/>
  <affected-histogram name="Prerender.PerceivedPLTMatched"/>
  <affected-histogram name="Prerender.PerceivedPLTMatched_Prerender5minTTL"/>
  <affected-histogram name="Prerender.PerceivedPLTMatched_PrerenderControl"/>
  <affected-histogram name="Prerender.PerceivedPLTMatched_PrerenderEnabled"/>
  <affected-histogram
      name="Prerender.PerceivedPLTMatched_PrerenderMatchComplete"/>
  <affected-histogram name="Prerender.PerceivedPLTMatched_PrerenderMulti"/>
  <affected-histogram name="Prerender.PerceivedPLTMatched_PrerenderNoUse"/>
  <affected-histogram name="Prerender.PerceivedPLTMatchedComplete"/>
  <affected-histogram
      name="Prerender.PerceivedPLTMatchedComplete_Prerender5minTTL"/>
  <affected-histogram
      name="Prerender.PerceivedPLTMatchedComplete_PrerenderControl"/>
  <affected-histogram
      name="Prerender.PerceivedPLTMatchedComplete_PrerenderEnabled"/>
  <affected-histogram
      name="Prerender.PerceivedPLTMatchedComplete_PrerenderMatchComplete"/>
  <affected-histogram
      name="Prerender.PerceivedPLTMatchedComplete_PrerenderMulti"/>
  <affected-histogram
      name="Prerender.PerceivedPLTMatchedComplete_PrerenderNoUse"/>
  <affected-histogram name="Prerender.PerceivedPLTWindowed"/>
  <affected-histogram name="Prerender.PerceivedPLTWindowed_PrerenderEnabled"/>
  <affected-histogram name="Prerender.PerceivedPLTWindowNotMatched"/>
  <affected-histogram
      name="Prerender.PerceivedPLTWindowNotMatched_Prerender5minTTL"/>
  <affected-histogram
      name="Prerender.PerceivedPLTWindowNotMatched_PrerenderControl"/>
  <affected-histogram
      name="Prerender.PerceivedPLTWindowNotMatched_PrerenderEnabled"/>
  <affected-histogram
      name="Prerender.PerceivedPLTWindowNotMatched_PrerenderMatchComplete"/>
  <affected-histogram
      name="Prerender.PerceivedPLTWindowNotMatched_PrerenderMulti"/>
  <affected-histogram
      name="Prerender.PerceivedPLTWindowNotMatched_PrerenderNoUse"/>
  <affected-histogram name="Prerender.PercentLoadDoneAtSwapin"/>
  <affected-histogram
      name="Prerender.PercentLoadDoneAtSwapin_Prerender5minTTL"/>
  <affected-histogram
      name="Prerender.PercentLoadDoneAtSwapin_PrerenderControl"/>
  <affected-histogram
      name="Prerender.PercentLoadDoneAtSwapin_PrerenderEnabled"/>
  <affected-histogram
      name="Prerender.PercentLoadDoneAtSwapin_PrerenderMatchComplete"/>
  <affected-histogram name="Prerender.PercentLoadDoneAtSwapin_PrerenderMulti"/>
  <affected-histogram name="Prerender.PercentLoadDoneAtSwapin_PrerenderNoUse"/>
  <affected-histogram name="Prerender.PrerenderNotSwappedInPLT"/>
  <affected-histogram
      name="Prerender.PrerenderNotSwappedInPLT_Prerender5minTTL"/>
  <affected-histogram
      name="Prerender.PrerenderNotSwappedInPLT_PrerenderControl"/>
  <affected-histogram
      name="Prerender.PrerenderNotSwappedInPLT_PrerenderEnabled"/>
  <affected-histogram
      name="Prerender.PrerenderNotSwappedInPLT_PrerenderMatchComplete"/>
  <affected-histogram name="Prerender.PrerenderNotSwappedInPLT_PrerenderMulti"/>
  <affected-histogram name="Prerender.PrerenderNotSwappedInPLT_PrerenderNoUse"/>
  <affected-histogram name="Prerender.PrerendersPerSessionCount"/>
  <affected-histogram name="Prerender.SimulatedLocalBrowsingBaselinePLT"/>
  <affected-histogram
      name="Prerender.SimulatedLocalBrowsingBaselinePLT_Prerender5minTTL"/>
  <affected-histogram
      name="Prerender.SimulatedLocalBrowsingBaselinePLT_PrerenderControl"/>
  <affected-histogram
      name="Prerender.SimulatedLocalBrowsingBaselinePLT_PrerenderEnabled"/>
  <affected-histogram
      name="Prerender.SimulatedLocalBrowsingBaselinePLT_PrerenderMatchComplete"/>
  <affected-histogram
      name="Prerender.SimulatedLocalBrowsingBaselinePLT_PrerenderMulti"/>
  <affected-histogram
      name="Prerender.SimulatedLocalBrowsingBaselinePLT_PrerenderNoUse"/>
  <affected-histogram name="Prerender.SimulatedLocalBrowsingPLT"/>
  <affected-histogram
      name="Prerender.SimulatedLocalBrowsingPLT_Prerender5minTTL"/>
  <affected-histogram
      name="Prerender.SimulatedLocalBrowsingPLT_PrerenderControl"/>
  <affected-histogram
      name="Prerender.SimulatedLocalBrowsingPLT_PrerenderEnabled"/>
  <affected-histogram
      name="Prerender.SimulatedLocalBrowsingPLT_PrerenderMatchComplete"/>
  <affected-histogram
      name="Prerender.SimulatedLocalBrowsingPLT_PrerenderMulti"/>
  <affected-histogram
      name="Prerender.SimulatedLocalBrowsingPLT_PrerenderNoUse"/>
  <affected-histogram name="Prerender.TimeBetweenPrerenderRequests"/>
  <affected-histogram name="Prerender.TimeSinceLastRecentVisit"/>
  <affected-histogram name="Prerender.TimeUntilUsed2"/>
</histogram_suffixes>

<histogram_suffixes name="ProfileMenuGAIASource" separator=".">
  <suffix name="NonGAIA" label="Interaction was not initiated from GAIA"/>
  <suffix name="GAIASignout"
      label="GAIA-initiated interaction indicating a service type of Signout"/>
  <suffix name="GAIAIncognito"
      label="GAIA-initiated interaction indicating a service type of
             Incognito (used for DesktopMenu)"/>
  <suffix name="GAIASignoutIncognito"
      label="GAIA-initiated interaction indicating a service type of Signout
             and go Incognito (used for AndroidAccountManagementMenu)"/>
  <suffix name="GAIAAddSession"
      label="GAIA-initiated interaction indicating a service type of Add a
             Session"/>
  <suffix name="GAIAReAuth"
      label="GAIA-initiated interaction indicating a service type of
             Reauthenticate this user"/>
  <suffix name="GAIASignup"
      label="GAIA-initiated interaction indicating a service type of Add an
             account"/>
  <suffix name="GAIADefault"
      label="GAIA-initiated interaction indicating the default service type"/>
  <affected-histogram name="Profile.AndroidAccountManagementMenu"/>
  <affected-histogram name="Profile.DesktopMenu"/>
</histogram_suffixes>

<histogram_suffixes name="ProfileOpenState" separator=".">
  <suffix name="ToOpenedProfile"
      label="The profile being switched to was already loaded and had at
             least one open browser"/>
  <suffix name="ToUnopenedProfile"
      label="The profile being switched to had not yet been loaded this
             Chrome session"/>
  <suffix name="ToOpenedProfileWithoutBrowser"
      label="The profile being switched to was already opened and had no
             active browsers"/>
  <affected-histogram name="Profile.OpenMethod"/>
</histogram_suffixes>

<histogram_suffixes name="ProfilePictureDownload" separator=".">
  <suffix name="Default.OOBE" label="default picture, in OOBE"/>
  <suffix name="Default.LoggedIn" label="default picture, after login"/>
  <suffix name="Default.Preferences" label="default picture, in Prefs"/>
  <suffix name="Failure.OOBE" label="download has failed, in OOBE"/>
  <suffix name="Failure.LoggedIn" label="download has failed, after login"/>
  <suffix name="Failure.Preferences" label="download has failed, in Prefs"/>
  <suffix name="Success.OOBE" label="download was successful, in OOBE"/>
  <suffix name="Success.LoggedIn" label="download was successful, after login"/>
  <suffix name="Success.Preferences" label="download was successful, in Prefs"/>
  <affected-histogram name="UserImage.ProfileDownloadTime"/>
</histogram_suffixes>

<histogram_suffixes name="ProgressiveScan">
  <suffix name="FullScan" label="Using WPA_supplicant to scan."/>
  <suffix name="33Percent_4MinMax"
      label="Progressive scan @ 33%, 4 frequency bins."/>
  <suffix name="50Percent_4MinMax"
      label="Progressive scan @ 50%, 4 frequency bins."/>
  <suffix name="50Percent_8MinMax"
      label="Progressive scan @ 50%, 8 frequency bins."/>
  <suffix name="100Percent_8MinMax"
      label="Progressive scan @ 100%, 8 frequency bins."/>
  <suffix name="100Percent_1MinSeen_A"
      label="Progressive scan @ all previously seen frequencies (A)."/>
  <suffix name="100Percent_1MinSeen_B"
      label="Progressive scan @ all previously seen frequencies (B)."/>
  <suffix name="100Percent_1Min_4Max"
      label="Progressive scan @ 100%, minimum 1/maximum 4 frequencies."/>
  <affected-histogram name="Network.Shill.TimeToDrop"/>
  <affected-histogram name="Network.Shill.WiFi.ScanResult"/>
  <affected-histogram name="Network.Shill.Wifi.TimeToConnect"/>
  <affected-histogram name="Network.Shill.Wifi.TimeToJoin"/>
  <affected-histogram name="Network.Shill.Wifi.TimeToScan"/>
  <affected-histogram name="Network.Shill.Wifi.TimeToScanAndConnect"/>
</histogram_suffixes>

<histogram_suffixes name="ProtectorSettingChange" separator=".">
  <obsolete>
    Deprecated 8/2013. No longer tracked.
  </obsolete>
  <suffix name="Applied" label="change has been accepted by user"/>
  <suffix name="Corrupt" label="possibly hijacked, backup invalid"/>
  <suffix name="Discarded" label="change has been reverted by user"/>
  <suffix name="Fallback" label="fallback provider used (no backup available)"/>
  <suffix name="Hijacked" label="hijacked, with a valid backup"/>
  <suffix name="Missing" label="fallback provider missing, added"/>
  <suffix name="New" label="(obsolete, was sum of Corrupt+Hijacked)"/>
  <suffix name="Restored"
      label="search provider restored by Protector before showing the bubble"/>
  <suffix name="Timeout" label="change has been ignored by user (timed out)"/>
  <affected-histogram name="Protector.SearchProvider"/>
  <affected-histogram name="Protector.StartupSettings"/>
</histogram_suffixes>

<histogram_suffixes name="ProxyConnectionImpact">
  <suffix name="proxy_connections_16"
      label="with 16 connections per proxy server"/>
  <suffix name="proxy_connections_32"
      label="with 32 connections per proxy server"/>
  <suffix name="proxy_connections_64"
      label="with 64 connections per proxy server"/>
  <suffix name="proxy_connections_8"
      label="with 8 connections per proxy server"/>
  <affected-histogram name="Net.HttpProxySocketRequestTime"/>
  <affected-histogram name="Net.SocksSocketRequestTime"/>
  <affected-histogram name="PLT.Abandoned"/>
  <affected-histogram name="PLT.BeginToFinish_LinkLoadNormal"/>
  <affected-histogram name="PLT.BeginToFinish_LinkLoadReload"/>
  <affected-histogram name="PLT.BeginToFinish_LinkLoadStaleOk"/>
  <affected-histogram name="PLT.BeginToFinish_NormalLoad"/>
</histogram_suffixes>

<histogram_suffixes name="QueryTimeSuffix" separator=".">
  <suffix name="0" label="N = 0"/>
  <suffix name="1" label="N = 1"/>
  <suffix name="2" label="N = 2"/>
  <suffix name="3" label="N = 3"/>
  <suffix name="4" label="N = 4"/>
  <suffix name="5" label="N = 5"/>
  <affected-histogram name="Omnibox.QueryTime"/>
  <affected-histogram name="Omnibox.QueryTime2"/>
  <affected-histogram name="ShortcutsProvider.QueryIndexTime"/>
</histogram_suffixes>

<histogram_suffixes name="QuicConnectionType" separator="">
  <owner>rch@chromium.org</owner>
  <suffix name="ForHTTP" label="Only insecure HTTP connections are counted.">
    <obsolete>
      Deprecated 10/2015.
    </obsolete>
  </suffix>
  <suffix name="ForHTTPS" label="Only secure HTTPS connections are counted."/>
  <affected-histogram name="Net.QuicSession.ConnectRandomPort"/>
  <affected-histogram
      name="Net.QuicSession.ConnectRandomPortRequiringConfirmation"/>
  <affected-histogram name="Net.QuicSession.ConnectSelectPort">
    <obsolete>
      Deprecated 04/2016.
    </obsolete>
  </affected-histogram>
  <affected-histogram name="Net.QuicSession.HandshakeRoundTrips"/>
</histogram_suffixes>

<histogram_suffixes name="QuicPortSelection" separator="">
  <owner>rch@chromium.org</owner>
  <suffix name="SelectPort"
      label="An effort was mode to (try to) consistently connect using the
             same source port for the given server IP/port."/>
  <suffix name="RandomPort"
      label="The operating system randomly selected a source port for the
             connection."/>
  <affected-histogram name="Net.QuicSession.Connect"/>
</histogram_suffixes>

<histogram_suffixes name="QuicSessionVerifyProofTime" separator=".">
  <suffix name="" label="Verification time for a server."/>
  <suffix name="google" label="Verification time for www.google.com server."/>
  <suffix name="CachedServerConfig"
      label="Verification time for a server when server config from cache is
             used."/>
  <affected-histogram name="Net.QuicSession.VerifyProofTime"/>
</histogram_suffixes>

<histogram_suffixes name="RemoteProcessWarmStartFast" separator="">
  <suffix name="" label="Normal start."/>
  <suffix name="Fast"
      label="Fast start by skipping normal chrome.dll startup."/>
  <affected-histogram name="Startup.WarmStartTimeFromRemoteProcessStart"/>
</histogram_suffixes>

<histogram_suffixes name="RendererEventLatency" separator=".">
  <suffix name="Char" label="The Char event occurs on textual keyboard input."/>
  <suffix name="ContextMenu" label="For ContextMenu event."/>
  <suffix name="GestureDoubleTap"
      label="A GestureDoubleTap occurs when the user double taps on a
             touchscreen."/>
  <suffix name="GestureFlingCancel"
      label="A GestureFlingCancel is sent to the renderer to cancel any
             active flings."/>
  <suffix name="GestureFlingStart"
      label="A GestureFlingStart is sent when the user quickly flicks on a
             touchscreen."/>
  <suffix name="GestureLongPress"
      label="A GestureLongPress is sent when the user taps down and holds
             their finger on a touchscreen."/>
  <suffix name="GestureLongTap"
      label="A GestureLongTap is sent when the user taps down on a
             touchscreen, holds their finger for a while, then releases."/>
  <suffix name="GesturePinchBegin"
      label="A GesturePinchBegin is sent when a user starts a pinch zoom
             motion on a touchscreen."/>
  <suffix name="GesturePinchEnd"
      label="A GesturePinchEnd is sent when the user releases their fingers
             from the touchscreen after performing a pinch zoom motion."/>
  <suffix name="GesturePinchUpdate"
      label="GesturePinchUpdate events are sent while the user is performing
             a pinch zoom motion on a touch screen. GesturePinchUpdate events
             are sent as the user changes the distance between their fingers."/>
  <suffix name="GestureScrollBegin"
      label="A GestureScrollBegin is sent at the beginning of a gesture
             scroll on a touchscreen."/>
  <suffix name="GestureScrollEnd"
      label="A GestureScrollEnd is sent when the user releases their finger
             after a gesture scroll on a touchscreen."/>
  <suffix name="GestureScrollUpdate"
      label="GestureScrollUpdate events are sent as the user drags their
             finger along the touchscreen during a gesture scroll."/>
  <suffix name="GestureScrollUpdateWithoutPropagation"
      label="GestureScrollUpdateWithoutPropagation events are scroll updates
             that shouldn't bubble, generated by a gesture fling."/>
  <suffix name="GestureShowPress"
      label="A GestureShowPress event is sent when the user presses down on
             the touchscreen but before a GestureTapDown."/>
  <suffix name="GestureTap"
      label="A GestureTap is sent when the user presses down and releases on
             a touchscreen."/>
  <suffix name="GestureTapUnconfirmed"
      label="A GestureTapUnconfirmed is sent when the user taps the
             touchscreen but, due to a delay, the GestureTap isn't sent yet."/>
  <suffix name="GestureTapCancel"
      label="A GestureTapCancel is sent to cancel a pending GestureTap event.
             For example, if the user taps down but drags their finger
             instead of releasing it."/>
  <suffix name="GestureTapDown"
      label="A GestureTapDown is sent when the user presses on the
             touchscreen in what could potentially be a full GestureTap
             event."/>
  <suffix name="GestureTwoFingerTap"
      label="A GestureTwoFingerTap is sent when the user presses down a
             releases on a touchscreen with two fingers."/>
  <suffix name="KeyDown"
      label="A KeyDown event is sent when a keyboard key is pressed down."/>
  <suffix name="KeyUp"
      label="A KeyUp event is sent when a depressed keyboard key is released."/>
  <suffix name="MouseDown"
      label="A MouseDown event is sent when the user click down a mouse
             button."/>
  <suffix name="MouseEnter"
      label="A MouseEnter event is sent when the mouse cursor enters the
             renderer area."/>
  <suffix name="MouseLeave"
      label="A MouseLeave event is sent when the mouse cursor leaves the
             renderer area."/>
  <suffix name="MouseMove"
      label="A MouseMove event is sent when the mouse cursor moves within the
             renderer area."/>
  <suffix name="MouseUp"
      label="A MouseUp event is sent when a depressed mouse button is
             released."/>
  <suffix name="MouseWheel"
      label="A MouseWheel event is sent when the user scrolls using the mouse
             wheel within the renderer area."/>
  <suffix name="RawKeyDown"
      label="A RawKeyDown event is a wrapper around a native key event."/>
  <suffix name="TouchCancel"
      label="A TouchCancel is used to cancel an existing touch point. For
             example, if the user drags a finger outside the bounds of the
             renderer."/>
  <suffix name="TouchEnd"
      label="A TouchEnd is send when the user lifts a finger from the
             touchscreen."/>
  <suffix name="TouchMove"
      label="A TouchMove is sent when the user moves a finger along the
             touchscreen."/>
  <suffix name="TouchStart"
      label="A TouchStart is sent when the user first touches a finger to the
             touchscreen."/>
  <suffix name="Undefined" label="For unknown or undefined events."/>
  <affected-histogram name="Event.Latency.Renderer"/>
  <affected-histogram name="Event.Latency.Renderer2"/>
  <affected-histogram name="Event.Latency.RendererImpl"/>
</histogram_suffixes>

<histogram_suffixes name="RequestMediaKeySystemAccessKeySystems" separator=".">
  <suffix name="ClearKey" label="Requests for the Clear Key key system."/>
  <suffix name="Unknown"
      label="Requests for an unknown or unsupported key system."/>
  <suffix name="Widevine" label="Requests for the Widevine key system."/>
  <affected-histogram name="Media.EME.RequestMediaKeySystemAccess"/>
</histogram_suffixes>

<histogram_suffixes name="ResourceLoaderSizeSlice" separator=".">
  <suffix name="LT_2kB" label="Sliced for resources smaller than 2kB."/>
  <suffix name="LT_32kB"
      label="Sliced for resources smaller than 32kB and larger than 2kB."/>
  <suffix name="LT_512kB"
      label="Sliced for resources smaller than 512kB and larger than 32kB."/>
  <suffix name="Over_512kB" label="Sliced for resources larger than 512kB."/>
  <suffix name="InliningApplicable"
      label="Resources that the chunk inlining is applicable."/>
  <affected-histogram name="Net.ResourceLoader.ResponseStartToEnd"/>
</histogram_suffixes>

<histogram_suffixes name="ResourcePrefetchPredictorNetworkTypePrefetch"
    separator=".">
  <suffix name="NotPrefetched"
      label="Number of non-prefetched pages on each type of network."/>
  <suffix name="Prefetched"
      label="Number of prefetched pages on each type of network."/>
  <affected-histogram name="ResourcePrefetchPredictor.NetworkType"/>
</histogram_suffixes>

<histogram_suffixes name="ResourcePrefetchPredictorPLTNetworkTypes">
  <suffix name="2G" label="Page load time in 2G network."/>
  <suffix name="3G" label="Page load time in 3G network."/>
  <suffix name="4G" label="Page load time in 4G network."/>
  <suffix name="Bluetooth" label="Page load time in bluetooth network."/>
  <suffix name="Cellular" label="Page load time in cellular network."/>
  <suffix name="Ethernet" label="Page load time in Ethernet."/>
  <suffix name="None" label="Page load time without network connection."/>
  <suffix name="Unknown" label="Page load time in unknown type of network."/>
  <suffix name="WiFi" label="Page load time in WiFi network."/>
  <affected-histogram name="ResourcePrefetchPredictor.PLT"/>
  <affected-histogram name="ResourcePrefetchPredictor.PLT.NotPrefetched"/>
  <affected-histogram name="ResourcePrefetchPredictor.PLT.Prefetched"/>
  <affected-histogram name="ResourcePrefetchPredictor.PLT.Prefetched.Host"/>
  <affected-histogram name="ResourcePrefetchPredictor.PLT.Prefetched.Url"/>
</histogram_suffixes>

<histogram_suffixes name="ResourcePrefetchPredictorPLTPrefetch" separator=".">
  <suffix name="NotPrefetched"
      label="Page load time for non-prefetched pages."/>
  <suffix name="Prefetched" label="Page load time for prefetched pages."/>
  <affected-histogram name="ResourcePrefetchPredictor.PLT"/>
</histogram_suffixes>

<histogram_suffixes name="ResourcePrefetchPredictorPLTPrefetchType"
    separator=".">
  <suffix name="Host"
      label="Page load time for prefetched pages based on main frame host."/>
  <suffix name="Url"
      label="Page load time for prefetched pages based on main frame URL."/>
  <affected-histogram name="ResourcePrefetchPredictor.PLT.Prefetched"/>
</histogram_suffixes>

<histogram_suffixes name="ResourcePrefetchPredictorPredictedStatsVariedMax">
  <suffix name="25"
      label="Covers statistics when the maximum subresources that can be
             prefetched is set to 25."/>
  <suffix name="50"
      label="Covers statistics when the maximum subresources that can be
             prefetched is set to 50."/>
  <affected-histogram
      name="ResourcePrefetchPredictor.Host.PredictedPrefetchCount"/>
  <affected-histogram
      name="ResourcePrefetchPredictor.Host.PredictedPrefetchFromCache_Count"/>
  <affected-histogram
      name="ResourcePrefetchPredictor.Host.PredictedPrefetchFromCache_PercentOfTotalPrefetched"/>
  <affected-histogram
      name="ResourcePrefetchPredictor.Host.PredictedPrefetchFromNetwork_Count"/>
  <affected-histogram
      name="ResourcePrefetchPredictor.Host.PredictedPrefetchFromNetwork_PercentOfTotalPrefetched"/>
  <affected-histogram
      name="ResourcePrefetchPredictor.Host.PredictedPrefetchFromNetworkPercentOfTotalFromNetwork"/>
  <affected-histogram
      name="ResourcePrefetchPredictor.Host.PredictedPrefetchMisses_Count"/>
  <affected-histogram
      name="ResourcePrefetchPredictor.Host.PredictedPrefetchMisses_PercentOfTotalPrefetched"/>
  <affected-histogram
      name="ResourcePrefetchPredictor.Url.PredictedPrefetchCount"/>
  <affected-histogram
      name="ResourcePrefetchPredictor.Url.PredictedPrefetchFromCache_Count"/>
  <affected-histogram
      name="ResourcePrefetchPredictor.Url.PredictedPrefetchFromCache_PercentOfTotalPrefetched"/>
  <affected-histogram
      name="ResourcePrefetchPredictor.Url.PredictedPrefetchFromNetwork_Count"/>
  <affected-histogram
      name="ResourcePrefetchPredictor.Url.PredictedPrefetchFromNetwork_PercentOfTotalPrefetched"/>
  <affected-histogram
      name="ResourcePrefetchPredictor.Url.PredictedPrefetchFromNetworkPercentOfTotalFromNetwork"/>
  <affected-histogram
      name="ResourcePrefetchPredictor.Url.PredictedPrefetchMisses_Count"/>
  <affected-histogram
      name="ResourcePrefetchPredictor.Url.PredictedPrefetchMisses_PercentOfTotalPrefetched"/>
</histogram_suffixes>

<histogram_suffixes name="ResourcePrefetchPredictorPredictedStatTypes">
  <suffix name="Count" label="Predicted accuracy stats as the raw numbers."/>
  <suffix name="PercentOfTotalPrefetched"
      label="Predicted accuracy stats as percent of total resources
             prefetched."/>
  <affected-histogram
      name="ResourcePrefetchPredictor.Host.PredictedPrefetchFromCache"/>
  <affected-histogram
      name="ResourcePrefetchPredictor.Host.PredictedPrefetchFromNetwork"/>
  <affected-histogram
      name="ResourcePrefetchPredictor.Host.PredictedPrefetchMisses"/>
  <affected-histogram
      name="ResourcePrefetchPredictor.Url.PredictedPrefetchFromCache"/>
  <affected-histogram
      name="ResourcePrefetchPredictor.Url.PredictedPrefetchFromNetwork"/>
  <affected-histogram
      name="ResourcePrefetchPredictor.Url.PredictedPrefetchMisses"/>
</histogram_suffixes>

<histogram_suffixes name="ResourceSchedulerClientBreakDown">
  <obsolete>
    Deprecated 1/2016
  </obsolete>
  <suffix name="1Client" label="One Client in the ResourceScheduler."/>
  <suffix name="Max5Clients"
      label="Two to five Clients in the ResourceScheduler."/>
  <suffix name="Max15Clients"
      label="Six to fifteen Clients in the ResourceScheduler."/>
  <suffix name="Max30Clients"
      label="Sixteen to thirty Clients in the ResourceScheduler."/>
  <suffix name="Over30Clients"
      label="Over thirty Clients in the ResourceScheduler."/>
  <affected-histogram name="ResourceScheduler.ClientLoadedTime.Active"/>
  <affected-histogram name="ResourceScheduler.ClientLoadedTime.Background"/>
  <affected-histogram name="ResourceScheduler.ClientLoadedTime.Other"/>
  <affected-histogram
      name="ResourceScheduler.ClientLoadedTime.Other.SwitchedToActive"/>
</histogram_suffixes>

<histogram_suffixes name="ResourceType" separator=".">
  <suffix name="MainResource"/>
  <suffix name="Image"/>
  <suffix name="CSSStyleSheet"/>
  <suffix name="Script"/>
  <suffix name="Font"/>
  <suffix name="Raw"/>
  <suffix name="SVGDocument"/>
  <suffix name="XSLStyleSheet"/>
  <suffix name="LinkPrefetch"/>
  <suffix name="LinkSubresource"/>
  <suffix name="TextTrack"/>
  <suffix name="ImportResource"/>
  <suffix name="Media"/>
  <suffix name="Manifest"/>
  <affected-histogram name="Blink.MemoryCache.RevalidationPolicy"/>
  <affected-histogram name="Blink.MemoryCache.RevalidationPolicy.Dead"/>
  <affected-histogram name="Blink.MemoryCache.RevalidationPolicy.Preload"/>
  <affected-histogram name="PreloadScanner.Counts"/>
  <affected-histogram name="PreloadScanner.Counts.Miss"/>
</histogram_suffixes>

<histogram_suffixes name="SafeBrowsingLists" separator=".">
  <suffix name="Browse" label="Browse"/>
  <suffix name="Download" label="Download"/>
  <suffix name="CsdWhitelist" label="CsdWhitelist"/>
  <suffix name="DownloadWhitelist" label="DownloadWhitelist"/>
  <suffix name="InclusionWhitelist" label="InclusionWhitelist"/>
  <suffix name="ExtensionBlacklist" label="ExtensionBlacklist"/>
  <suffix name="SideEffectFreeWhitelist" label="SideEffectFreeWhitelist">
    <obsolete>
      Deprecated 4/2015.
    </obsolete>
  </suffix>
  <suffix name="IPBlacklist" label="IPBlacklist"/>
  <suffix name="UnwantedSoftware" label="UnwantedSoftware"/>
  <suffix name="ResourceBlacklist" label="ResourceBlacklist"/>
  <affected-histogram name="SB2.DatabaseSizeKilobytes"/>
  <affected-histogram name="SB2.PrefixSetSizeKilobytes"/>
</histogram_suffixes>

<histogram_suffixes name="SameVersionStartupCounts" separator=".">
  <suffix name="1" label="1st startup with same version"/>
  <suffix name="2" label="2nd startup with same version"/>
  <suffix name="3" label="3rd startup with same version"/>
  <suffix name="4" label="4th startup with same version"/>
  <suffix name="5" label="5th startup with same version"/>
  <suffix name="6" label="6th startup with same version"/>
  <suffix name="7" label="7th startup with same version"/>
  <suffix name="8" label="8th startup with same version"/>
  <suffix name="9" label="9th startup with same version"/>
  <suffix name="Over" label="&gt; 9th startup with same version"/>
  <affected-histogram name="Startup.BrowserMessageLoopStartHardFaultCount"/>
  <affected-histogram name="Startup.Temperature"/>
</histogram_suffixes>

<histogram_suffixes name="SB2ResourceTypes" separator=".">
  <suffix name="Checked"
      label="Resources that were checked. Logged before the resource starts
             loading and again for each redirect."/>
  <suffix name="Safe"
      label="Resources that were checked and deemed safe. Logged when the URL
             check is completed."/>
  <suffix name="Skipped"
      label="Resources that were not checked because they are not active-ish
             content types. Only used on mobile. Logged before the resource
             request starts."/>
  <suffix name="Unsafe"
      label="Resources that were checked and classified as unsafe. Logged
             when the URL check is completed."/>
  <suffix name="UnsafePrefetchCanceled"
      label="Pre-fetched resources that were checked and classified as
             unsafe. Logged as the request is canceled."/>
  <affected-histogram name="SB2.ResourceTypes"/>
  <affected-histogram name="SB2.ResourceTypes2"/>
</histogram_suffixes>

<histogram_suffixes name="SBInterstitial">
  <obsolete>
    deprecated November 10 2012 crrev.com/167056
  </obsolete>
  <suffix name="V1" label="version 1 interstitial"/>
  <suffix name="V2" label="version 2 interstitial"/>
  <affected-histogram name="SB2.InterstitialAction"/>
  <affected-histogram name="SB2.MalwareInterstitialTimeClosed"/>
  <affected-histogram name="SB2.MalwareInterstitialTimeDiagnostic"/>
  <affected-histogram name="SB2.MalwareInterstitialTimeLearnMore"/>
  <affected-histogram name="SB2.MalwareInterstitialTimePrivacyPolicy"/>
  <affected-histogram name="SB2.MalwareInterstitialTimeProceed"/>
  <affected-histogram name="SB2.MalwareInterstitialTimeTakeMeBack"/>
</histogram_suffixes>

<histogram_suffixes name="ScreenshareLayerStats" separator=".">
  <suffix name="FrameRate"
      label="Frames per second sent, in fps. The value is reported when a
             stream is removed and is calculated as the total number of
             frames in this layer, divided by the duration of the call."/>
  <suffix name="Qp"
      label="Average quantizer (qp) of frames sent. The value is reported
             when a stream is removed and is calculated, for this layer, as
             the sum of all qp values divided the number of frames."/>
  <suffix name="TargetBitrate"
      label="Average target bitrate in kbps. The value is reported when a
             stream is removed and is calculated as the sum of all target
             bitrates for this layer (sampled after frame has been encoded)
             divided by the total number of frames for this layer."/>
  <affected-histogram name="WebRTC.Video.Screenshare.Layer0"/>
  <affected-histogram name="WebRTC.Video.Screenshare.Layer1"/>
</histogram_suffixes>

<histogram_suffixes name="ScrollUpdateHandledThread">
  <affected-histogram name="Event.Latency.ScrollUpdate.HandledToRendererSwap"/>
  <suffix name="Main" label="ScrollUpdate handled on main thread"/>
  <suffix name="Impl" label="ScrollUpdate handled on impl thread"/>
  <affected-histogram name="Event.Latency.ScrollUpdate.TouchToHandled"/>
</histogram_suffixes>

<histogram_suffixes name="SecurityInterstitialSBType" separator="."
    ordering="prefix">
  <suffix name="harmful"/>
  <suffix name="harmful_subresource"/>
  <suffix name="malware"/>
  <suffix name="malware_subresource"/>
  <suffix name="phishing"/>
  <suffix name="phishing_subresource"/>
  <suffix name="social_engineering_ads"/>
  <suffix name="social_engineering_ads_subresource"/>
  <suffix name="social_engineering_landing"/>
  <suffix name="social_engineering_landing_subresource"/>
  <affected-histogram name="interstitial.decision"/>
  <affected-histogram name="interstitial.decision.repeat_visit"/>
  <affected-histogram name="interstitial.interaction"/>
</histogram_suffixes>

<histogram_suffixes name="SecurityInterstitialSBWithSourceType" separator=".">
  <suffix name="from_data_saver"
      label="Interstitial for a resource classified as unsafe by the Data
             Saver service."/>
  <suffix name="from_device"
      label="Interstitial for a resource classified as unsafe by the Safe
             Browsing database via either
             {Local,Remote}SafeBrowsingDatabaseManager."/>
  <suffix name="from_device_v4"
      label="Interstitial for a resource classified as unsafe by the Safe
             Browsing database version 4 via either
             {Local,Remote}SafeBrowsingDatabaseManager."/>
  <suffix name="from_client_side_detection"
      label="Interstitial for a resource classified as unsafe by the client
             side detection."/>
  <affected-histogram name="interstitial.harmful.decision"/>
  <affected-histogram name="interstitial.harmful.decision.repeat_visit"/>
  <affected-histogram name="interstitial.harmful.interaction"/>
  <affected-histogram name="interstitial.harmful_subresource.decision"/>
  <affected-histogram
      name="interstitial.harmful_subresource.decision.repeat_visit"/>
  <affected-histogram name="interstitial.harmful_subresource.interaction"/>
  <affected-histogram name="interstitial.malware.decision"/>
  <affected-histogram name="interstitial.malware.decision.repeat_visit"/>
  <affected-histogram name="interstitial.malware.interaction"/>
  <affected-histogram name="interstitial.malware_subresource.decision"/>
  <affected-histogram
      name="interstitial.malware_subresource.decision.repeat_visit"/>
  <affected-histogram name="interstitial.malware_subresource.interaction"/>
  <affected-histogram name="interstitial.phishing.decision"/>
  <affected-histogram name="interstitial.phishing.decision.repeat_visit"/>
  <affected-histogram name="interstitial.phishing.interaction"/>
  <affected-histogram name="interstitial.phishing_subresource.decision"/>
  <affected-histogram
      name="interstitial.phishing_subresource.decision.repeat_visit"/>
  <affected-histogram name="interstitial.phishing_subresource.interaction"/>
  <affected-histogram name="interstitial.social_engineering_ads.decision"/>
  <affected-histogram
      name="interstitial.social_engineering_ads.decision.repeat_visit"/>
  <affected-histogram name="interstitial.social_engineering_ads.interaction"/>
  <affected-histogram
      name="interstitial.social_engineering_ads_subresource.decision"/>
  <affected-histogram
      name="interstitial.social_engineering_ads_subresource.decision.repeat_visit"/>
  <affected-histogram
      name="interstitial.social_engineering_ads_subresource.interaction"/>
  <affected-histogram name="interstitial.social_engineering_landing.decision"/>
  <affected-histogram
      name="interstitial.social_engineering_landing.decision.repeat_visit"/>
  <affected-histogram
      name="interstitial.social_engineering_landing.interaction"/>
  <affected-histogram
      name="interstitial.social_engineering_landing_subresource.decision"/>
  <affected-histogram
      name="interstitial.social_engineering_landing_subresource.decision.repeat_visit"/>
  <affected-histogram
      name="interstitial.social_engineering_landing_subresource.interaction"/>
</histogram_suffixes>

<histogram_suffixes name="SecurityInterstitialSSLType" separator="."
    ordering="prefix">
  <suffix name="bad_clock"/>
  <suffix name="ssl_nonoverridable"/>
  <suffix name="ssl_overridable"/>
  <affected-histogram name="interstitial.decision"/>
  <affected-histogram name="interstitial.decision.repeat_visit"/>
  <affected-histogram name="interstitial.interaction"/>
</histogram_suffixes>

<histogram_suffixes name="ServiceWorker.EventType">
  <suffix name="ACTIVATE" label="ACTIVATE"/>
  <suffix name="INSTALL" label="INSTALL"/>
  <suffix name="SYNC" label="SYNC"/>
  <suffix name="NOTIFICATION_CLICK" label="NOTIFICATION_CLICK"/>
  <suffix name="PUSH" label="PUSH"/>
  <suffix name="GEOFENCING" label="GEOFENCING">
    <obsolete>
      Deprecated as of 5/2016 because geofencing got removed.
    </obsolete>
  </suffix>
  <suffix name="MESSAGE" label="MESSAGE"/>
  <suffix name="NOTIFICATION_CLOSE" label="NOTIFICATION_CLOSE"/>
  <suffix name="FETCH_MAIN_FRAME" label="FETCH_MAIN_FRAME"/>
  <suffix name="FETCH_SUB_FRAME" label="FETCH_SUB_FRAME"/>
  <suffix name="FETCH_SHARED_WORKER" label="FETCH_SHARED_WORKER"/>
  <suffix name="FETCH_SUB_RESOURCE" label="FETCH_SUB_RESOURCE"/>
  <suffix name="UNKNOWN" label="UNKNOWN"/>
  <suffix name="FOREIGN_FETCH" label="FOREIGN_FETCH"/>
  <affected-histogram name="ServiceWorker.StartWorker.StatusByPurpose"/>
</histogram_suffixes>

<histogram_suffixes name="ServiceWorker.FailureStreak">
  <affected-histogram name="ServiceWorker.StartWorker.AfterFailureStreak"/>
  <suffix name="1" label="Failed one time."/>
  <suffix name="2" label="Failed two times."/>
  <suffix name="3" label="Failed three times."/>
</histogram_suffixes>

<histogram_suffixes name="ServiceWorker.StartSituation">
  <affected-histogram name="EmbeddedWorkerInstance.Start.TimeToEvaluateScript"/>
  <affected-histogram name="EmbeddedWorkerInstance.Start.TimeToLoad.HttpCache"/>
  <affected-histogram
      name="EmbeddedWorkerInstance.Start.TimeToLoad.InstalledScript"/>
  <affected-histogram name="EmbeddedWorkerInstance.Start.TimeToLoad.Network"/>
  <affected-histogram
      name="EmbeddedWorkerInstance.Start.TimeToSendStartWorker"/>
  <affected-histogram name="EmbeddedWorkerInstance.Start.TimeToStartThread"/>
  <affected-histogram name="EmbeddedWorkerInstance.Start.TimeToURLJob"/>
  <suffix name="DuringStartup"
      label="The worker started up during browser startup."/>
  <suffix name="NewProcess"
      label="A new process was created for the worker (or is asyncly being
             created, depending on the histogram)."/>
  <suffix name="ExistingProcess"
      label="An existing process was used for the worker."/>
  <affected-histogram name="ServiceWorker.StartWorker.Time"/>
</histogram_suffixes>

<histogram_suffixes name="ServiceWorkerCache.Cache" separator=".">
  <suffix name="Batch"
      label="The time to perform the 'batch' operation on a ServiceWorker
             Cache, which batches other basic operations."/>
  <suffix name="Keys"
      label="The time to perform the 'keys' operation on a ServiceWorker
             Cache, which returns all of the keys in the cache."/>
  <suffix name="Match"
      label="The time to perform the 'match' operation on a ServiceWorker
             Cache, which does a lookup."/>
  <suffix name="MatchAll"
      label="The time to perform the 'matchAll' operation on a ServiceWorker
             Cache, which does a mass cache lookup."/>
  <affected-histogram name="ServiceWorkerCache.Cache"/>
</histogram_suffixes>

<histogram_suffixes name="ServiceWorkerCache.CacheStorage" separator=".">
  <suffix name="Delete"
      label="The time to perform the 'delete' operation on a ServiceWorker
             CacheStorage, which deletes a cache."/>
  <suffix name="Has"
      label="The time to perform the 'has' operation on a ServiceWorker
             CacheStorage, which returns if the cache exists."/>
  <suffix name="Keys"
      label="The time to perform the 'keys' operation on a ServiceWorker
             CacheStorage, which returns all of the cache names."/>
  <suffix name="Match"
      label="The time to perform the 'match' operation on a ServiceWorker
             CacheStorage, which does a shortcut cache lookup."/>
  <suffix name="Open"
      label="The time to perform the 'open' operation on a ServiceWorker
             CacheStorage, which gets or creates a cache."/>
  <affected-histogram name="ServiceWorkerCache.CacheStorage"/>
</histogram_suffixes>

<histogram_suffixes name="SessionRestoreTabCountMemoryPressure">
  <suffix name="MemoryPressure"
      label="Total tabs involved in session restore that encountered memory
             pressure."/>
  <suffix name="MemoryPressure_Loaded"
      label="Tabs fully loaded before memory pressure."/>
  <suffix name="MemoryPressure_LoadStarted"
      label="Tabs started to load before memory pressure."/>
  <suffix name="MemoryPressure_Deferred"
      label="Tabs deferred by memory pressure."/>
  <suffix name="NoMemoryPressure"
      label="Total tabs involved in a session restore that did not encounter
             memory pressure."/>
  <suffix name="NoMemoryPressure_Loaded"
      label="Tabs fully loaded in a session restore that did not encounter
             memory pressure."/>
  <suffix name="NoMemoryPressure_LoadStarted"
      label="Tabs started to load in a session restore that did not encounter
             memory pressure."/>
  <affected-histogram name="SessionRestore.TabCount"/>
</histogram_suffixes>

<histogram_suffixes name="SessionRestoreTabCounts">
  <suffix name="1" label="1 tab present"/>
  <suffix name="2" label="2 tabs present"/>
  <suffix name="3" label="3 tabs present"/>
  <suffix name="4" label="4 tabs present"/>
  <suffix name="5" label="5 tabs present"/>
  <suffix name="6" label="6 tabs present"/>
  <suffix name="7" label="7 tabs present"/>
  <suffix name="8" label="8 tabs present"/>
  <suffix name="9" label="9 tabs present"/>
  <suffix name="10" label="10 tabs present"/>
  <suffix name="11" label="11 tab present"/>
  <suffix name="12" label="12 tabs present"/>
  <suffix name="13" label="13 tabs present"/>
  <suffix name="14" label="14 tabs present"/>
  <suffix name="15" label="15 tabs present"/>
  <suffix name="16" label="16 tabs present"/>
  <suffix name="17" label="17 tabs present"/>
  <suffix name="18" label="18 tabs present"/>
  <suffix name="19" label="19 tabs present"/>
  <suffix name="20" label="20 tabs present"/>
  <affected-histogram name="SessionRestore.AllTabsLoaded"/>
  <affected-histogram name="SessionRestore.FirstTabPainted"/>
  <affected-histogram name="SessionRestore.ForegroundTabFirstLoaded"/>
  <affected-histogram name="SessionRestore.ForegroundTabFirstPaint"/>
  <affected-histogram name="SessionRestore.ForegroundTabFirstPaint2"/>
  <affected-histogram name="SessionRestore.ForegroundTabFirstPaint3"/>
</histogram_suffixes>

<histogram_suffixes name="SetupInstallTimes" separator=".">
  <suffix name="background" label="Background; lowered priority."/>
  <affected-histogram name="Setup.Install.ApplyArchivePatchTime"/>
  <affected-histogram name="Setup.Install.HasArchivePatch"/>
  <affected-histogram name="Setup.Install.UncompressArchivePatchTime"/>
  <affected-histogram name="Setup.Install.UncompressFullArchiveTime"/>
  <affected-histogram name="Setup.Install.UnpackFullArchiveTime"/>
</histogram_suffixes>

<histogram_suffixes name="ShillWiFiRememberedNetworkSecurityMode" separator=".">
  <suffix name="802_1x" label="Network is secured with 802.1x"/>
  <suffix name="none" label="Network is not secured"/>
  <suffix name="psk" label="Network is security with WPA or WPA-2 (aka RSN)"/>
  <suffix name="wep" label="Network employs WEP (Wired Equivalent Privacy)"/>
  <affected-histogram name="Network.Shill.WiFi.RememberedSystemNetworkCount"/>
  <affected-histogram name="Network.Shill.WiFi.RememberedUserNetworkCount"/>
</histogram_suffixes>

<histogram_suffixes name="ShowAppListWarmStartFast" separator="">
  <suffix name="" label="Normal start."/>
  <suffix name="Fast"
      label="Fast start by skipping normal chrome.dll startup."/>
  <affected-histogram name="Startup.ShowAppListWarmStart"/>
</histogram_suffixes>

<histogram_suffixes name="SideloadWipeout">
  <suffix name="Enabled" label="Sideload Wipeout Active."/>
  <suffix name="Disabled" label="Control group."/>
  <affected-histogram name="DisabledExtension.ExtensionWipedStatus"/>
  <affected-histogram name="DisabledExtension.SideloadWipeoutCount"/>
  <affected-histogram name="DisabledExtension.SideloadWipeoutNeeded"/>
  <affected-histogram name="DisabledExtension.UserSelection"/>
  <affected-histogram name="Extensions.ExternalExtensionEvent"/>
  <affected-histogram name="Extensions.InstallSource"/>
  <affected-histogram name="Extensions.UpdateSource"/>
</histogram_suffixes>

<histogram_suffixes name="Signin.Actions" separator=".">
  <suffix name="AllAccessPointActions"/>
  <suffix name="AndroidAccountConsistencyFirstRunActions"
      label="Signin Flow shown on android after Account Consistency flag was
             enabled."/>
  <affected-histogram name="Signin"/>
</histogram_suffixes>

<histogram_suffixes name="Signin.ObsoleteActions" separator=".">
  <obsolete>
    Deprecated as of 12/2014.
  </obsolete>
  <suffix name="AppLauncherActions"/>
  <suffix name="ExtensionInstallBubbleActions"/>
  <suffix name="MenuActions"/>
  <suffix name="NTPLinkActions"/>
  <suffix name="OneClickActions"/>
  <suffix name="SettingsActions"/>
  <suffix name="StartPageActions"/>
  <suffix name="UnknownActions"/>
  <affected-histogram name="Signin"/>
</histogram_suffixes>

<histogram_suffixes name="Signin.Reconciler" separator=".">
  <suffix name="FirstRun"
      label="First execution of the reconciler after the profile was loaded
             or the new_profile_management flag was toggled."/>
  <suffix name="SubsequentRun"
      label="Execution of the reconciler triggered by some other change of
             state."/>
  <affected-histogram name="Signin.Reconciler.AddedToChrome"/>
  <affected-histogram name="Signin.Reconciler.AddedToCookieJar"/>
  <affected-histogram name="Signin.Reconciler.DifferentPrimaryAccounts"/>
  <affected-histogram name="Signin.Reconciler.RemovedFromCookieJar"/>
</histogram_suffixes>

<histogram_suffixes name="Signin.Reconciler.Duration" separator=".">
  <suffix name="Success" label="Successful execution of reconciler"/>
  <suffix name="Failure" label="Failed execution of reconciler"/>
  <affected-histogram name="Signin.Reconciler.Duration"/>
</histogram_suffixes>

<histogram_suffixes name="SimpleCacheWithOrWithoutIndex">
  <affected-histogram name="SimpleCache.SyncCreatePlatformFileError"/>
  <affected-histogram name="SimpleCache.SyncCreateResult"/>
  <affected-histogram name="SimpleCache.SyncOpenPlatformFileError"/>
  <suffix name="WithIndex" label="The Simple Cache index was loaded."/>
  <suffix name="WithoutIndex"
      label="The Simple Cache index was not yet loaded."/>
  <affected-histogram name="SimpleCache.SyncOpenResult"/>
</histogram_suffixes>

<histogram_suffixes name="SocketOperation" separator=".">
  <affected-histogram name="Net.SSLProtocolErrorCipher"/>
  <affected-histogram name="Net.SSLProtocolErrorReason"/>
  <suffix name="Connect"/>
  <suffix name="Read"/>
  <suffix name="Write"/>
</histogram_suffixes>

<histogram_suffixes name="SocketType">
  <obsolete>
    Deprecated as of 03/2015.
  </obsolete>
  <suffix name="HTTPProxy" label="HTTP proxy socket"/>
  <suffix name="SOCK" label="SOCKS socket"/>
  <suffix name="SSL" label="(Obsolete, SSL socket)"/>
  <suffix name="SSL2" label="SSL2 socket"/>
  <suffix name="SSLForProxies"
      label="SSLClientSocket wrapping the TCPClient socket eventually used
             for connection to a proxy"/>
  <suffix name="SSLforHTTPSProxy"
      label="SSLClientSocket wrapping the TCPClient socket eventually used
             for connection to an HTTPS proxy"/>
  <suffix name="TCP" label="plain, no proxy, no SSL socket"/>
  <suffix name="TCPforHTTPProxy"
      label="TCPClientSocket eventually used for connection to an HTTP proxy"/>
  <suffix name="TCPforHTTPSProxy"
      label="TCPClientSocket eventually used for connection to an HTTPS proxy"/>
  <suffix name="TCPforSOCKS"
      label="TCPClientSocket eventually used for connection to a SOCKS proxy"/>
  <affected-histogram name="Net.SocketIdleTimeBeforeNextUse_ReusedSocket"/>
  <affected-histogram name="Net.SocketIdleTimeBeforeNextUse_UnusedSocket"/>
  <affected-histogram name="Net.SocketInitErrorCodes"/>
  <affected-histogram name="Net.SocketRequestTime"/>
  <affected-histogram name="Net.SocketType"/>
</histogram_suffixes>

<histogram_suffixes name="SpdyCwnd">
  <obsolete>
    Deprecated as of 07/2014.
  </obsolete>
  <owner>willchan@chromium.org</owner>
  <suffix name="cwnd32" label="using cwnd policy static 32"/>
  <suffix name="cwnd10" label="using cwnd policy static 10"/>
  <suffix name="cwnd16" label="using cwnd policy static 16"/>
  <suffix name="cwndMin16" label="using dynamic cwnd policy no lower than 16"/>
  <suffix name="cwndMin10" label="using dynamic cwnd policy no lower than 10"/>
  <suffix name="cwndDynamic" label="using dynamic cwnd policy"/>
  <affected-histogram name="PLT.BeginToFinish_LinkLoadNormal"/>
  <affected-histogram name="PLT.BeginToFinish_NormalLoad"/>
  <affected-histogram name="PLT.BeginToFinish_NormalLoad"/>
  <affected-histogram name="PLT.StartToCommit_LinkLoadNormal"/>
  <affected-histogram name="PLT.StartToFinish_LinkLoadNormal"/>
  <affected-histogram name="PLT.StartToFinish_NormalLoad"/>
</histogram_suffixes>

<histogram_suffixes name="SpdyImpact">
  <suffix name="npn_with_http"
      label="with NPN negotiated but using HTTP instead of SPDY"/>
  <suffix name="npn_with_spdy" label="with NPN negotiated and using SPDY"/>
  <affected-histogram name="Net.Transaction_Connected"/>
  <affected-histogram name="Net.Transaction_Connected_New"/>
  <affected-histogram name="Net.Transaction_Connected_New_b"/>
  <affected-histogram name="Net.Transaction_Connected_Under_10"/>
  <affected-histogram name="PLT.Abandoned"/>
  <affected-histogram name="PLT.BeginToFinish_LinkLoadNormal"/>
  <affected-histogram name="PLT.BeginToFinish_NormalLoad"/>
  <affected-histogram name="PLT.StartToCommit_LinkLoadNormal"/>
  <affected-histogram name="PLT.StartToCommit_NormalLoad"/>
  <affected-histogram name="PLT.StartToFinish_LinkLoadNormal"/>
  <affected-histogram name="PLT.StartToFinish_NormalLoad"/>
</histogram_suffixes>

<histogram_suffixes name="SpdySettingsCwnd" separator="">
  <suffix name="10K" label="where at least 10KB was transferred."/>
  <suffix name="25K" label="where at least 25KB was transferred."/>
  <suffix name="50K" label="where at least 50KB was transferred."/>
  <suffix name="100K" label="where at least 100KB was transferred."/>
  <affected-histogram name="Net.SpdySettingsCwnd"/>
</histogram_suffixes>

<histogram_suffixes name="SqliteDatabases" separator=".">
  <owner>shess@chromium.org</owner>
  <suffix name="Activity" label="Activity"/>
  <suffix name="Affiliation" label="Affiliation"/>
  <suffix name="AppCache" label="AppCache"/>
  <suffix name="BookmarkImages" label="BookmarkImages"/>
  <suffix name="Cookie" label="Cookie"/>
  <suffix name="DatabaseTracker" label="DatabaseTracker"/>
  <suffix name="DomainBoundCerts" label="DomainBoundCerts"/>
  <suffix name="DOMStorageDatabase" label="DOMStorageDatabase"/>
  <suffix name="History" label="History"/>
  <suffix name="OfflinePageMetadata" label="OfflinePageMetadata"/>
  <suffix name="Passwords" label="Passwords"/>
  <suffix name="Predictor" label="Predictor"/>
  <suffix name="Quota" label="Quota"/>
  <suffix name="Shortcuts" label="Shortcuts"/>
  <suffix name="SyncDirectory" label="SyncDirectory"/>
  <suffix name="Text" label="Text (obsolete 7/24/13)"/>
  <suffix name="Thumbnail" label="Thumbnail"/>
  <suffix name="TopSites" label="TopSites"/>
  <suffix name="Web" label="Web"/>
  <affected-histogram name="Sqlite.AutoCommitTime"/>
  <affected-histogram name="Sqlite.CommitTime"/>
  <affected-histogram name="Sqlite.Error"/>
  <affected-histogram name="Sqlite.QueryTime"/>
  <affected-histogram name="Sqlite.SizeKB"/>
  <affected-histogram name="Sqlite.Stats"/>
  <affected-histogram name="Sqlite.UpdateTime"/>
  <affected-histogram name="Sqlite.Version"/>
</histogram_suffixes>

<histogram_suffixes name="SSLFalseStart">
  <obsolete>
    Removed 2011-06-01.
  </obsolete>
  <suffix name="FalseStart_enabled"/>
  <suffix name="FalseStart_disabled"/>
  <affected-histogram name="Net.SSL_Connection_Latency"/>
  <affected-histogram name="Net.SSL_Connection_Latency_2"/>
  <affected-histogram name="PLT.BeginToFinish_LinkLoadNormal"/>
  <affected-histogram name="PLT.BeginToFinish_NormalLoad"/>
</histogram_suffixes>

<histogram_suffixes name="StartupProfilingAbandonState">
  <suffix name="NoPaint" label="Abandoned before first paint."/>
  <suffix name="NoLoad" label="Abandoned before first main frame load."/>
  <affected-histogram name="Startup.FirstWebContents.FinishReason"/>
</histogram_suffixes>

<histogram_suffixes name="StartupTemperature" separator=".">
  <suffix name="ColdStartup" label="Startup was cold (mostly hard faults)."/>
  <suffix name="WarmStartup" label="Startup was warm (almost no hard faults)."/>
  <suffix name="LukewarmStartup" label="Startup was neither warm nor cold."/>
  <affected-histogram
      name="LibraryLoader.PercentageOfResidentCodeBeforePrefetch"/>
  <affected-histogram name="Startup.BrowserMainToRendererMain"/>
  <affected-histogram name="Startup.BrowserMessageLoopStartTime"/>
  <affected-histogram name="Startup.BrowserMessageLoopStartTimeFromMainEntry"/>
  <affected-histogram
      name="Startup.BrowserMessageLoopStartTimeFromMainEntry.FirstRun"/>
  <affected-histogram name="Startup.BrowserOpenTabs"/>
  <affected-histogram name="Startup.BrowserWindowDisplay"/>
  <affected-histogram name="Startup.FirstWebContents.MainFrameLoad"/>
  <affected-histogram name="Startup.FirstWebContents.MainFrameLoad2"/>
  <affected-histogram name="Startup.FirstWebContents.MainNavigationFinished"/>
  <affected-histogram name="Startup.FirstWebContents.MainNavigationStart"/>
  <affected-histogram name="Startup.FirstWebContents.NonEmptyPaint"/>
  <affected-histogram name="Startup.FirstWebContents.NonEmptyPaint2"/>
  <affected-histogram name="Startup.LoadTime.ExeMainToDllMain"/>
  <affected-histogram name="Startup.LoadTime.ProcessCreateToDllMain"/>
  <affected-histogram name="Startup.LoadTime.ProcessCreateToExeMain"/>
  <affected-histogram name="Startup.SystemUptime"/>
  <affected-histogram name="Startup.TimeSinceLastStartup"/>
</histogram_suffixes>

<histogram_suffixes name="StartupTimeBombAlarm" separator=".">
  <obsolete>
    Deprecated as of 10/2014.
  </obsolete>
  <suffix name="ThreadNowDuration" label="Duration is in thread CPU time."/>
  <suffix name="TimeDuration" label="Duration is in clock time."/>
  <suffix name="TimeTicksDuration" label="Duration is in TimeTicks time."/>
  <affected-histogram name="StartupTimeBomb.Alarm"/>
</histogram_suffixes>

<histogram_suffixes name="Storage.BlobAppendableItems" separator=".">
  <suffix name="Bytes" label="Appending bytes."/>
  <suffix name="File" label="Appending a file with a known size."/>
  <suffix name="FileSystem"
      label="Appending a filesystem object with known size."/>
  <suffix name="Blob" label="Appending a blob."/>
  <affected-histogram name="Storage.BlobItemSize"/>
  <affected-histogram name="Storage.BlobItemSize.BlobSlice"/>
</histogram_suffixes>

<histogram_suffixes name="StunPingInternal" separator=".">
  <suffix name="0ms" label="0ms between requests"/>
  <suffix name="5ms" label="5ms between requests"/>
  <suffix name="10ms" label="10ms between requests"/>
  <suffix name="15ms" label="15ms between requests"/>
  <suffix name="20ms" label="20ms between requests"/>
  <suffix name="25ms" label="25ms between requests"/>
  <suffix name="30ms" label="30ms between requests"/>
  <suffix name="35ms" label="35ms between requests"/>
  <suffix name="40ms" label="40ms between requests"/>
  <suffix name="45ms" label="45ms between requests"/>
  <suffix name="50ms" label="50ms between requests"/>
  <suffix name="100ms" label="100ms between requests"/>
  <affected-histogram name="WebRTC.Stun.ResponseLatency.NoNAT"/>
  <affected-histogram name="WebRTC.Stun.ResponseLatency.NonSymNAT"/>
  <affected-histogram name="WebRTC.Stun.ResponseLatency.SymNAT"/>
  <affected-histogram name="WebRTC.Stun.ResponseLatency.UnknownNAT"/>
  <affected-histogram name="WebRTC.Stun.SuccessPercent.NoNAT"/>
  <affected-histogram name="WebRTC.Stun.SuccessPercent.NonSymNAT"/>
  <affected-histogram name="WebRTC.Stun.SuccessPercent.SymNAT"/>
  <affected-histogram name="WebRTC.Stun.SuccessPercent.UnknownNAT"/>
</histogram_suffixes>

<histogram_suffixes name="SyncModelType" separator=".">
  <suffix name="APP" label="APP"/>
  <suffix name="APP_LIST" label="APP_LIST"/>
  <suffix name="APP_NOTIFICATION" label="APP_NOTIFICATION"/>
  <suffix name="APP_SETTING" label="APP_SETTING"/>
  <suffix name="ARTICLE" label="ARTICLE"/>
  <suffix name="AUTOFILL" label="AUTOFILL"/>
  <suffix name="AUTOFILL_PROFILE" label="AUTOFILL_PROFILE"/>
  <suffix name="AUTOFILL_WALLET" label="AUTOFILL_WALLET"/>
  <suffix name="AUTOFILL_WALLET_METADATA" label="AUTOFILL_WALLET_METADATA"/>
  <suffix name="BOOKMARK" label="BOOKMARK"/>
  <suffix name="DEVICE_INFO" label="DEVICE_INFO"/>
  <suffix name="DICTIONARY" label="DICTIONARY"/>
  <suffix name="EXPERIMENTS" label="EXPERIMENTS"/>
  <suffix name="EXTENSION" label="EXTENSION"/>
  <suffix name="EXTENSION_SETTING" label="EXTENSION_SETTING"/>
  <suffix name="FAVICON_IMAGE" label="FAVICON_IMAGE"/>
  <suffix name="FAVICON_TRACKING" label="FAVICON_TRACKING"/>
  <suffix name="HISTORY_DELETE_DIRECTIVE" label="HISTORY_DELETE_DIRECTIVE"/>
  <suffix name="MANAGED_USER" label="MANAGED_USER"/>
  <suffix name="MANAGED_USER_SETTING" label="MANAGED_USER_SETTING"/>
  <suffix name="MANAGED_USER_SHARED_SETTING"
      label="MANAGED_USER_SHARED_SETTING"/>
  <suffix name="MANAGED_USER_WHITELIST" label="MANAGED_USER_WHITELIST"/>
  <suffix name="NIGORI" label="NIGORI"/>
  <suffix name="PASSWORD" label="PASSWORD"/>
  <suffix name="PREFERENCE" label="PREFERENCE"/>
  <suffix name="SEARCH_ENGINE" label="SEARCH_ENGINE"/>
  <suffix name="SESSION" label="SESSION"/>
  <suffix name="SYNCED_NOTIFICATION" label="SYNCED_NOTIFICATION"/>
  <suffix name="SYNCED_NOTIFICATION_APP_INFO"
      label="SYNCED_NOTIFICATION_APP_INFO"/>
  <suffix name="PRIORITY_PREFERENCE" label="PRIORITY_PREFERENCE"/>
  <suffix name="THEME" label="THEME"/>
  <suffix name="TYPED_URL" label="TYPED_URL"/>
  <suffix name="WIFI_CREDENTIAL" label="WIFI_CREDENTIAL"/>
  <affected-histogram name="Sync.ModelTypeCount"/>
</histogram_suffixes>

<histogram_suffixes name="SyzygyStartupTime">
  <suffix name="PreReadEnabled"/>
  <suffix name="PreReadDisabled"/>
  <suffix name="XP_PreReadEnabled"/>
  <suffix name="XP_PreReadDisabled"/>
  <suffix name="PreRead_0"/>
  <suffix name="PreRead_5"/>
  <suffix name="PreRead_10"/>
  <suffix name="PreRead_15"/>
  <suffix name="PreRead_20"/>
  <suffix name="PreRead_25"/>
  <suffix name="PreRead_30"/>
  <suffix name="PreRead_35"/>
  <suffix name="PreRead_40"/>
  <suffix name="PreRead_45"/>
  <suffix name="PreRead_50"/>
  <suffix name="PreRead_55"/>
  <suffix name="PreRead_60"/>
  <suffix name="PreRead_65"/>
  <suffix name="PreRead_70"/>
  <suffix name="PreRead_75"/>
  <suffix name="PreRead_80"/>
  <suffix name="PreRead_85"/>
  <suffix name="PreRead_90"/>
  <suffix name="PreRead_95"/>
  <suffix name="PreRead_100"/>
  <suffix name="XP_PreRead_0"/>
  <suffix name="XP_PreRead_5"/>
  <suffix name="XP_PreRead_10"/>
  <suffix name="XP_PreRead_15"/>
  <suffix name="XP_PreRead_20"/>
  <suffix name="XP_PreRead_25"/>
  <suffix name="XP_PreRead_30"/>
  <suffix name="XP_PreRead_35"/>
  <suffix name="XP_PreRead_40"/>
  <suffix name="XP_PreRead_45"/>
  <suffix name="XP_PreRead_50"/>
  <suffix name="XP_PreRead_55"/>
  <suffix name="XP_PreRead_60"/>
  <suffix name="XP_PreRead_65"/>
  <suffix name="XP_PreRead_70"/>
  <suffix name="XP_PreRead_75"/>
  <suffix name="XP_PreRead_80"/>
  <suffix name="XP_PreRead_85"/>
  <suffix name="XP_PreRead_90"/>
  <suffix name="XP_PreRead_95"/>
  <suffix name="XP_PreRead_100"/>
  <affected-histogram name="Startup.BrowserMessageLoopStartTime"/>
  <affected-histogram name="Startup.BrowserOpenTabs"/>
</histogram_suffixes>

<histogram_suffixes name="TabNewTabOnload" separator=".">
  <suffix name="Local" label="Local New Tab page."/>
  <suffix name="Google" label="New Tab page for Google."/>
  <suffix name="Other" label="New Tab page for a non-Google provider."/>
  <affected-histogram name="Tab.NewTabOnload"/>
</histogram_suffixes>

<histogram_suffixes name="Tabs.SwitchLatency">
  <suffix name="Perceived"
      label="The time it takes to show something on the screen after the user
             selects a tab. This might be a fake snapshot or it might just be
             the time it takes to show the real content if no snapshot was
             available."/>
  <suffix name="Actual"
      label="The time it takes to show a real live frame from the renderer on
             the screen after the user selects a tab. This doesn not include
             fake snapshots or other tricks, but the actual time to get real
             interactable content displayed."/>
  <affected-histogram name="Tabs.SwitchFromCloseLatency"/>
  <affected-histogram name="Tabs.SwitchFromExitLatency"/>
  <affected-histogram name="Tabs.SwitchFromNewLatency"/>
  <affected-histogram name="Tabs.SwitchFromUserLatency"/>
</histogram_suffixes>

<histogram_suffixes name="ThreadWatcher" separator=".">
  <suffix name="CACHE" label="where watched thread is CACHE BrowserThread."/>
  <suffix name="DB" label="where watched thread is DB BrowserThread."/>
  <suffix name="FILE" label="where watched thread is FILE BrowserThread."/>
  <suffix name="IO" label="where watched thread is IO BrowserThread."/>
  <suffix name="UI" label="where watched thread is UI BrowserThread."/>
  <affected-histogram name="ThreadWatcher.ResponseTime"/>
  <affected-histogram name="ThreadWatcher.ResponsiveThreads"/>
  <affected-histogram name="ThreadWatcher.Unresponsive"/>
  <affected-histogram name="ThreadWatcher.UnresponsiveThreads"/>
</histogram_suffixes>

<histogram_suffixes name="TotalTimeToHttpsGoogle" separator=".">
  <suffix name="Quic">
    <obsolete>
      Deprecated as of 08/2015. Use Net.HttpJob.*Secure.Quic instead.
    </obsolete>
  </suffix>
  <suffix name="NotQuic">
    <obsolete>
      Deprecated as of 08/2015. Use Net.HttpJob.*Secure.NotQuic instead.
    </obsolete>
  </suffix>
  <suffix name="Secure.Quic"
      label="Recorded for Google servers (https) only when QUIC is used."/>
  <suffix name="Secure.NotQuic"
      label="Recorded for Google servers (https) only when QUIC is not used."/>
  <affected-histogram name="Net.HttpJob.TotalTime"/>
  <affected-histogram name="Net.HttpJob.TotalTimeCached"/>
  <affected-histogram name="Net.HttpJob.TotalTimeNotCached"/>
</histogram_suffixes>

<histogram_suffixes name="Tps65090Fets" separator=".">
  <suffix name="Fet1" label="FET1 on tps65090 (register 0xf)"/>
  <suffix name="Fet2" label="FET2 on tps65090 (register 0x10)"/>
  <suffix name="Fet3" label="FET3 on tps65090 (register 0x11)"/>
  <suffix name="Fet4" label="FET4 on tps65090 (register 0x12)"/>
  <suffix name="Fet5" label="FET5 on tps65090 (register 0x13)"/>
  <suffix name="Fet6" label="FET6 on tps65090 (register 0x14)"/>
  <suffix name="Fet7" label="FET7 on tps65090 (register 0x15)"/>
  <affected-histogram name="Platform.Tps65090Retries"/>
</histogram_suffixes>

<histogram_suffixes name="TrackedSplitPreferences" separator=".">
  <suffix name="extensions.settings" label="Extension IDs dictionary"/>
  <affected-histogram name="Settings.TrackedSplitPreferenceChanged"/>
</histogram_suffixes>

<histogram_suffixes name="TrafficStatsAmortizerBytesDirection" separator=".">
  <suffix name="Tx" label="Records only transmitted network bytes."/>
  <suffix name="Rx" label="Records only received network bytes."/>
  <affected-histogram
      name="TrafficStatsAmortizer.PostAmortizationRunDataUseBytes"/>
  <affected-histogram
      name="TrafficStatsAmortizer.PreAmortizationRunDataUseBytes"/>
</histogram_suffixes>

<histogram_suffixes name="UnackedPackets" separator=".">
  <suffix name="HasUnackedPackets"
      label="The session had outstanding unacked packets."/>
  <suffix name="NoUnackedPackets"
      label="The session had no outstanding unacked packets."/>
  <affected-histogram
      name="Net.QuicSession.LocallyTimedOutWithOpenStreams.TimeSinceLastReceived"/>
</histogram_suffixes>

<histogram_suffixes name="V8SpecialApps" separator=".">
  <suffix name="calendar" label="Custom histogram for Calendar"/>
  <suffix name="docs" label="Custom histogram for Google Docs and Drive"/>
  <suffix name="gmail" label="Custom histogram for GMail"/>
  <suffix name="inbox" label="Custom histogram for Inbox"/>
  <suffix name="plus" label="Custom histogram for Google+"/>
  <suffix name="top10"
      label="Custom histogram for Alexa's Top10 non-Google sites"/>
  <suffix name="youtube" label="Custom histogram for Youtube"/>
  <affected-histogram name="V8.MemoryExternalFragmentationTotal"/>
  <affected-histogram name="V8.MemoryHeapCommitted"/>
  <affected-histogram name="V8.MemoryHeapSampleTotalCommitted"/>
  <affected-histogram name="V8.MemoryHeapSampleTotalUsed"/>
  <affected-histogram name="V8.MemoryHeapUsed"/>
</histogram_suffixes>

<histogram_suffixes name="VideoEncodedQpStats" separator=".">
  <suffix name="Vp8"
      label="Video codec: VP8. QP range: 0-127. Single stream sent."/>
  <suffix name="Vp8.S0"
      label="Video codec: VP8. QP range: 0-127. Spatial index 0."/>
  <suffix name="Vp8.S1"
      label="Video codec: VP8. QP range: 0-127. Spatial index 1."/>
  <suffix name="Vp8.S2"
      label="Video codec: VP8. QP range: 0-127. Spatial index 2."/>
  <suffix name="Vp9"
      label="Video codec: VP9. QP range: 0-255. No spatial layers."/>
  <suffix name="Vp9.S0"
      label="Video codec: VP9. QP range: 0-255. Spatial layer 0."/>
  <suffix name="Vp9.S1"
      label="Video codec: VP9. QP range: 0-255. Spatial layer 1."/>
  <suffix name="Vp9.S2"
      label="Video codec: VP9. QP range: 0-255. Spatial layer 2."/>
  <affected-histogram name="WebRTC.Video.Encoded.Qp"/>
</histogram_suffixes>

<histogram_suffixes name="WebFontFamily">
  <suffix name="roboto" label="Roboto font"/>
  <suffix name="opensans" label="Open Sans font"/>
  <suffix name="others" label="Fonts other than Roboto and Open Sans"/>
  <affected-histogram name="WebFont.DiskCache.EntryAge.Evict"/>
  <affected-histogram name="WebFont.DiskCache.EntryAge.Hit"/>
  <affected-histogram name="WebFont.DiskCache.ReuseCount.Evict"/>
  <affected-histogram name="WebFont.DiskCache.ReuseCount.Hit"/>
  <affected-histogram name="WebFont.DiskCacheHit"/>
</histogram_suffixes>

<histogram_suffixes name="WebFontFormat" separator=".">
  <suffix name="SFNT" label="TrueType/OpenType fonts"/>
  <suffix name="WOFF" label="WOFF 1.0 fonts"/>
  <suffix name="WOFF2" label="WOFF 2.0 fonts"/>
  <affected-histogram name="WebFont.DecodeSpeed"/>
</histogram_suffixes>

<histogram_suffixes name="WebRTCMediaType" separator=".">
  <suffix name="Audio" label="Audio"/>
  <suffix name="Video" label="Video"/>
  <suffix name="Data" label="Data"/>
  <affected-histogram name="WebRTC.PeerConnection.SrtpCryptoSuite"/>
  <affected-histogram name="WebRTC.PeerConnection.SslCipherSuite"/>
</histogram_suffixes>

<histogram_suffixes name="WebStoreLinkExperiment">
  <suffix name="Disabled" label="Neither extra webstore link is visible"/>
  <suffix name="FooterLink" label="Link in bottom right of footer"/>
  <suffix name="PlusIcon" label="Plus icon in apps page"/>
  <affected-histogram name="Extensions.AppLaunch"/>
  <affected-histogram name="NewTabPage.DefaultPageType"/>
</histogram_suffixes>

<histogram_suffixes name="WrenchMenuActionTimings" separator=".">
  <suffix name="NewTab"/>
  <suffix name="NewWindow"/>
  <suffix name="NewIncognitoWindow"/>
  <suffix name="ShowBookmarkBar"/>
  <suffix name="ShowBookmarkMgr"/>
  <suffix name="ImportSettings"/>
  <suffix name="BookmarkPage"/>
  <suffix name="BookmarkAllTabs"/>
  <suffix name="PinToStartScreen"/>
  <suffix name="RestoreTab"/>
  <suffix name="WinDesktopRestart"/>
  <suffix name="Win8MetroRestart"/>
  <suffix name="ChromeOSRestart"/>
  <suffix name="DistillPage"/>
  <suffix name="SavePage"/>
  <suffix name="Find"/>
  <suffix name="Print"/>
  <suffix name="Cut"/>
  <suffix name="Copy"/>
  <suffix name="Paste"/>
  <suffix name="CreateHostedApp"/>
  <suffix name="CreateShortcuts"/>
  <suffix name="ManageExtensions"/>
  <suffix name="TaskManager"/>
  <suffix name="ClearBrowsingData"/>
  <suffix name="ViewSource"/>
  <suffix name="DevTools"/>
  <suffix name="DevToolsConsole"/>
  <suffix name="DevToolsDevices"/>
  <suffix name="ProfilingEnabled"/>
  <suffix name="ZoomMinus"/>
  <suffix name="ZoomPlus"/>
  <suffix name="EnterFullScreen"/>
  <suffix name="ShowHistory"/>
  <suffix name="ShowDownloads"/>
  <suffix name="ShowSyncSetup"/>
  <suffix name="Settings"/>
  <suffix name="About"/>
  <suffix name="HelpPage"/>
  <suffix name="Feedback"/>
  <suffix name="RequestTabletSite"/>
  <suffix name="Exit"/>
  <suffix name="OpenBookmark"/>
  <suffix name="OpenRecentTab"/>
  <suffix name="BookmarkOpen">
    <obsolete>
      Deprecated as of 02/2015. Use WrenchMenu.TimeToAction.OpenBookmark
      instead.
    </obsolete>
  </suffix>
  <suffix name="RecentTab">
    <obsolete>
      Deprecated as of 02/2015. Use WrenchMenu.TimeToAction.OpenRecentTab
      instead.
    </obsolete>
  </suffix>
  <suffix name="Cast"/>
  <affected-histogram name="WrenchMenu.TimeToAction"/>
</histogram_suffixes>

</histogram_suffixes_list>

</histogram-configuration>
