<!--
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.
-->

<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="milliseconds">
  <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.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.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.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.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="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>Please list the metric's owners. Add more owner tags as needed.</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>Please list the metric's owners. Add more owner tags as needed.</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>Please list the metric's owners. Add more owner tags as needed.</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="appcache.CheckResponseResult"
    enum="AppCacheCheckResponseResult">
  <owner>michaeln@chromium.org</owner>
  <summary>AppCache check response result code.</summary>
</histogram>

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

<histogram name="appcache.CompletionRunTime" units="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <owner>michaeln@chromium.org</owner>
  <summary>
    How long URLRequests to be retrieved over the network are delayed.
  </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="milliseconds">
  <owner>michaeln@chromium.org</owner>
  <summary>
    Time elapsed between a background task being queued and run.
  </summary>
</histogram>

<histogram name="appcache.TaskRunTime" units="milliseconds">
  <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="percent">
  <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="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="milliseconds">
  <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.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.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.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="milliseconds">
  <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="milliseconds">
  <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="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.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 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.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.TouchDuration" units="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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.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.Type" enum="WallpaperType">
  <owner>kuscher@google.com</owner>
  <summary>The wallpaper type. Recorded at user login.</summary>
</histogram>

<histogram name="Ash.WindowCycleController.CycleTime" units="milliseconds">
  <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.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="milliseconds">
  <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.TimeBetweenUse" units="milliseconds">
  <owner>flackr@chromium.org</owner>
  <owner>kuscher@google.com</owner>
  <summary>
    The amount of time between uses of overview mode to switch between windows.
  </summary>
</histogram>

<histogram name="Ash.WindowSelector.TimeInOverview" units="milliseconds">
  <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="milliseconds">
  <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>ttuttle@chromium.org</owner>
  <summary>
    Count of DnsAttempts before DnsTransaction completes with failure.
  </summary>
</histogram>

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

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

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

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

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

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

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

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

<histogram name="AsyncDNS.DnsClientDisabledReason" enum="NetErrorCodes">
  <owner>ttuttle@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>ttuttle@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="milliseconds">
  <owner>ttuttle@chromium.org</owner>
  <summary>
    Duration of time spent by ProcTask in failing fallback resolutions.
  </summary>
</histogram>

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

<histogram name="AsyncDNS.HaveDnsConfig" enum="BooleanSuccess">
  <owner>ttuttle@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>ttuttle@chromium.org</owner>
  <summary>Whether DnsHosts were parsed successfully.</summary>
</histogram>

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

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

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

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

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

<histogram name="AsyncDNS.JobQueueTime" units="milliseconds">
  <owner>ttuttle@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="milliseconds">
  <owner>ttuttle@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="milliseconds">
  <owner>ttuttle@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="milliseconds">
  <owner>ttuttle@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="milliseconds">
  <owner>ttuttle@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="milliseconds">
  <owner>ttuttle@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="milliseconds">
  <owner>ttuttle@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="milliseconds">
  <owner>ttuttle@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="milliseconds">
  <owner>ttuttle@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="milliseconds">
  <owner>ttuttle@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="milliseconds">
  <owner>ttuttle@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="milliseconds">
  <owner>ttuttle@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">
  <owner>ttuttle@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>ttuttle@chromium.org</owner>
  <summary>
    Counts of results of parsing addresses out of DNS responses in successful
    DnsTransactions.
  </summary>
</histogram>

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

<histogram name="AsyncDNS.ResolveFail" units="milliseconds">
  <owner>ttuttle@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>ttuttle@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="milliseconds">
  <owner>ttuttle@chromium.org</owner>
  <summary>
    Duration of time taken by DnsTask in resolutions that succeeded.
  </summary>
</histogram>

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

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

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

<histogram name="AsyncDNS.ServerCount">
  <owner>ttuttle@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>ttuttle@chromium.org</owner>
  <summary>
    Index in DnsConfig of the failing server, recorded at the time of failure.
  </summary>
</histogram>

<histogram name="AsyncDNS.ServerFailuresAfterNetworkChange">
  <owner>ttuttle@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>ttuttle@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>ttuttle@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>ttuttle@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" units="BooleanSuccess">
  <owner>ttuttle@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="milliseconds">
  <owner>ttuttle@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="milliseconds">
  <owner>ttuttle@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>ttuttle@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>ttuttle@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>ttuttle@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="milliseconds">
  <owner>ttuttle@chromium.org</owner>
  <summary>
    Duration of time taken by DnsTCPAttempt in failed attempts. Excludes
    timeouts.
  </summary>
</histogram>

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

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

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

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

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

<histogram name="AsyncDNS.TimeoutSpentHistogram" units="milliseconds">
  <owner>ttuttle@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="milliseconds">
  <owner>ttuttle@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="milliseconds">
  <owner>ttuttle@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="milliseconds">
  <owner>ttuttle@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="milliseconds">
  <owner>ttuttle@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="milliseconds">
  <owner>ttuttle@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="milliseconds">
  <owner>ttuttle@chromium.org</owner>
  <summary>
    Same as AsyncDNS.TransactionSuccess but limited to A query type.
  </summary>
</histogram>

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

<histogram name="AsyncDNS.TTL" units="milliseconds">
  <owner>ttuttle@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="milliseconds">
  <owner>ttuttle@chromium.org</owner>
  <summary>
    Duration of time taken by DnsUDPAttempt in failed attempts. Excludes
    timeouts.
  </summary>
</histogram>

<histogram name="AsyncDNS.UDPAttemptSuccess" units="milliseconds">
  <owner>ttuttle@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="milliseconds">
  <owner>ttuttle@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="milliseconds">
  <owner>ttuttle@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>ttuttle@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="Autofill.AddressBook.AccessSkipped" enum="BooleanSkipped">
  <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">
  <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">
  <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.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.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.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.MacAddressBook" enum="AutofillMacAddressBook">
  <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.NumShowsBeforeSelected">
  <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.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.RequestErrorimcklfaapmppdhilegjoahjbahdgfhcn">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>TBD.</summary>
</histogram>

<histogram name="AutoFill.RequestSuccessimcklfaapmppdhilegjoahjbahdgfhcn">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>TBD.</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.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.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="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">
  <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="BlinkGC.CollectGarbage" units="milliseconds">
  <owner>haraken@chromium.org</owner>
  <summary>Duration of time taken to run Heap::collectGarbage().</summary>
</histogram>

<histogram name="BlinkGC.PerformPendingSweep" units="milliseconds">
  <owner>haraken@chromium.org</owner>
  <summary>
    Duration of time taken to run ThreadState::performPendingSweep().
  </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.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.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="Bookmarks.LaunchDepth">
  <owner>yfriedman@chromium.org</owner>
  <summary>
    Logs the depth of the bookmark in the bookmark tree hiearchy 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="Canvas.ContextType" enum="CanvasContextType">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Records the context type names used to create canvas rendering contexts.
  </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>ygorshenin@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>ygorshenin@chromium.org</owner>
  <summary>
    Count of clicked, closed and ignored captive portal notifications.
  </summary>
</histogram>

<histogram name="CaptivePortal.OOBE.DetectionDuration" units="milliseconds">
  <owner>ygorshenin@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>ygorshenin@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>ygorshenin@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="milliseconds">
  <owner>ygorshenin@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.Session.DetectionDuration" units="milliseconds">
  <owner>ygorshenin@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>ygorshenin@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>ygorshenin@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="milliseconds">
  <owner>ygorshenin@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.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="percent remaining">
  <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.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="Cellular.ActivationFailure">
  <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">
  <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">
  <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">
  <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">
  <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">
  <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">
  <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">
  <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>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.CrashedWasAlive" enum="ProcessType">
  <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">
  <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>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.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>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.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>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.KilledByExtensionAPI">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Count of child processes killed by the extension API
    (experimental.processes.terminate)
  </summary>
</histogram>

<histogram name="ChildProcess.KilledWasAlive" enum="ProcessType">
  <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">
  <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">
  <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">
  <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">
  <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">
  <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">
  <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.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.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="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">
  <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.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="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">
  <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.NumActiveLayers">
  <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.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="percent">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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.DefaultLocationSetting" enum="ContentSetting">
  <owner>toyoshim@chromium.org</owner>
  <summary>The default location setting at profile open.</summary>
</histogram>

<histogram name="ContentSettings.DefaultMediaStreamSetting"
    enum="ContentSetting">
  <owner>toyoshim@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.PermissionActions" enum="PermissionAction">
  <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">
  <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">
  <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="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">
  <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.CorruptMetaTable">
  <owner>Please list the metric's owners. Add more owner tags as needed.</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>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="Cookie.DomainCount">
  <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">
  <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">
  <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>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="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>Please list the metric's owners. Add more owner tags as needed.</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>Please list the metric's owners. Add more owner tags as needed.</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">
  <owner>Please list the metric's owners. Add more owner tags as needed.</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.TimeBlockedOnLoad" units="ms">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The amount of time (ms) between the cookie store load starting and
    completing.
  </summary>
</histogram>

<histogram name="Cookie.TimeDatabaseMigrationToV5" units="ms">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>The amount of time (ms) to migrate a v4 database to v5.</summary>
</histogram>

<histogram name="Cookie.TimeDatabaseMigrationToV6" units="ms">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>The amount of time (ms) to migrate a v5 database to v6.</summary>
</histogram>

<histogram name="Cookie.TimeGet" units="ms">
  <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>Please list the metric's owners. Add more owner tags as needed.</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.TimeLoad" units="ms">
  <owner>Please list the metric's owners. Add more owner tags as needed.</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>Please list the metric's owners. Add more owner tags as needed.</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="Cras.StreamTimeoutMilliSeconds" units="milliseconds">
  <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="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>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Records the number of times when first-run dialog was shown.
  </summary>
</histogram>

<histogram name="CrosFirstRun.FurthestStep">
  <owner>Please list the metric's owners. Add more owner tags as needed.</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>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>The total time that user spent on first-run tutorial.</summary>
</histogram>

<histogram name="CrosFirstRun.TimeSpentOnStep" units="ms">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>The time that user spent on some step of tutorial.</summary>
</histogram>

<histogram name="CrosFirstRun.TutorialCompletion"
    enum="CrosFirstRunTutorialCompletionType">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>Tracks the way how user left tutorial.</summary>
</histogram>

<histogram name="CrosFirstRun.TutorialLaunched">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Records the number of times when first-run tutorial has been launched.
  </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.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.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">
  <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.SettingsConversion"
    enum="DataReductionProxySettingsConversion">
  <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="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="milliseconds">
  <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">
  <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">
  <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">
  <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">
  <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">
  <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">
  <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">
  <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">
  <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.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="milliseconds">
  <owner>shrikant@chromium.org</owner>
  <summary>
    Measures the total time spent in loading a custom font collection. We load
    system fonts as a custom font collection to avoid any interaction with font
    cache service from sandboxed renderer process.
  </summary>
</histogram>

<histogram name="DisabledExtension.ExtensionWipedStatus" enum="BooleanWiped">
  <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">
  <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">
  <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">
  <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">
  <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">
  <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">
  <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">
  <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="milliseconds">
  <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="milliseconds">
  <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="kilobytes">
  <owner>rvargas@chromium.org</owner>
  <summary>The size distribution of data stored in the HTTP cache.</summary>
</histogram>

<histogram name="DiskCache.TotalIOTime" units="milliseconds">
  <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>ttuttle@chromium.org</owner>
  <summary>
    The attempt which completed after the job was already cancelled.
  </summary>
</histogram>

<histogram name="DNS.AttemptDiscarded">
  <owner>ttuttle@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="milliseconds">
  <owner>ttuttle@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>ttuttle@chromium.org</owner>
  <summary>The attempt that has not resolved the host successfully.</summary>
</histogram>

<histogram name="DNS.AttemptFirstFailure">
  <owner>ttuttle@chromium.org</owner>
  <summary>
    The attempt that resolved the host first and the resolution was not
    successful.
  </summary>
</histogram>

<histogram name="DNS.AttemptFirstSuccess">
  <owner>ttuttle@chromium.org</owner>
  <summary>
    The attempt that resolved the host first and the resolution was successful.
  </summary>
</histogram>

<histogram name="DNS.AttemptSuccess">
  <owner>ttuttle@chromium.org</owner>
  <summary>The attempt that has resolved the host successfully.</summary>
</histogram>

<histogram name="DNS.AttemptSuccessDuration" units="milliseconds">
  <owner>ttuttle@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="milliseconds">
  <owner>ttuttle@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="milliseconds">
  <owner>ttuttle@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="milliseconds">
  <owner>ttuttle@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="milliseconds">
  <owner>ttuttle@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>ttuttle@chromium.org</owner>
  <summary>
    Error status when an empty address list was found in OnLookupComplete().
  </summary>
</histogram>

<histogram name="DNS.IndependentFailedNavigation" units="milliseconds">
  <owner>ttuttle@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="milliseconds">
  <owner>ttuttle@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="milliseconds">
  <owner>ttuttle@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="milliseconds">
  <owner>ttuttle@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="milliseconds">
  <owner>ttuttle@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="milliseconds">
  <owner>ttuttle@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="milliseconds">
  <owner>ttuttle@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="milliseconds">
  <owner>ttuttle@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="milliseconds">
  <owner>ttuttle@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="milliseconds">
  <owner>ttuttle@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="milliseconds">
  <owner>ttuttle@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="milliseconds">
  <owner>ttuttle@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="milliseconds">
  <owner>ttuttle@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="milliseconds">
  <owner>ttuttle@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="milliseconds">
  <owner>ttuttle@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="milliseconds">
  <owner>ttuttle@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>ttuttle@chromium.org</owner>
  <summary>Replaced by DNS.PrefetchFoundNameL.</summary>
</histogram>

<histogram name="DNS.PrefetchFoundNameL" units="milliseconds">
  <owner>ttuttle@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>ttuttle@chromium.org</owner>
  <summary>Replaced by DNS.PrefetchNegativeHitL.</summary>
</histogram>

<histogram name="DNS.PrefetchNegativeHitL" units="milliseconds">
  <owner>ttuttle@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>ttuttle@chromium.org</owner>
  <summary>Replaced by DNS.PrefetchPositiveHitL.</summary>
</histogram>

<histogram name="DNS.PrefetchPositiveHitL" units="milliseconds">
  <owner>ttuttle@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="milliseconds">
  <owner>ttuttle@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="milliseconds">
  <owner>ttuttle@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="milliseconds">
  <owner>ttuttle@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>ttuttle@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>ttuttle@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>ttuttle@chromium.org</owner>
  <summary>
    Counts of successes and failures of OS resolutions in various categories.
  </summary>
</histogram>

<histogram name="DNS.ResolveFail" units="milliseconds">
  <owner>ttuttle@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="milliseconds">
  <owner>ttuttle@chromium.org</owner>
  <summary>Same as DNS.ResolveFail, but limited to pure IPv4 lookups.</summary>
</histogram>

<histogram name="DNS.ResolveFail_FAMILY_IPV6" units="milliseconds">
  <owner>ttuttle@chromium.org</owner>
  <summary>Same as DNS.ResolveFail, but limited to pure IPv6 lookups.</summary>
</histogram>

<histogram name="DNS.ResolveFail_FAMILY_UNSPEC" units="milliseconds">
  <owner>ttuttle@chromium.org</owner>
  <summary>Same as DNS.ResolveFail, but limited to IPv4/IPv6 lookups.</summary>
</histogram>

<histogram name="DNS.ResolveSpeculativeFail" units="milliseconds">
  <owner>ttuttle@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="milliseconds">
  <owner>ttuttle@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="milliseconds">
  <owner>ttuttle@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="milliseconds">
  <owner>ttuttle@chromium.org</owner>
  <summary>
    Same as DNS.ResolveSuccess, but limited to pure IPv4 lookups.
  </summary>
</histogram>

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

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

<histogram name="DNS.ResolveUnspecWaste" enum="ResolutionUnspecWasteCategory">
  <owner>ttuttle@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="milliseconds">
  <owner>ttuttle@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="milliseconds">
  <owner>ttuttle@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>ttuttle@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>ttuttle@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>ttuttle@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>ttuttle@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>ttuttle@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>ttuttle@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>ttuttle@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>ttuttle@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>ttuttle@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>ttuttle@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>ttuttle@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>ttuttle@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>ttuttle@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>ttuttle@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>ttuttle@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>ttuttle@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>ttuttle@chromium.org</owner>
  <summary>Time between starting and finishing DNS probe.</summary>
</histogram>

<histogram name="DnsProbe.ProbeResult" enum="DnsProbe.ProbeStatus">
  <owner>ttuttle@chromium.org</owner>
  <summary>Result of DNS probes sent by the probe service.</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.AddBeaconDidEvict" enum="BooleanDidEvict">
  <owner>ttuttle@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.BeaconReported" enum="BooleanReported">
  <owner>ttuttle@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.ReportedBeaconError" enum="NetErrorCodes">
  <owner>ttuttle@chromium.org</owner>
  <summary>
    The Chrome error code included in a beacon saved to be uploaded to the
    collector.
  </summary>
</histogram>

<histogram name="DomainReliability.UploadDuration" units="ms">
  <owner>ttuttle@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>ttuttle@chromium.org</owner>
  <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>ttuttle@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.UploadResponseCode">
  <owner>ttuttle@chromium.org</owner>
  <summary>
    The response code returned by the Domain Reliability collector when a report
    is uploaded.
  </summary>
</histogram>

<histogram name="DomainReliability.UploadSuccess" enum="BooleanSuccess">
  <owner>ttuttle@chromium.org</owner>
  <summary>Whether a Domain Reliability upload succeeded.</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="BooleanDistillable">
  <owner>yfriedman@chromium.org</owner>
  <summary>
    Records the number of times a page was loaded for which using DomDistiller
    is possible.
  </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.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="milliseconds">
  <owner>yfriedman@chromium.org</owner>
  <summary>
    Time spent in DomDistiller's identification of text content.
  </summary>
</histogram>

<histogram name="DomDistiller.Time.DistillationTotal" units="milliseconds">
  <owner>yfriedman@chromium.org</owner>
  <summary>Complete time spent in DomDistiller's processing of a page.</summary>
</histogram>

<histogram name="DomDistiller.Time.DocumentConstruction" units="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <owner>yfriedman@chromium.org</owner>
  <summary>
    Time spent in DomDistiller's processing of article metadata.
  </summary>
</histogram>

<histogram name="DOMStorage.clear" units="milliseconds">
  <owner>michaeln@chromium.org</owner>
  <summary>
    Duration to execute localStorage.clear() or sessionStorage.clear().
  </summary>
</histogram>

<histogram name="DOMStorage.getItem" units="milliseconds">
  <owner>michaeln@chromium.org</owner>
  <summary>
    Duration to execute localStorage.getItem() or sessionStorage.getItem().
  </summary>
</histogram>

<histogram name="DOMStorage.key" units="milliseconds">
  <owner>michaeln@chromium.org</owner>
  <summary>
    Duration to execute localStorage.key() or sessionStorage.key().
  </summary>
</histogram>

<histogram name="DOMStorage.length" units="milliseconds">
  <owner>michaeln@chromium.org</owner>
  <summary>
    Duration to execute localStorage.length() or sessionStorage.length().
  </summary>
</histogram>

<histogram name="DOMStorage.removeItem" units="milliseconds">
  <owner>michaeln@chromium.org</owner>
  <summary>
    Duration to execute localStorage.removeItem() or
    sessionStorage.removeItem().
  </summary>
</histogram>

<histogram name="DOMStorage.setItem" units="milliseconds">
  <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 'name', '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.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="Percent">
  <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.DownloadSize" units="KB">
  <owner>asanka@chromium.org</owner>
  <summary>The size of successfully completed downloads.</summary>
</histogram>

<histogram name="Download.DownloadWarningShownOnShelf"
    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="milliseconds">
  <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.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="milliseconds">
  <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="Percent">
  <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="milliseconds">
  <owner>asanka@chromium.org</owner>
  <summary>Time between the start of a download and its completion.</summary>
</histogram>

<histogram name="Download.TimeToRenameFailureAfterInitialFailure"
    units="milliseconds">
  <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="milliseconds">
  <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.CacheDBOpenStatus" enum="DriveCacheDBOpenStatus">
  <obsolete>
    Deperecated 8/2013.
  </obsolete>
  <owner>joshwoodward@google.com</owner>
  <summary>Status of drive cache metadata database open.</summary>
</histogram>

<histogram name="Drive.DirectoryFeedLoadTime" units="milliseconds">
  <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.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.FullFeedLoadTime" units="milliseconds">
  <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="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.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>
  <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.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.StartupTimeFromSuspend" units="milliseconds">
  <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.UnlockEvent" enum="EasyUnlockUnlockEvent">
  <owner>joshwoodward@google.com</owner>
  <owner>tbarzic@chromium.org</owner>
  <summary>Screen unlock events detected while EasyUnlock was enabled.</summary>
</histogram>

<histogram name="EnhancedBookmarks.SyncExperimentState"
    enum="BookmarksExperimentState">
  <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="Enterprise.AutoEnrollmentExtraTime" units="milliseconds">
  <owner>joaodasilva@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="milliseconds">
  <owner>joaodasilva@chromium.org</owner>
  <summary>Total duration time of the auto-enrollment protocol.</summary>
</histogram>

<histogram name="Enterprise.AutoEnrollmentRequestNetworkErrorCode"
    enum="NetErrorCodes">
  <owner>joaodasilva@chromium.org</owner>
  <summary>
    Network error code (if applicable) for auto-enrollment requests.
  </summary>
</histogram>

<histogram name="Enterprise.AutoEnrollmentRequestStatus"
    enum="EnterpriseDeviceManagementStatus">
  <owner>joaodasilva@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>joaodasilva@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>joaodasilva@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="milliseconds">
  <owner>tnagel@chromium.org</owner>
  <summary>
    Elapsed time from *after* GAIA login until enrollment was cancelled.
  </summary>
</histogram>

<histogram name="Enterprise.EnrollmentTime.Failure" units="milliseconds">
  <owner>tnagel@chromium.org</owner>
  <summary>
    Elapsed time from *after* GAIA login until enrollment failed.
  </summary>
</histogram>

<histogram name="Enterprise.EnrollmentTime.Success" units="milliseconds">
  <owner>tnagel@chromium.org</owner>
  <summary>
    Elapsed time from *after* GAIA login until enrollment succeeded.
  </summary>
</histogram>

<histogram name="Enterprise.IOSPolicies">
  <owner>joaodasilva@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>joaodasilva@chromium.org</owner>
  <summary>Result of the OpenNetworkConfiguration policy validation.</summary>
</histogram>

<histogram name="Enterprise.Policies" enum="EnterprisePolicies">
  <owner>joaodasilva@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>joaodasilva@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>joaodasilva@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="milliseconds">
  <owner>joaodasilva@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.PolicyLoadStatus" enum="EnterprisePolicyLoadStatus">
  <owner>joaodasilva@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>joaodasilva@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.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="milliseconds">
  <owner>joaodasilva@chromium.org</owner>
  <summary>Initialization delay due to loading the user policy cache.</summary>
</histogram>

<histogram name="Enterprise.UserPolicyChromeOS.InitialFetch.ClientError"
    enum="EnterpriseDeviceManagementStatus">
  <owner>joaodasilva@chromium.org</owner>
  <summary>Policy client error during initial policy fetch.</summary>
</histogram>

<histogram
    name="Enterprise.UserPolicyChromeOS.InitialFetch.DelayClientRegister"
    units="milliseconds">
  <owner>joaodasilva@chromium.org</owner>
  <summary>Delay for registering the client with the policy server.</summary>
</histogram>

<histogram name="Enterprise.UserPolicyChromeOS.InitialFetch.DelayOAuth2Token"
    units="milliseconds">
  <owner>joaodasilva@chromium.org</owner>
  <summary>Delay for minting an OAuth2 acccess token.</summary>
</histogram>

<histogram name="Enterprise.UserPolicyChromeOS.InitialFetch.DelayPolicyFetch"
    units="milliseconds">
  <owner>joaodasilva@chromium.org</owner>
  <summary>Delay for fetching policy from the policy server.</summary>
</histogram>

<histogram name="Enterprise.UserPolicyChromeOS.InitialFetch.DelayTotal"
    units="milliseconds">
  <owner>joaodasilva@chromium.org</owner>
  <summary>Total delay for the initial policy fetch.</summary>
</histogram>

<histogram name="Enterprise.UserPolicyChromeOS.InitialFetch.OAuth2Error"
    enum="GoogleServiceAuthError">
  <owner>joaodasilva@chromium.org</owner>
  <summary>Service error during OAuth2 access token fetch.</summary>
</histogram>

<histogram name="Enterprise.UserPolicyChromeOS.InitialFetch.OAuth2NetworkError"
    enum="NetErrorCodes">
  <owner>joaodasilva@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="milliseconds">
  <owner>joaodasilva@chromium.org</owner>
  <summary>
    Delay incurred by the token fetching step of the wildcard login check.
  </summary>
</histogram>

<histogram name="Enterprise.WildcardLoginCheck.DelayTotal" units="milliseconds">
  <owner>joaodasilva@chromium.org</owner>
  <summary>Total delay incurred by the wildcard login check.</summary>
</histogram>

<histogram name="Enterprise.WildcardLoginCheck.DelayUserInfoFetch"
    units="milliseconds">
  <owner>joaodasilva@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>joaodasilva@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>joaodasilva@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>joaodasilva@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>joaodasilva@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>joaodasilva@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>joaodasilva@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="milliseconds">
  <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="milliseconds">
  <owner>rbyers@chromium.org</owner>
  <summary>
    Time between the first and last events in a coalesced touch events group.
  </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.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.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
    |IsHighResNowFastAndReliable| 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
    |IsHighResNowFastAndReliable| is true, which will introduce some sampling
    bias. This supersedes the Event.Latency.RendererImpl.GestureScroll metric.
  </summary>
</histogram>

<histogram name="Event.Latency.TouchToScrollUpdateSwap" units="microseconds">
  <owner>rbyers@chromium.org</owner>
  <summary>
    Time between initial creation of touch event and the resulting frame from
    ScrollUpdate is swapped.
  </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.TouchDuration" units="milliseconds">
  <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="ExtensionActivity.AdInjected" units="Extension Count">
  <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">
  <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">
  <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">
  <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">
  <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">
  <owner>felt@chromium.org</owner>
  <summary>
    For each pageload, the number of extensions that inject a content script.
  </summary>
</histogram>

<histogram name="ExtensionActivity.CreatedDiv">
  <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">
  <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">
  <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">
  <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">
  <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">
  <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">
  <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">
  <owner>felt@chromium.org</owner>
  <summary>
    For each pageload, the number of extensions that use document.write.
  </summary>
</histogram>

<histogram name="ExtensionActivity.Google.ContentScript">
  <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">
  <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">
  <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">
  <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">
  <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">
  <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">
  <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">
  <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">
  <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">
  <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">
  <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">
  <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">
  <owner>felt@chromium.org</owner>
  <summary>
    For each pageload, the number of extensions that set innerHTML.
  </summary>
</histogram>

<histogram name="ExtensionActivity.InvokedDomMethod">
  <owner>felt@chromium.org</owner>
  <summary>
    For each pageload, the number of extensions that invoke DOM methods.
  </summary>
</histogram>

<histogram name="ExtensionActivity.ModifiedDom">
  <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">
  <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>Please list the metric's owners. Add more owner tags as needed.</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>Please list the metric's owners. Add more owner tags as needed.</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>Please list the metric's owners. Add more owner tags as needed.</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>Please list the metric's owners. Add more owner tags as needed.</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="milliseconds">
  <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="milliseconds">
  <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.RequestCount">
  <owner>Please list the metric's owners. Add more owner tags as needed.</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>Please list the metric's owners. Add more owner tags as needed.</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>Please list the metric's owners. Add more owner tags as needed.</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>Please list the metric's owners. Add more owner tags as needed.</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>kalman@chromium.org</owner>
  <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>kalman@chromium.org</owner>
  <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>kalman@chromium.org</owner>
  <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>kalman@chromium.org</owner>
  <owner>rdevlin.cronin@chromium.org</owner>
  <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>kalman@chromium.org</owner>
  <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.AllocatePortIdPairOverflow">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Records when the allocation of IDs for chrome.runtime.Port overflows.
  </summary>
</histogram>

<histogram name="Extensions.APIUse_RelativeURL" enum="UrlResolutionResult">
  <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>
  <summary>
    The number of times apps are launched grouped by
    extensions::LaunchContainer.
  </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.BackgroundPageLoadTime" units="milliseconds">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>The time for an extension's background page to load.</summary>
</histogram>

<histogram name="Extensions.BackgroundPageType"
    units="ExtensionBackgroundPageType">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The type (if any) of background page the extension has. Recorded for
    installed extensions on startup.
  </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.CrxFetchError" enum="NetErrorCodes">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>Net error results from URLFetcher.</summary>
</histogram>

<histogram name="Extensions.CrxFetchFailureRetryCountGoogleUrl">
  <owner>Please list the metric's owners. Add more owner tags as needed.</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>Please list the metric's owners. Add more owner tags as needed.</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>Please list the metric's owners. Add more owner tags as needed.</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>Please list the metric's owners. Add more owner tags as needed.</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>Please list the metric's owners. Add more owner tags as needed.</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.DeclarativeRulesStorageInitialization"
    units="milliseconds">
  <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">
  <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="milliseconds">
  <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.Disabled">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The number of extensions that are disabled at browser startup.
  </summary>
</histogram>

<histogram name="Extensions.DisabledForPermissions">
  <owner>Please list the metric's owners. Add more owner tags as needed.</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>Please list the metric's owners. Add more owner tags as needed.</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.ErrorCodeFromCrxOpen">
  <owner>Please list the metric's owners. Add more owner tags as needed.</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.EventPageActiveTime" units="milliseconds">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>The time an extension's event page has spent loaded.</summary>
</histogram>

<histogram name="Extensions.EventPageIdleTime" units="milliseconds">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>The time an extension's event page has spent unloaded.</summary>
</histogram>

<histogram name="Extensions.EventPageLoadTime" units="milliseconds">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>The time for an extension's event page to load.</summary>
</histogram>

<histogram name="Extensions.ExtensionCacheCount">
  <owner>dpolukhin@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>dpolukhin@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.ExtensionInstalled">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>An extension has been installed.</summary>
</histogram>

<histogram name="Extensions.ExtensionLocation" enum="ExtensionLocation">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The number of extensions loaded at startup time grouped by
    Extension::Location.
  </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>Please list the metric's owners. Add more owner tags as needed.</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.ExtensionUninstalled">
  <owner>Please list the metric's owners. Add more owner tags as needed.</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.FileAccessAllowed">
  <owner>kalman@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>kalman@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.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>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>Number of calls to extension functions.</summary>
</histogram>

<histogram name="Extensions.GetUserDataTempDir" enum="GetUserDataTempDirResult">
  <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.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="percent">
  <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>kalman@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>kalman@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.InjectCssTime" units="milliseconds">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The amount of time for a CSS file to be injected into a page.
  </summary>
</histogram>

<histogram name="Extensions.InjectEnd_ScriptCount">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>Number of scripts injected at document end by extensions.</summary>
</histogram>

<histogram name="Extensions.InjectEnd_Time" units="milliseconds">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Time taken to inject all scripts at document end by extensions.
  </summary>
</histogram>

<histogram name="Extensions.InjectIdle_ScriptCount">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>Number of scripts injected at document idle by extensions.</summary>
</histogram>

<histogram name="Extensions.InjectIdle_Time" units="milliseconds">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Time taken to inject all scripts at document idle by extensions.
  </summary>
</histogram>

<histogram name="Extensions.InjectScriptTime" units="milliseconds">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>Time taken to inject all scripts by extensions.</summary>
</histogram>

<histogram name="Extensions.InjectStart_CssCount">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>Number of css files injected by extensions.</summary>
</histogram>

<histogram name="Extensions.InjectStart_ScriptCount">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>Number of scripts injected at document start by extensions.</summary>
</histogram>

<histogram name="Extensions.InjectStart_Time" units="milliseconds">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Time taken to inject css/scripts at document start by extensions.
  </summary>
</histogram>

<histogram name="Extensions.InstallPrompt.Accepted" enum="BooleanAccepted">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Whether the user accepted or aborted an extension installation.
  </summary>
</histogram>

<histogram name="Extensions.InstallPrompt.Type"
    enum="ExtensionInstallPromptType">
  <owner>Please list the metric's owners. Add more owner tags as needed.</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>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>Installs grouped by the location property in prefs.</summary>
</histogram>

<histogram name="Extensions.InstallType" enum="ExtensionType">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>Installs grouped by Extension::HistogramType.</summary>
</histogram>

<histogram name="Extensions.LoadAll">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The number of extensions and themes loaded at browser startup.
  </summary>
</histogram>

<histogram name="Extensions.LoadAllTime" units="milliseconds">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>Time taken to load all extensions at browser startup.</summary>
</histogram>

<histogram name="Extensions.LoadApp">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>The number of apps loaded by each user at startup time.</summary>
</histogram>

<histogram name="Extensions.LoadAppExternal">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The number of externally managed apps loaded by each user at startup time.
  </summary>
</histogram>

<histogram name="Extensions.LoadAppUser">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The number of user-installed apps loaded by each user at startup time.
  </summary>
</histogram>

<histogram name="Extensions.LoadBrowserAction">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The number of browser action extensions loaded at browser startup.
  </summary>
</histogram>

<histogram name="Extensions.LoadContentPack">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The number of content-pack extensions loaded at browser startup.
  </summary>
</histogram>

<histogram name="Extensions.LoadCreationFlags" enum="ExtensionCreationFlags">
  <owner>calamity@chromium.org</owner>
  <summary>
    The creation flags of all extensions loaded at startup time grouped by
    Extension::InitFromValueFlags.
  </summary>
</histogram>

<histogram name="Extensions.LoadExtension">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>The number of extensions loaded at browser startup.</summary>
</histogram>

<histogram name="Extensions.LoadExtensionExternal">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The number of externally managed extensions loaded at browser startup.
  </summary>
</histogram>

<histogram name="Extensions.LoadExtensionUser">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The number of user-installed extensions loaded at browser startup.
  </summary>
</histogram>

<histogram name="Extensions.LoadExternal">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The number of externally managed extensions and apps loaded at browser
    startup.
  </summary>
</histogram>

<histogram name="Extensions.LoadHostedApp">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The number of hosted apps loaded by each user at startup time.
  </summary>
</histogram>

<histogram name="Extensions.LoadPackagedApp">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The number of legacy packaged apps loaded by each user at startup time.
  </summary>
</histogram>

<histogram name="Extensions.LoadPlatformApp">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>The number of platform apps loaded at browser startup.</summary>
</histogram>

<histogram name="Extensions.LoadTheme">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>The number of themes loaded at browser startup.</summary>
</histogram>

<histogram name="Extensions.LoadType" enum="ExtensionType">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The number of extensions loaded at startup time grouped by
    Extension::HistogramType.
  </summary>
</histogram>

<histogram name="Extensions.LoadUserScript">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The number of converted user scripts loaded at browser startup.
  </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>kalman@chromium.org</owner>
  <summary>The manifest version of each loaded extension.</summary>
</histogram>

<histogram name="Extensions.NetworkDelay" units="milliseconds">
  <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="milliseconds">
  <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>Please list the metric's owners. Add more owner tags as needed.</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>kalman@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">
  <owner>kalman@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_Install" enum="ExtensionPermission">
  <obsolete>
    Deprecated as of 5/2014, replaced by Extensions.Permissions_Install2.
  </obsolete>
  <owner>kalman@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">
  <owner>kalman@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_InstallAbort"
    enum="ExtensionPermission">
  <obsolete>
    Deprecated as of 5/2014, replaced by Extensions.Permissions_InstallAbort2.
  </obsolete>
  <owner>kalman@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">
  <owner>kalman@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_InstallCancel"
    enum="ExtensionPermission">
  <obsolete>
    Deprecated as of 5/2014, replaced by Extensions.Permissions_InstallCancel2.
  </obsolete>
  <owner>kalman@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">
  <owner>kalman@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_Load" enum="ExtensionPermission">
  <obsolete>
    Deprecated as of 5/2014, replaced by Extensions.Permissions_Load2.
  </obsolete>
  <owner>kalman@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">
  <owner>kalman@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_ReEnable" enum="ExtensionPermission">
  <obsolete>
    Deprecated as of 5/2014, replaced by Extensions.Permissions_ReEnable2.
  </obsolete>
  <owner>kalman@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">
  <owner>kalman@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_ReEnableAbort"
    enum="ExtensionPermission">
  <obsolete>
    Deprecated as of 5/2014, replaced by Extensions.Permissions_ReEnableAbort2.
  </obsolete>
  <owner>kalman@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">
  <owner>kalman@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_ReEnableCancel"
    enum="ExtensionPermission">
  <obsolete>
    Deprecated as of 5/2014, replaced by Extensions.Permissions_ReEnableCancel2.
  </obsolete>
  <owner>kalman@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">
  <owner>kalman@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_Uninstall" enum="ExtensionPermission">
  <obsolete>
    Deprecated as of 5/2014, replaced by Extensions.Permissions_Uninstall2.
  </obsolete>
  <owner>kalman@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">
  <owner>kalman@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_WebStoreInstall"
    enum="ExtensionPermission">
  <obsolete>
    Deprecated as of 5/2014, replaced by
    Extensions.Permissions_WebStoreInstall2.
  </obsolete>
  <owner>kalman@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">
  <owner>kalman@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_WebStoreInstallAbort"
    enum="ExtensionPermission">
  <obsolete>
    Deprecated as of 5/2014, replaced by
    Extensions.Permissions_WebStoreInstallAbort2.
  </obsolete>
  <owner>kalman@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">
  <owner>kalman@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_WebStoreInstallCancel"
    enum="ExtensionPermission">
  <obsolete>
    Deprecated as of 5/2014, replaced by
    Extensions.Permissions_WebStoreInstallCancel2.
  </obsolete>
  <owner>kalman@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">
  <owner>kalman@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.ResourceDirectoryTimestampQueryLatency"
    units="milliseconds">
  <owner>Please list the metric's owners. Add more owner tags as needed.</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>Please list the metric's owners. Add more owner tags as needed.</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>Please list the metric's owners. Add more owner tags as needed.</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>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Count the number of times a sandboxed extension unpack fails.
  </summary>
</histogram>

<histogram name="Extensions.SandboxUnpackFailureReason"
    enum="ExtensionUnpackFailureReason">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>What caused a sandboxed extension unpack to fail?</summary>
</histogram>

<histogram name="Extensions.SandboxUnpackFailureTime">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>Time taken to unpack an extension, when the unpack fails.</summary>
</histogram>

<histogram name="Extensions.SandboxUnpackInitialCrxPathLength">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>Length of the initial path to the CRX to be unpacked.</summary>
</histogram>

<histogram name="Extensions.SandboxUnpackLinkFreeCrxPathLength">
  <owner>Please list the metric's owners. Add more owner tags as needed.</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>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Rate at which a CRX file is unpacked in Kilobytes per second.
  </summary>
</histogram>

<histogram name="Extensions.SandboxUnpackRate1To2mB">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Rate at which CRX files 1MB to 2MB are unpacked in Kilobytes per second.
  </summary>
</histogram>

<histogram name="Extensions.SandboxUnpackRate2To5mB">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Rate at which CRX files 2MB to 5MB are unpacked in Kilobytes per second.
  </summary>
</histogram>

<histogram name="Extensions.SandboxUnpackRate50kBTo1mB">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Rate at which CRX files 50kB to 1MB are unpacked in Kilobytes per second.
  </summary>
</histogram>

<histogram name="Extensions.SandboxUnpackRate5To10mB">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Rate at which CRX files 5MB to 10 MB are unpacked in Kilobytes per second.
  </summary>
</histogram>

<histogram name="Extensions.SandboxUnpackRateOver10mB">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Rate at which CRX files larger than 10MB are unpacked in Kilobytes per
    second.
  </summary>
</histogram>

<histogram name="Extensions.SandboxUnpackRateUnder50kB">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Rate at which CRX files under 50 KB are unpacked in Kilobytes per second.
  </summary>
</histogram>

<histogram name="Extensions.SandboxUnpackSuccess">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>Count the number of times a sandboxed CRX unpack succeeds.</summary>
</histogram>

<histogram name="Extensions.SandboxUnpackSuccessCantGetCrxSize">
  <owner>Please list the metric's owners. Add more owner tags as needed.</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.SandboxUnpackSuccessTime">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Time taken to unpack an extension, when the unpack succeeds.
  </summary>
</histogram>

<histogram name="Extensions.SandboxUnpackTempCrxPathLength">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Length of the path of the temporary copy of a CRX made during unpacking.
  </summary>
</histogram>

<histogram name="Extensions.SandboxUnpackUnpackedCrxPathLength">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>Length of the path under which a CRX is unpacked.</summary>
</histogram>

<histogram name="Extensions.StartupDelay" units="milliseconds">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>The time one extension delays network requests at startup.</summary>
</histogram>

<histogram name="Extensions.StartupDelay_Total" units="milliseconds">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The total time extensions delay network requests at startup.
  </summary>
</histogram>

<histogram name="Extensions.ToolstripLoadTime" units="milliseconds">
  <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.UninstallType" enum="ExtensionType">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>Uninstalls grouped by Extension::HistogramType.</summary>
</histogram>

<histogram name="Extensions.UnpackFailureInstallCause"
    enum="ExtensionInstallCause">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Count failing CRX installs, grouped by the way an extension can be
    installed.
  </summary>
</histogram>

<histogram name="Extensions.UnpackFailureInstallSource"
    enum="ExtensionLocation">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Count successful CRX installs, grouped by the location property in prefs.
    installed.
  </summary>
</histogram>

<histogram name="Extensions.UnpackSuccessInstallCause"
    enum="ExtensionInstallCause">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Count successful CRX installs, grouped by the cause of the install.
  </summary>
</histogram>

<histogram name="Extensions.UnpackSuccessInstallSource"
    enum="ExtensionLocation">
  <owner>Please list the metric's owners. Add more owner tags as needed.</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.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="milliseconds">
  <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="FileBrowser.Create" enum="FileDialogType">
  <owner>joshwoodward@google.com</owner>
  <summary>Chrome OS File Browser opening mode.</summary>
</histogram>

<histogram name="FileBrowser.DirectoryScan" units="milliseconds">
  <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.Load" units="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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 contants 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.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.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.APICallUnregister">
  <owner>jianli@chromium.org</owner>
  <summary>Number of times when gcm.unregister API is called.</summary>
</histogram>

<histogram name="GCM.CheckinCompleteTime" units="milliseconds">
  <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="NetErrorCodes">
  <owner>zea@chromium.org</owner>
  <summary>Net error results 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="NetErrorCodes">
  <owner>zea@chromium.org</owner>
  <summary>Net error results from GCM connection attempts.</summary>
</histogram>

<histogram name="GCM.ConnectionLatency" units="milliseconds">
  <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="milliseconds">
  <owner>zea@chromium.org</owner>
  <summary>
    Time (from login until reset) that a GCM connection was active.
  </summary>
</histogram>

<histogram name="GCM.DataMessageBurstReceivedInterval" units="milliseconds">
  <owner>juyik@chromium.org</owner>
  <summary>
    Interval between two successive received data message bursts.
  </summary>
</histogram>

<histogram name="GCM.FirstReceivedDataMessageLatencyAfterConnection"
    units="milliseconds">
  <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.LoadSucceeded" enum="BooleanSuccess">
  <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="milliseconds">
  <owner>juyik@chromium.org</owner>
  <summary>
    Interval between messages within a received GCM data message burst.
  </summary>
</histogram>

<histogram name="GCM.RegistrationCompleteTime" units="milliseconds">
  <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.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="kilobytes">
  <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.UnregistrationCompleteTime" units="milliseconds">
  <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="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="GoogleSearch.AccessPoint" enum="SearchAccessPoint">
  <owner>kmadhusu@chromium.org</owner>
  <summary>
    Counts number of Google searches from various access points in the browser.
  </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.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="GPU.AcceleratedSurfaceRefreshRate" units="hz">
  <owner>vangelis@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.CollectContextGraphicsInfo" units="microseconds">
  <owner>vangelis@chromium.org</owner>
  <summary>
    The time that the GPU process spends collecting driver information during
    startup.
  </summary>
</histogram>

<histogram name="GPU.CreateBrowserCompositor" units="microseconds">
  <owner>vangelis@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.InitializeOneOffTime" units="microseconds">
  <owner>vangelis@chromium.org</owner>
  <summary>
    The time that the GPU process spends in initializing the GL surface, and
    collecting graphics information.
  </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.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.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.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">
  <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="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="NtpOtherSessionsType">
  <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="HttpCache.AsyncValidationDuration" units="milliseconds">
  <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.EntryLockWait" units="milliseconds">
  <owner>jkarlin@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">
  <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.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.Vary" enum="VaryType">
  <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="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.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">
  <owner>timvolodine@chromium.org</owner>
  <summary>
    Whether the Sensor.TYPE_ROTATION_VECTOR was available at the start of Device
    Orientation.
  </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. The active input methods are selected by user in the language settings
    page.
  </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">
  <owner>shuchen@chromium.org</owner>
  <summary>The suggestion accuracy type which 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">
  <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.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.Duration" units="seconds">
  <owner>shuchen@chromium.org</owner>
  <summary>How long the virtual keyboard was visible.</summary>
</histogram>

<histogram name="InputMethod.VirtualKeyboard.InitLatency" units="milliseconds">
  <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="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">
  <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="Instant.InstantControllerEvent" enum="InstantControllerEvent">
  <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">
  <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="milliseconds">
  <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">
  <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">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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.common_name_invalid_time" units="milliseconds">
  <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="milliseconds">
  <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.harmful.decision" enum="SB3InterstitialDecision">
  <owner>felt@chromium.org</owner>
  <summary>
    User decision when presented with a Safe Browsing harmful program
    interstitial.
  </summary>
</histogram>

<histogram name="interstitial.harmful.interaction"
    enum="SB3InterstitialInteraction">
  <owner>felt@chromium.org</owner>
  <summary>
    User interactions with a Safe Browsing harmful program interstitial.
  </summary>
</histogram>

<histogram name="interstitial.malware.decision" enum="SB3InterstitialDecision">
  <owner>felt@chromium.org</owner>
  <summary>
    User decision when presented with a Safe Browsing malware interstitial.
  </summary>
</histogram>

<histogram name="interstitial.malware.decision.repeat_visit"
    enum="SB3InterstitialDecision">
  <owner>felt@chromium.org</owner>
  <summary>
    User decision when presented with a Safe Browsing malware interstitial for a
    website that the user has visited before.
  </summary>
</histogram>

<histogram name="interstitial.malware.interaction"
    enum="SB3InterstitialInteraction">
  <owner>felt@chromium.org</owner>
  <summary>
    User interactions with a Safe Browsing malware interstitial.
  </summary>
</histogram>

<histogram name="interstitial.phishing.decision" enum="SB3InterstitialDecision">
  <owner>felt@chromium.org</owner>
  <summary>
    User decision when presented with a Safe Browsing phishing interstitial.
  </summary>
</histogram>

<histogram name="interstitial.phishing.interaction"
    enum="SB3InterstitialInteraction">
  <owner>felt@chromium.org</owner>
  <summary>
    User interactions with a Safe Browsing phishing interstitial.
  </summary>
</histogram>

<histogram name="interstitial.ssl" enum="SSLResponseTypesV2">
  <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.
  </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="SSLNonAttackCauses">
  <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="SSLNonAttackCauses">
  <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.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.severity_score.common_name_invalid" units="%">
  <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="%">
  <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="milliseconds">
  <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_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="milliseconds">
  <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.NetworkChannel"
    enum="InvalidationNetworkChannel">
  <owner>pavely@chromium.org</owner>
  <summary>Network channel used for invalidations.</summary>
</histogram>

<histogram name="Keyboard.KeystrokeDeltas" units="milliseconds">
  <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="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="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.NewLogger" enum="OSAgnosticErrno">
  <owner>dgrogan@chromium.org</owner>
  <summary>Errno of errors encountered in NewLogger.</summary>
</histogram>

<histogram name="LevelDBEnv.IDB.IOError.NewSequentialFile"
    enum="OSAgnosticErrno">
  <owner>dgrogan@chromium.org</owner>
  <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>
  <summary>Errno of errors encountered in WritableFileAppend.</summary>
</histogram>

<histogram name="LevelDBEnv.IDB.IOError.WritableFileFlush"
    enum="OSAgnosticErrno">
  <owner>dgrogan@chromium.org</owner>
  <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="milliseconds">
  <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="milliseconds">
  <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>
  <summary>PlatformFileErrors encountered by a single leveldb method.</summary>
</histogram>

<histogram name="LevelDBEnv.IOError.NewLogger" enum="OSAgnosticErrno">
  <owner>dgrogan@chromium.org</owner>
  <summary>Errno of errors encountered in NewLogger.</summary>
</histogram>

<histogram name="LevelDBEnv.IOError.NewSequentialFile" enum="OSAgnosticErrno">
  <owner>dgrogan@chromium.org</owner>
  <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>
  <summary>Errno of errors encountered in WritableFileAppend.</summary>
</histogram>

<histogram name="LevelDBEnv.IOError.WritableFileFlush" enum="OSAgnosticErrno">
  <owner>dgrogan@chromium.org</owner>
  <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.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="milliseconds">
  <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="milliseconds">
  <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="LevelDBPrefStore.ReadErrors" enum="LevelDBPrefStoreErrorCodes">
  <owner>dgrogan@chromium.org</owner>
  <summary>
    Bitfield that indicates errors and recovery that occurred when opening a
    LevelDB preferences database.
  </summary>
</histogram>

<histogram name="LibraryLoader.NativeLibraryHack" enum="BooleanUsage">
  <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="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.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="milliseconds">
  <owner>noamsml@chromium.org</owner>
  <owner>vitalybuka@chromium.org</owner>
  <summary>Time between detector restarts.</summary>
</histogram>

<histogram name="LocalDiscovery.DetectorTriggerTime" units="milliseconds">
  <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="milliseconds">
  <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.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>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>Chrome OS login failure reason.</summary>
</histogram>

<histogram name="Login.LeastUsedAccountDays" units="days">
  <owner>Please list the metric's owners. Add more owner tags as needed.</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.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="milliseconds">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Time from first display of the login prompt until the user completes signing
    in.
  </summary>
</histogram>

<histogram name="Login.SuccessReason" enum="LoginSuccessReason">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>Chrome OS login success reason.</summary>
</histogram>

<histogram name="Login.UsersActiveWeekly" units="users">
  <owner>alemate@chromium.org</owner>
  <owner>nkostylev@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>nkostylev@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>antrim@chromium.org</owner>
  <summary>
    Chrome OS histogram that keeps track of supervised user password change
    result.
  </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.AudioBitsPerChannel">
  <owner>dalecurtis@chromium.org</owner>
  <summary>Bits per channel of HTML5 audio sample data.</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.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">
  <owner>scherkus@chromium.org</owner>
  <summary>Captures statistics for various AudioRendererImpl events.</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.AudioTrackProcessingStates"
    enum="AudioTrackProcessingStates">
  <summary>
    State of the media stream audio track processing, sampled once during the
    life time of a MediaStreamAudioProcessor.
  </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">
  <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.DetectedAudioCodec" enum="FFmpegCodecs">
  <owner>jrummell@chromium.org</owner>
  <summary>Audio codec used in HTML5 media.</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.DetectedVideoCodec" enum="FFmpegCodecs">
  <owner>jrummell@chromium.org</owner>
  <summary>Video codec used in HTML5 media.</summary>
</histogram>

<histogram name="Media.DevicePermissionActions" enum="DevicePermissionActions">
  <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 sucessfully 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 sucessfully read by the CDM through CDM FileIO.
    This is recorded once per CDM instance.
  </summary>
</histogram>

<histogram name="Media.EME.ClearKey.addKey" enum="MediaKeyException">
  <owner>xhwang@chromium.org</owner>
  <summary>addKey result using the Clear Key key system.</summary>
</histogram>

<histogram name="Media.EME.ClearKey.cancelKeyRequest" enum="MediaKeyException">
  <owner>xhwang@chromium.org</owner>
  <summary>cancelKeyRequest result using the Clear Key key system.</summary>
</histogram>

<histogram name="Media.EME.ClearKey.CreateSession" enum="CdmPromiseResult">
  <owner>sandersd@chromium.org</owner>
  <summary>
    Result of Clear Key createSession promises handled by Chromium code.
  </summary>
</histogram>

<histogram name="Media.EME.ClearKey.DecryptError">
  <owner>xhwang@chromium.org</owner>
  <summary>
    Decryption error event count using the Clear Key key system.
  </summary>
</histogram>

<histogram name="Media.EME.ClearKey.generateKeyRequest"
    enum="MediaKeyException">
  <owner>xhwang@chromium.org</owner>
  <summary>generateKeyRequest result using the Clear Key key system.</summary>
</histogram>

<histogram name="Media.EME.ClearKey.KeyAdded">
  <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">
  <owner>xhwang@chromium.org</owner>
  <summary>KeyError event count using the Clear Key key system.</summary>
</histogram>

<histogram name="Media.EME.ClearKey.LoadSession" enum="CdmPromiseResult">
  <owner>sandersd@chromium.org</owner>
  <summary>
    Result of Clear Key loadSession promises handled by Chromium code.
  </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.Unknown.addKey" enum="MediaKeyException">
  <owner>xhwang@chromium.org</owner>
  <summary>addKey result using an unknown key system.</summary>
</histogram>

<histogram name="Media.EME.Unknown.cancelKeyRequest" enum="MediaKeyException">
  <owner>xhwang@chromium.org</owner>
  <summary>cancelKeyRequest result using an unknown key system.</summary>
</histogram>

<histogram name="Media.EME.Unknown.CreateSession" enum="CdmPromiseResult">
  <owner>sandersd@chromium.org</owner>
  <summary>
    Result of createSession promises for unknown key systems promises that were
    handled by Chromium code.
  </summary>
</histogram>

<histogram name="Media.EME.Unknown.DecryptError">
  <owner>xhwang@chromium.org</owner>
  <summary>Decryption error event count using an unknown key system.</summary>
</histogram>

<histogram name="Media.EME.Unknown.generateKeyRequest" enum="MediaKeyException">
  <owner>xhwang@chromium.org</owner>
  <summary>generateKeyRequest result using an unknown key system.</summary>
</histogram>

<histogram name="Media.EME.Unknown.KeyAdded">
  <owner>xhwang@chromium.org</owner>
  <summary>KeyAdded event count using an unknown key system.</summary>
</histogram>

<histogram name="Media.EME.Unknown.KeyError" enum="MediaKeyError">
  <owner>xhwang@chromium.org</owner>
  <summary>KeyError event count using an unknown key system.</summary>
</histogram>

<histogram name="Media.EME.Unknown.LoadSession" enum="CdmPromiseResult">
  <owner>sandersd@chromium.org</owner>
  <summary>
    Result of loadSession promises for unknown key systems promises that were
    handled by Chromium code.
  </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.addKey" enum="MediaKeyException">
  <owner>xhwang@chromium.org</owner>
  <summary>addKey result using the Widevine key system.</summary>
</histogram>

<histogram name="Media.EME.Widevine.cancelKeyRequest" enum="MediaKeyException">
  <owner>xhwang@chromium.org</owner>
  <summary>cancelKeyRequest result using the Widevine key system.</summary>
</histogram>

<histogram name="Media.EME.Widevine.CreateSession" enum="CdmPromiseResult">
  <owner>sandersd@chromium.org</owner>
  <summary>
    Result of Widevine createSession promises handled by Chromium code.
  </summary>
</histogram>

<histogram name="Media.EME.Widevine.DecryptError">
  <owner>xhwang@chromium.org</owner>
  <summary>Decryption error event count using the Widevine key system.</summary>
</histogram>

<histogram name="Media.EME.Widevine.generateKeyRequest"
    enum="MediaKeyException">
  <owner>xhwang@chromium.org</owner>
  <summary>generateKeyRequest result using the Widevine key system.</summary>
</histogram>

<histogram name="Media.EME.Widevine.KeyAdded">
  <owner>xhwang@chromium.org</owner>
  <summary>KeyAdded event count using the Widevine key system.</summary>
</histogram>

<histogram name="Media.EME.Widevine.KeyError" enum="MediaKeyError">
  <owner>xhwang@chromium.org</owner>
  <summary>KeyError event count using the Widevine key system.</summary>
</histogram>

<histogram name="Media.EME.Widevine.LoadSession" enum="CdmPromiseResult">
  <owner>sandersd@chromium.org</owner>
  <summary>
    Result of Widevine loadSession promises handled by Chromium code.
  </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.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">
  <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">
  <owner>Please list the metric's owners. Add more owner tags as needed.</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">
  <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">
  <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">
  <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.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="milliseconds">
  <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.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.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.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.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">
  <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.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">
  <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">
  <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">
  <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">
  <owner>Please list the metric's owners. Add more owner tags as needed.</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">
  <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">
  <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.PepperVideoDecoderError" enum="PepperVideoDecodeError">
  <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.PlayMovies.DelayedAndDroppedFramesPer5Sec"
    units="frames/5s">
  <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">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The average number of displayed frames for the PlayMovies application.
    Reported every 5 seconds.
  </summary>
</histogram>

<histogram name="Media.RTCVideoDecoderError" enum="PepperVideoDecodeError">
  <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.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.VAVDAH264.DecoderFailure" enum="VAVDAH264DecoderFailure">
  <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">
  <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.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">
  <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.PixelFormat" enum="CapturePixelFormat">
  <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.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.</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">
  <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.VideoPixelFormat" enum="VideoPixelFormat">
  <owner>scherkus@chromium.org</owner>
  <summary>Pixel format used in HTML5 video. Emitted on video load.</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">
  <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.YouTube.DelayedAndDroppedFramesPer5Sec"
    units="frames/5s">
  <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">
  <owner>Please list the metric's owners. Add more owner tags as needed.</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">
  <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="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:// processes.  Recorded once per UMA ping.
  </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.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.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.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">
  <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">
  <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.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.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" units="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">
  <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.
  </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.  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="milliseconds">
  <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.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="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="MobileFullscreenVideo.DurationAfterPotraitRotation"
    units="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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.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="percent">
  <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="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">
  <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">
  <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">
  <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">
  <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">
  <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">
  <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">
  <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">
  <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">
  <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">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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>jvoung@chromium.org</owner>
  <owner>mackinlay@google.com</owner>
  <owner>ncbray@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>jvoung@chromium.org</owner>
  <owner>mackinlay@google.com</owner>
  <owner>ncbray@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>jvoung@chromium.org</owner>
  <owner>mackinlay@google.com</owner>
  <owner>ncbray@chromium.org</owner>
  <summary>The OS/Architecture of a nexe that was loaded.</summary>
</histogram>

<histogram name="NaCl.HttpStatusCodeClass.Manifest.InstalledApp"
    enum="NaClHttpStatusCodeClass">
  <owner>jvoung@chromium.org</owner>
  <owner>mackinlay@google.com</owner>
  <owner>ncbray@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>jvoung@chromium.org</owner>
  <owner>mackinlay@google.com</owner>
  <owner>ncbray@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>jvoung@chromium.org</owner>
  <owner>mackinlay@google.com</owner>
  <owner>ncbray@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>jvoung@chromium.org</owner>
  <owner>mackinlay@google.com</owner>
  <owner>ncbray@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>jvoung@chromium.org</owner>
  <owner>mackinlay@google.com</owner>
  <owner>ncbray@chromium.org</owner>
  <summary>The error code returned by NaCl's Chrome plugin.</summary>
</histogram>

<histogram name="NaCl.LoadStatus.Plugin.InstalledApp"
    enum="NaClPluginErrorCode">
  <owner>jvoung@chromium.org</owner>
  <owner>mackinlay@google.com</owner>
  <owner>ncbray@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>jvoung@chromium.org</owner>
  <owner>mackinlay@google.com</owner>
  <owner>ncbray@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>jvoung@chromium.org</owner>
  <owner>mackinlay@google.com</owner>
  <owner>ncbray@chromium.org</owner>
  <summary>The error code returned by NaCl's sel_ldr.</summary>
</histogram>

<histogram name="NaCl.LoadStatus.SelLdr.InstalledApp"
    enum="NaClSelLdrErrorCode">
  <owner>jvoung@chromium.org</owner>
  <owner>mackinlay@google.com</owner>
  <owner>ncbray@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>jvoung@chromium.org</owner>
  <owner>mackinlay@google.com</owner>
  <owner>ncbray@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>jvoung@chromium.org</owner>
  <owner>mackinlay@google.com</owner>
  <owner>ncbray@chromium.org</owner>
  <summary>
    Was the manifest specified as a data URI rather than a .nmf file?
  </summary>
</histogram>

<histogram name="NaCl.ManifestDownloadTime" units="milliseconds">
  <obsolete>
    Deprecated 6/2011, renamed.
  </obsolete>
  <owner>jvoung@chromium.org</owner>
  <owner>mackinlay@google.com</owner>
  <owner>ncbray@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="milliseconds">
  <owner>jvoung@chromium.org</owner>
  <owner>mackinlay@google.com</owner>
  <owner>ncbray@chromium.org</owner>
  <summary>The time a NaCl module ran before it crashed.</summary>
</histogram>

<histogram name="NaCl.ModuleUptime.Normal" units="milliseconds">
  <owner>jvoung@chromium.org</owner>
  <owner>mackinlay@google.com</owner>
  <owner>ncbray@chromium.org</owner>
  <summary>The time a NaCl module ran without crashing, at shutdown.</summary>
</histogram>

<histogram name="NaCl.NexeDownloadTime" units="milliseconds">
  <obsolete>
    Deprecated 6/2011, renamed.
  </obsolete>
  <owner>jvoung@chromium.org</owner>
  <owner>mackinlay@google.com</owner>
  <owner>ncbray@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>jvoung@chromium.org</owner>
  <owner>mackinlay@google.com</owner>
  <owner>ncbray@chromium.org</owner>
  <summary>
    The size of the main .nexe file downloaded for a Native Client module.
  </summary>
</histogram>

<histogram name="NaCl.NexeStartupTime" units="milliseconds">
  <obsolete>
    Deprecated 6/2011, renamed.
  </obsolete>
  <owner>jvoung@chromium.org</owner>
  <owner>mackinlay@google.com</owner>
  <owner>ncbray@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>jvoung@chromium.org</owner>
  <owner>mackinlay@google.com</owner>
  <owner>ncbray@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>jvoung@chromium.org</owner>
  <owner>mackinlay@google.com</owner>
  <owner>ncbray@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>jvoung@chromium.org</owner>
  <owner>mackinlay@google.com</owner>
  <owner>ncbray@chromium.org</owner>
  <summary>The OS/Architecture of a nexe that was loaded.</summary>
</histogram>

<histogram name="NaCl.Perf.PNaClCache.IsHit" enum="PNaClTranslationCacheEnum">
  <owner>jvoung@chromium.org</owner>
  <owner>mackinlay@google.com</owner>
  <owner>ncbray@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>jvoung@chromium.org</owner>
  <owner>mackinlay@google.com</owner>
  <owner>ncbray@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="milliseconds">
  <owner>jvoung@chromium.org</owner>
  <owner>mackinlay@google.com</owner>
  <owner>ncbray@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="milliseconds">
  <owner>jvoung@chromium.org</owner>
  <owner>mackinlay@google.com</owner>
  <owner>ncbray@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="milliseconds">
  <owner>jvoung@chromium.org</owner>
  <owner>mackinlay@google.com</owner>
  <owner>ncbray@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="milliseconds">
  <owner>jvoung@chromium.org</owner>
  <owner>mackinlay@google.com</owner>
  <owner>ncbray@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>jvoung@chromium.org</owner>
  <owner>mackinlay@google.com</owner>
  <owner>ncbray@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>jvoung@chromium.org</owner>
  <owner>mackinlay@google.com</owner>
  <owner>ncbray@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="milliseconds">
  <owner>jvoung@chromium.org</owner>
  <owner>mackinlay@google.com</owner>
  <owner>ncbray@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="milliseconds">
  <owner>jvoung@chromium.org</owner>
  <owner>mackinlay@google.com</owner>
  <owner>ncbray@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>jvoung@chromium.org</owner>
  <owner>mackinlay@google.com</owner>
  <owner>ncbray@chromium.org</owner>
  <summary>The size of the manifest file.</summary>
</histogram>

<histogram name="NaCl.Perf.Size.Nexe" units="KB">
  <owner>jvoung@chromium.org</owner>
  <owner>mackinlay@google.com</owner>
  <owner>ncbray@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>jvoung@chromium.org</owner>
  <owner>mackinlay@google.com</owner>
  <owner>ncbray@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>jvoung@chromium.org</owner>
  <owner>mackinlay@google.com</owner>
  <owner>ncbray@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>jvoung@chromium.org</owner>
  <owner>mackinlay@google.com</owner>
  <owner>ncbray@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="milliseconds">
  <owner>jvoung@chromium.org</owner>
  <owner>mackinlay@google.com</owner>
  <owner>ncbray@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>jvoung@chromium.org</owner>
  <owner>mackinlay@google.com</owner>
  <owner>ncbray@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="milliseconds">
  <owner>jvoung@chromium.org</owner>
  <owner>mackinlay@google.com</owner>
  <owner>ncbray@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="milliseconds">
  <owner>jvoung@chromium.org</owner>
  <owner>mackinlay@google.com</owner>
  <owner>ncbray@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>jvoung@chromium.org</owner>
  <owner>mackinlay@google.com</owner>
  <owner>ncbray@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="milliseconds">
  <owner>jvoung@chromium.org</owner>
  <owner>mackinlay@google.com</owner>
  <owner>ncbray@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>jvoung@chromium.org</owner>
  <owner>mackinlay@google.com</owner>
  <owner>ncbray@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="milliseconds">
  <owner>jvoung@chromium.org</owner>
  <owner>mackinlay@google.com</owner>
  <owner>ncbray@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>jvoung@chromium.org</owner>
  <owner>mackinlay@google.com</owner>
  <owner>ncbray@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>jvoung@chromium.org</owner>
  <owner>mackinlay@google.com</owner>
  <owner>ncbray@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>jvoung@chromium.org</owner>
  <owner>mackinlay@google.com</owner>
  <owner>ncbray@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>jvoung@chromium.org</owner>
  <owner>mackinlay@google.com</owner>
  <owner>ncbray@chromium.org</owner>
  <summary>
    Was the validation cache updated with a new validation result?
  </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.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.TimeToCommit" units="milliseconds">
  <owner>carlosk@chromium.org</owner>
  <summary>
    Time between the start of a navigation request in the browser and its
    commit.
  </summary>
</histogram>

<histogram name="Navigation.TimeToURLJobStart" units="milliseconds">
  <owner>carlosk@chromium.org</owner>
  <summary>
    Time between the start of a navigation request in the browser and the
    reception of a corresponding ResourceRequest in the network stack.
  </summary>
</histogram>

<histogram name="NCN.CM.FastestRTTOn2G" units="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <owner>pauljensen@chromium.org</owner>
  <summary>
    Time from ConnectionTypeChanged message until IPAddressChanged message.
  </summary>
</histogram>

<histogram name="NCN.DNSConfigChange" units="milliseconds">
  <owner>pauljensen@chromium.org</owner>
  <summary>Time between DNS configuration change messages.</summary>
</histogram>

<histogram name="NCN.GetConnectionTypeTime" units="milliseconds">
  <owner>pauljensen@chromium.org</owner>
  <summary>
    How long does each call to NetworkChangeNotifier::GetConnectionType() take.
  </summary>
</histogram>

<histogram name="NCN.IPAddressChange" units="milliseconds">
  <owner>pauljensen@chromium.org</owner>
  <summary>Time between IP address change messages.</summary>
</histogram>

<histogram name="NCN.IPAddressChangeToConnectionTypeChange"
    units="milliseconds">
  <owner>pauljensen@chromium.org</owner>
  <summary>
    Time from IPAddressChanged message until ConnectionTypeChanged message.
  </summary>
</histogram>

<histogram name="NCN.NetworkOfflineChange" units="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <owner>pauljensen@chromium.org</owner>
  <summary>
    Time between going online until we go offline change messages.
  </summary>
</histogram>

<histogram name="NCN.OfflineDataRecv" units="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <owner>pauljensen@chromium.org</owner>
  <summary>
    Time between going offline until we go online change messages.
  </summary>
</histogram>

<histogram name="NCN.PollingOfflineDataRecv" units="milliseconds">
  <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">
  <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">
  <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.AsyncResourceHandler_PendingDataCount">
  <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">
  <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="milliseconds">
  <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">
  <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">
  <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="percentage">
  <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.AuthGenerateToken_basic" units="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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.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.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="milliseconds">
  <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="milliseconds">
  <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">
  <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="milliseconds">
  <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="milliseconds">
  <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">
  <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">
  <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">
  <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">
  <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">
  <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">
  <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">
  <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">
  <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">
  <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>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.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.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">
  <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.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">
  <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">
  <owner>bnc@chromium.org</owner>
  <owner>rch@chromium.org</owner>
  <owner>rtenneti@chromium.org</owner>
  <summary>
    The total number of severs to which alternative protocol was used. This
    counts the number of servers persisted to prefs file.
  </summary>
</histogram>

<histogram name="Net.CountOfPipelineCapableServers">
  <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 severs 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="milliseconds">
  <owner>Please list the metric's owners. Add more owner tags as needed.</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>Please list the metric's owners. Add more owner tags as needed.</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="milliseconds">
  <owner>Please list the metric's owners. Add more owner tags as needed.</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">
  <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="Percent">
  <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="Percent">
  <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="Percent">
  <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="Percent">
  <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="Percent">
  <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="Percent">
  <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="Percent">
  <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="Percent">
  <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_ViaDataReductionProxy"
    units="Percent">
  <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.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="Percent">
  <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="Percent">
  <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="Percent">
  <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="Percent">
  <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.DhcpWpadCancelTime" units="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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">
  <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">
  <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">
  <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.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.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.FileError_Flush">
  <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">
  <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">
  <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">
  <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">
  <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">
  <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">
  <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">
  <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">
  <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">
  <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">
  <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">
  <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">
  <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">
  <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.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="milliseconds">
  <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="milliseconds">
  <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.GoogleConnectionUsedSSLVersionFallback"
    enum="FallbackSSLVersion">
  <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.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>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
    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.HttpAuthCacheAddEvicted" enum="BooleanDidEvict">
  <owner>ttuttle@chromium.org</owner>
  <summary>
    Whether adding an entry to the HTTP auth cache evicted another entry.
  </summary>
</histogram>

<histogram name="Net.HttpAuthCacheAddEvictedCreation">
  <owner>ttuttle@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>ttuttle@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>ttuttle@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>ttuttle@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>ttuttle@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="milliseconds">
  <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 teh 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.HttpJob.TotalTime" units="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <owner>mmenke@chromium.org</owner>
  <summary>Time it takes to request a new (unused) HTTP proxy socket.</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.HttpSocketType" enum="HttpSocketType">
  <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.HttpTimeToFirstByte" units="milliseconds">
  <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">
  <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="milliseconds">
  <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="milliseconds">
  <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">
  <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">
  <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">
  <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">
  <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="milliseconds">
  <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="milliseconds">
  <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.NetworkErrorsRecovered.MainFrame" enum="NetErrorCodes">
  <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">
  <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">
  <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">
  <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">
  <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="milliseconds">
  <owner>Please list the metric's owners. Add more owner tags as needed.</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>Please list the metric's owners. Add more owner tags as needed.</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="milliseconds">
  <owner>Please list the metric's owners. Add more owner tags as needed.</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>Please list the metric's owners. Add more owner tags as needed.</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.Ping_ResponseStartedTime" units="milliseconds">
  <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>Please list the metric's owners. Add more owner tags as needed.</owner>
  <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>Please list the metric's owners. Add more owner tags as needed.</owner>
  <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>Please list the metric's owners. Add more owner tags as needed.</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>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Indicate whether there was a proxy to preclude preconnection.
  </summary>
</histogram>

<histogram name="Net.PreconnectSubresourceEval"
    enum="PreconnectSubresourceEval">
  <owner>Please list the metric's owners. Add more owner tags as needed.</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>Please list the metric's owners. Add more owner tags as needed.</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>Please list the metric's owners. Add more owner tags as needed.</owner>
  <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>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.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="milliseconds">
  <owner>jkarlin@chromium.org</owner>
  <summary>
    Time spent on prefetch requests before the request was canceled.
  </summary>
</histogram>

<histogram name="Net.Prefetch.TimeSpentPrefetchingFromCache"
    units="milliseconds">
  <owner>jkarlin@chromium.org</owner>
  <summary>Time spent on prefetch requests when fetched from cache.</summary>
</histogram>

<histogram name="Net.Prefetch.TimeSpentPrefetchingFromNetwork"
    units="milliseconds">
  <owner>jkarlin@chromium.org</owner>
  <summary>
    Time spent on prefetch requests when fetched from the network, including
    validation time.
  </summary>
</histogram>

<histogram name="Net.Priority_High_Latency" units="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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.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.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="milliseconds">
  <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="milliseconds">
  <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">
  <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.QuicDiskCache.EntryState" enum="QuicDiskCacheEntryState">
  <owner>rtenneti@chromium.org</owner>
  <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.QuicEphemeralPortsSuggested">
  <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.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.QuicServerInfo.DiskCacheReadTime" units="milliseconds">
  <owner>rch@chromium.org</owner>
  <summary>Time spent to load QUIC server information from disk cache.</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.ClosedDuringInitializeSession">
  <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.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.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.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.HostResolutionTime" units="milliseconds">
  <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.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="percent">
  <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="percent">
  <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.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.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.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.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.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.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.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.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.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">
  <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.ResourceLoader.ReadDeferral" units="milliseconds">
  <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.SocketIdleTimeBeforeNextUse_ReusedSocket">
  <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">
  <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">
  <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">
  <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">
  <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">
  <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="milliseconds">
  <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="milliseconds">
  <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">
  <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="milliseconds">
  <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">
  <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">
  <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">
  <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">
  <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">
  <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">
  <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="milliseconds">
  <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">
  <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="milliseconds">
  <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">
  <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.SpdyHpackEncodedCharacterFrequency" units="ASCII codes">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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">
  <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 accross
    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>
  <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.</summary>
</histogram>

<histogram name="Net.SSL_Connection_Latency" units="milliseconds">
  <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="milliseconds">
  <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_Google" units="milliseconds">
  <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_No_Revocation_Checking"
    units="milliseconds">
  <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_Revocation_Checking"
    units="milliseconds">
  <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.SSLCertBlacklisted">
  <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="milliseconds">
  <owner>rsleevi@chromium.org</owner>
  <summary>Time to complete a certificate verification (success case).</summary>
</histogram>

<histogram name="Net.SSLCertVerificationTimeError" units="milliseconds">
  <owner>rsleevi@chromium.org</owner>
  <summary>Time to complete a certificate verification (error case).</summary>
</histogram>

<histogram name="Net.SSLHostInfoDNSLookup" units="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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.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">
  <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="milliseconds">
  <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.TCP_Connection_Idle_Sockets">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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.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.Transaction_Bandwidth" units="KB/s">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    (discontinued as of 4/12/09) 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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <owner>mvanouwerkerk@chromium.org</owner>
  <summary>The time that a request to Location Based Services takes.</summary>
</histogram>

<histogram name="Net.Wifi.ScanLatency" units="milliseconds">
  <owner>mvanouwerkerk@chromium.org</owner>
  <summary>The time that a Wi-fi scan takes.</summary>
</histogram>

<histogram name="Net.WpadQuickCheckFailure" units="milliseconds">
  <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="milliseconds">
  <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">
  <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">
  <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">
  <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">
  <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">
  <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">
  <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">
  <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">
  <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">
  <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">
  <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">
  <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">
  <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">
  <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">
  <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">
  <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">
  <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">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary/>
</histogram>

<histogram name="NetConnectivity3.NonPacedPacket.Sent21.GotAnAck"
    enum="BooleanSuccess">
  <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">
  <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">
  <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">
  <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">
  <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">
  <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">
  <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">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary/>
</histogram>

<histogram name="NetConnectivity3.PacedPacket.Sent21.GotAnAck"
    enum="BooleanSuccess">
  <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">
  <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">
  <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">
  <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">
  <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">
  <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">
  <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">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary/>
</histogram>

<histogram name="NetConnectivity3.StartPacket.Sent21.GotAnAck"
    enum="BooleanSuccess">
  <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">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary/>
</histogram>

<histogram name="NetConnectivity4">
  <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">
  <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">
  <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="milliseconds">
  <owner>benchan@chromium.org</owner>
  <summary>The time the Gobi modem takes to complete activation.</summary>
</histogram>

<histogram name="Network.3G.Gobi.Connect" units="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <owner>benchan@chromium.org</owner>
  <summary>The time it takes to install Gobi firmware.</summary>
</histogram>

<histogram name="Network.3G.Gobi.Registration" units="milliseconds">
  <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">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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">
  <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">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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">
  <owner>pneubeck@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">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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.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.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.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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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.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.TerminationActionResult"
    enum="ShillTerminationActionResult">
  <obsolete>
    Deprecated 10/2012. No longer tracked.
  </obsolete>
  <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.
  </summary>
</histogram>

<histogram name="Network.Shill.TerminationActionResult.OnSuspend"
    enum="ShillTerminationActionResult">
  <owner>quiche@chromium.org</owner>
  <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="ShillTerminationActionResult">
  <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.
  </summary>
</histogram>

<histogram name="Network.Shill.TerminationActionTime.OnSuspend"
    units="milliseconds">
  <owner>quiche@chromium.org</owner>
  <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="milliseconds">
  <owner>quiche@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.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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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.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="milliseconds">
  <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="milliseconds">
  <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.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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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.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.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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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">
  <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="milliseconds">
  <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">
  <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">
  <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>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Chrome OS network usage metric.  The channel used for each successful WiFi
    connection.
  </summary>
</histogram>

<histogram name="Network.Wifi.Idle.NoiseLevel" units="negative dBm">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Network metric indicating the negative of the dBm noise level recorded at
    the time the metric is collected.  Reported at least once per day and only
    when the device is idle.
  </summary>
</histogram>

<histogram name="Network.Wifi.Idle.SignalLevel" units="negative dBm">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Network metric indicating the negative of the dBm received signal level
    recorded at the time the metric is collected.  Reported at least once per
    day and only when the device is idle.
  </summary>
</histogram>

<histogram name="Network.Wifi.Idle.SignalToNoiseRatio" units="negative dBm">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Network metric indicating signal minus noise in dBm recorded at the time the
    metrics is collected.  Reported at least once per day and only when the
    device is idle.
  </summary>
</histogram>

<histogram name="Network.Wifi.NoiseLevel" units="negative dBm">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Network metric indicating the negative of the dBm noise level recorded at
    the time the metric is collected.  Reported at least once per day.
  </summary>
</histogram>

<histogram name="Network.Wifi.PhyMode" enum="NetworkPhyModeType">
  <owner>Please list the metric's owners. Add more owner tags as needed.</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>Please list the metric's owners. Add more owner tags as needed.</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>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Chrome OS network usage metric.  The security setting for each successful
    WiFi connection.
  </summary>
</histogram>

<histogram name="Network.Wifi.SignalLevel" units="negative dBm">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Network metric indicating the negative of the dBm received signal level
    recorded at the time the metric is collected.  Reported at least once per
    day.
  </summary>
</histogram>

<histogram name="Network.Wifi.SignalToNoiseRatio" units="negative dBm">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Network metric indicating signal minus noise in dBm recorded at the time the
    metrics is collected.  Reported at least once per day.
  </summary>
</histogram>

<histogram name="Network.Wifi.TimeOnline" units="seconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="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.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">
  <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">
  <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">
  <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.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">
  <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">
  <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.MostVisitedTilePlacementExperiment"
    enum="NtpTileExperimentActions">
  <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.NonVisibleScreenshots">
  <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">
  <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 changing focus away from the NTP,
    be it bynavigating 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 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.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 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.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
    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.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 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.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 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.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 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.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 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.OtherSessionsMenu" enum="NtpOtherSessionsType">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <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">
  <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">
  <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">
  <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.SearchURLs.Total">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>TBD.</summary>
</histogram>

<histogram name="NewTabPage.SelectedPageType" enum="NtpPaneType">
  <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">
  <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">
  <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.SuggestedSite">
  <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">
  <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">
  <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">
  <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">
  <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.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">
  <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">
  <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.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="ntp.searchurls.total">
  <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.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">
  <owner>zelidrag@chromium.org</owner>
  <summary>
    Failure reason of final ListAccounts call failure during Chrome OS login.
  </summary>
</histogram>

<histogram name="OAuth2Login.ListAccountsRetry" enum="GoogleServiceAuthError">
  <owner>zelidrag@chromium.org</owner>
  <summary>
    Retry reason of failed ListAccounts call during Chrome OS login.
  </summary>
</histogram>

<histogram name="OAuth2Login.MergeSessionFailure" enum="GoogleServiceAuthError">
  <owner>zelidrag@chromium.org</owner>
  <summary>
    Failure reason of final MergeSession call during Chrome OS login.
  </summary>
</histogram>

<histogram name="OAuth2Login.MergeSessionRetry" enum="GoogleServiceAuthError">
  <owner>zelidrag@chromium.org</owner>
  <summary>
    Retry reason of failed MergeSession call during Chrome OS login.
  </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">
  <owner>zelidrag@chromium.org</owner>
  <summary>
    Failure reason of final OAuthLogin (with uber token) call during Chrome OS
    login.
  </summary>
</histogram>

<histogram name="OAuth2Login.OAuthLoginUberTokenRetry"
    enum="GoogleServiceAuthError">
  <owner>zelidrag@chromium.org</owner>
  <summary>
    Retry reason of failed OAuthLogin (with uber token) call during Chrome OS
    login.
  </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.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="milliseconds">
  <owner>zelidrag@chromium.org</owner>
  <summary>How long it takes for the session restore to fail.</summary>
</histogram>

<histogram name="OAuth2Login.SessionRestoreTimeToSuccess" units="milliseconds">
  <owner>zelidrag@chromium.org</owner>
  <summary>
    How long it takes for the session restore to finish succeessfully.
  </summary>
</histogram>

<histogram name="OfflinePolicy.SuccessfulResourceLoadPercentage" units="%">
  <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.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.HasLegalDefaultMatchWithoutCompletion" enum="Boolean">
  <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 he/she
    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.ProviderTime" units="milliseconds">
  <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="milliseconds">
  <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.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.SuggestRequest.Failure.GoogleResponseTime"
    units="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <owner>merkulova@chromium.org</owner>
  <summary>Time from boot to sign-in completed.</summary>
</histogram>

<histogram name="OOBE.StepCompletionTime" units="milliseconds">
  <owner>merkulova@chromium.org</owner>
  <summary>Time spent on specific OOBE screen.</summary>
</histogram>

<histogram name="OriginChip.Pressed">
  <owner>gbillock@chromium.org</owner>
  <summary>The number of clicks on the origin chip.</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">
  <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.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.Completed" enum="OverscrollMode">
  <owner>rbyers@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>
  <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>
  <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="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="PasswordBubble.DisplayDisposition"
    enum="PasswordBubbleDisplayDisposition">
  <owner>mkwst@chromium.org</owner>
  <owner>markusheintz@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.SubmissionEvent"
    enum="PasswordGenerationSubmissionEvent">
  <owner>Please list the metric's owners. Add more owner tags as needed.</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="PasswordManager.AccountsPerSite">
  <owner>dubroy@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.ActionsTaken"
    enum="PasswordManagerActionsTaken">
  <obsolete>
    Deprecated as of Chrome 32. See PasswordManagerActionsTakenWithPsl
  </obsolete>
  <owner>dubroy@chromium.org</owner>
  <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>dubroy@chromium.org</owner>
  <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>dubroy@chromium.org</owner>
  <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.BlacklistedSites">
  <owner>dubroy@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.Enabled" enum="BooleanEnabled">
  <owner>dubroy@chromium.org</owner>
  <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.InfoBarResponse" enum="InfoBarResponse">
  <owner>dubroy@chromium.org</owner>
  <owner>vabr@chromium.org</owner>
  <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.NumPasswordsDeletedByBulkDelete">
  <owner>dubroy@chromium.org</owner>
  <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.NumPasswordsDeletedWhenBlacklisting">
  <owner>dubroy@chromium.org</owner>
  <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>dubroy@chromium.org</owner>
  <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>dubroy@chromium.org</owner>
  <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>dubroy@chromium.org</owner>
  <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.ProvisionalSaveFailure"
    enum="ProvisionalSaveFailure">
  <owner>dubroy@chromium.org</owner>
  <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>dubroy@chromium.org</owner>
  <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>dubroy@chromium.org</owner>
  <owner>vabr@chromium.org</owner>
  <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>dubroy@chromium.org</owner>
  <owner>vabr@chromium.org</owner>
  <summary>Indicates whether the save password prompt was displayed.</summary>
</histogram>

<histogram name="PasswordManager.SavePasswordPromptResponse"
    enum="SavePasswordPromptResponseType">
  <owner>dubroy@chromium.org</owner>
  <owner>vabr@chromium.org</owner>
  <summary>
    Breakdown of which response the user selected from the save password prompt.
  </summary>
</histogram>

<histogram name="PasswordManager.SyncCredentialFiltered" enum="Boolean">
  <owner>gcasto@chromium.org</owner>
  <owner>vabr@chromium.org</owner>
  <summary>
    If the sync credential was removed from autofill consideration.
  </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>dubroy@chromium.org</owner>
  <owner>vabr@chromium.org</owner>
  <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>dubroy@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>dubroy@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.UIDismissalReason"
    enum="PasswordManagerUIDismissalReason">
  <owner>mkwst@chromium.org</owner>
  <owner>markusheintz@chromium.org</owner>
  <summary>
    Why was the password manager's UI (bubble or infobar) closed?
  </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="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="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.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="percent">
  <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>
  <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.DiskUsage.Cache_Avg" units="KB">
  <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">
  <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">
  <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">
  <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">
  <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">
  <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">
  <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>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Number of users home directories on the device. Logged once a day.
  </summary>
</histogram>

<histogram name="Platform.DiskUsage.OldestUserOnDevice">
  <owner>Please list the metric's owners. Add more owner tags as needed.</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>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Number of user home dirs on device. Logged once a day, if disk usage is
    high.
  </summary>
</histogram>

<histogram name="Platform.DiskUsageCache" units="KB">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>KB in use in the /cache filesystem tree. Logged once a day.</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.DiskUsageData" units="KB">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>KB in use in the /data filesystem tree. Logged once a day.</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>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The maximum supported micro-architecture on an Intel platform.  This value
    is logged at program start time.
  </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.
    Contact semenzato@ for further info.
  </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.</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.
  </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.
  </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.</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.</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.
  </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.</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.
  </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.</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.</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.</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.</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.</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.  These, and all other
    MEMINFO stats, are snapshotted every 30s.
  </summary>
</histogram>

<histogram name="Platform.MeminfoSwapUsedPercent" units="percent">
  <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.  These, and all
    other MEMINFO stats, are 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.
  </summary>
</histogram>

<histogram name="Platform.MemoryBandwidth.ReadWrite" units="MB/s">
  <owner>hajimehoshi@chromium.org</owner>
  <owner>kouhei@chromium.org</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>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>Chrome OS stateful partition usage level.</summary>
</histogram>

<histogram name="Platform.Storage.Flash.BadBlocks">
  <owner>dehrenberg@chromium.org</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">
  <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.Junction" units="Celsius">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Peak junction temperature for the last sample interval, read from TSEN on
    the SoC.  The sample interval may vary from seconds to several minutes.
  </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.TPM.DictionaryAttackCounter">
  <owner>dkrahn@chromium.org</owner>
  <summary>
    Each sample is the value of the TPM dictionary attack counter during
    startup.  Any non-zero value is unexpected.
  </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">
  <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.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="milliseconds">
  <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="milliseconds">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>TBD</summary>
</histogram>

<histogram name="PLT.BeginToFinish_AfterPreconnectRequest" units="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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.BeginToFirstPaintAfterLoad" units="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <owner>bolian@chromium.org</owner>
  <summary>
    Time from connectStart to connectEnd based on Navigation Timing.
  </summary>
</histogram>

<histogram name="PLT.NT_DelayBeforeConnect" units="milliseconds">
  <owner>bolian@chromium.org</owner>
  <summary>
    Time from domanLookupEnd to connectStart based on Navigation Timing.
  </summary>
</histogram>

<histogram name="PLT.NT_DelayBeforeDomainLookup" units="milliseconds">
  <owner>bolian@chromium.org</owner>
  <summary>
    Time from fetchStart to domainLookupStart based on Navigation Timing.
  </summary>
</histogram>

<histogram name="PLT.NT_DelayBeforeDomLoading" units="milliseconds">
  <owner>bolian@chromium.org</owner>
  <summary>
    Time from responseStart to domLoading based on Navigation Timing.
  </summary>
</histogram>

<histogram name="PLT.NT_DelayBeforeFetch" units="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <owner>bolian@chromium.org</owner>
  <summary>
    Time from domContentLoadedEventEnd to loadEventStart based on Navigation
    Timing.
  </summary>
</histogram>

<histogram name="PLT.NT_DelayBeforeRequest" units="milliseconds">
  <owner>bolian@chromium.org</owner>
  <summary>
    Time from connectEnd to requestStart based on Navigation Timing.
  </summary>
</histogram>

<histogram name="PLT.NT_DomainLookup" units="milliseconds">
  <owner>bolian@chromium.org</owner>
  <summary>
    Time from domainLookupStart to domainLookupEnd based on Navigation Timing.
  </summary>
</histogram>

<histogram name="PLT.NT_DomContentLoaded" units="milliseconds">
  <owner>bolian@chromium.org</owner>
  <summary>
    Time from domContentLoadedEventStart to domContentLoadedEventEnd based on
    Navigation Timing.
  </summary>
</histogram>

<histogram name="PLT.NT_DomInteractive" units="milliseconds">
  <owner>bolian@chromium.org</owner>
  <summary>
    Time from domInteractive to domContentLoadEventStart based on Navigation
    Timing.
  </summary>
</histogram>

<histogram name="PLT.NT_DomLoading" units="milliseconds">
  <owner>bolian@chromium.org</owner>
  <summary>
    Time from domLoading to domInteractive based on Navigation Timing.
  </summary>
</histogram>

<histogram name="PLT.NT_LoadEvent" units="milliseconds">
  <owner>bolian@chromium.org</owner>
  <summary>
    Time from loadEventStart to loadEventEnd based on Navigation Timing.
  </summary>
</histogram>

<histogram name="PLT.NT_Redirect" units="milliseconds">
  <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="milliseconds">
  <owner>bolian@chromium.org</owner>
  <summary>
    Time from requestStart to responseStart based on Navigation Timing.
  </summary>
</histogram>

<histogram name="PLT.NT_Response" units="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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_BeginToCommit" units="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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.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.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.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="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.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.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">
  <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.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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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">
  <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">
  <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">
  <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">
  <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="milliseconds">
  <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="milliseconds">
  <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.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="Prerender.AbandonTimeUntilUsed" units="milliseconds">
  <owner>davidben@chromium.org</owner>
  <owner>tburkard@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">
  <owner>tburkard@chromium.org</owner>
  <summary>
    Enumeration of what types of cookies were sent for a prerender.
  </summary>
</histogram>

<histogram name="Prerender.CookieStatus" enum="PrerenderCookieStatus">
  <owner>tburkard@chromium.org</owner>
  <summary>Enumeration of what cookie actions a prerender caused.</summary>
</histogram>

<histogram name="Prerender.Event" enum="PrerenderEvent">
  <owner>tburkard@chromium.org</owner>
  <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>tburkard@chromium.org</owner>
  <summary>
    Final status for prerender pages - either success, or why it was canceled.
  </summary>
</histogram>

<histogram name="Prerender.FinalStatusMatchComplete"
    enum="PrerenderFinalStatus">
  <owner>tburkard@chromium.org</owner>
  <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="milliseconds">
  <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="milliseconds">
  <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">
  <owner>tburkard@chromium.org</owner>
  <summary>
    Enumeration of what events related to the local predictor have occurred
  </summary>
</histogram>

<histogram name="Prerender.LocalPredictorLoggedInLookupTime"
    units="milliseconds">
  <owner>tburkard@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="milliseconds">
  <owner>tburkard@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="milliseconds">
  <owner>tburkard@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="milliseconds">
  <owner>tburkard@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="milliseconds">
  <owner>tburkard@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>tburkard@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>tburkard@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>tburkard@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>tburkard@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>tburkard@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">
  <owner>tburkard@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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <owner>tburkard@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="milliseconds">
  <owner>tburkard@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="milliseconds">
  <owner>tburkard@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="milliseconds">
  <owner>tburkard@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="milliseconds">
  <owner>tburkard@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="milliseconds">
  <owner>tburkard@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="milliseconds">
  <owner>tburkard@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="milliseconds">
  <owner>tburkard@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="milliseconds">
  <owner>tburkard@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="milliseconds">
  <owner>tburkard@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>tburkard@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="milliseconds">
  <owner>tburkard@chromium.org</owner>
  <summary>
    How long the cleanup portion of PrerenderManager::PeriodicCleanup takes, to
    measure jank.
  </summary>
</histogram>

<histogram name="Prerender.PeriodicCleanupResourceCheckTime"
    units="milliseconds">
  <owner>tburkard@chromium.org</owner>
  <summary>
    How long the resource check portion of PrerenderManager::PeriodicCleanup
    takes, to measure jank.
  </summary>
</histogram>

<histogram name="Prerender.PrerenderCountOf3Max">
  <owner>tburkard@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="milliseconds">
  <owner>tburkard@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>tburkard@chromium.org</owner>
  <summary>
    The number of sessions that have at least X successful prerenders.
  </summary>
</histogram>

<histogram name="Prerender.RelTypesLinkAdded" enum="PrerenderRelTypes">
  <owner>tburkard@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>tburkard@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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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>tburkard@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="milliseconds">
  <owner>tburkard@chromium.org</owner>
  <summary>Time to perform the session storage namespace merge.</summary>
</histogram>

<histogram name="Prerender.SimulatedLocalBrowsingBaselinePLT"
    units="milliseconds">
  <owner>tburkard@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="milliseconds">
  <owner>tburkard@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>tburkard@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>tburkard@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">
  <owner>tburkard@chromium.org</owner>
  <summary>
    Enumeration of what events related to the TabHelper class have occurred.
  </summary>
</histogram>

<histogram name="Prerender.TimeBetweenPrerenderRequests" units="milliseconds">
  <owner>tburkard@chromium.org</owner>
  <summary>Time between subsequent prerender requests.</summary>
</histogram>

<histogram name="Prerender.TimeSinceLastRecentVisit" units="milliseconds">
  <owner>tburkard@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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <owner>tburkard@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="milliseconds">
  <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="milliseconds">
  <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">
  <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.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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <owner>vitalybuka@chromium.org</owner>
  <summary>Time taken to render each PDF page for print preview.</summary>
</histogram>

<histogram name="PrintPreview.RenderToPDFTime" units="milliseconds">
  <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="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.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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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>
  <summary>
    This histogram tracks which UI screen was used to delete a profile. This
    does not track when the profile is actually deleted, which is an
    asycnhronous 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.HistorySize" units="MB">
  <owner>hajimehoshi@chromium.org</owner>
  <owner>kouhei@chromium.org</owner>
  <summary>Size of the history database.</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.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 when
    Chrome starts up, among cases with at least one profile.
  </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 when Chrome starts up.
  </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.NumberOfSignedInProfiles">
  <owner>bcwhite@chromium.org</owner>
  <owner>rlp@chromium.org</owner>
  <summary>
    Counts the number of signed-in profiles on a user's machine when Chrome
    starts up.
  </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 when a profile is loaded, including when Chrome
    starts up.
  </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 when Chrome starts up.
  </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>Please list the metric's owners. Add more owner tags as needed.</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.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="milliseconds">
  <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="milliseconds">
  <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">
  <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.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.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.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="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.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.EvictedOriginsPerHour">
  <owner>tzik@chromium.org</owner>
  <summary>Number of evicted origins in an hour.</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">
  <owner>tzik@chromium.org</owner>
  <summary>Amount of free disk space for profile directory.</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">
  <owner>tzik@chromium.org</owner>
  <summary>Initial quota for global temporary storage.</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.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.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.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="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="milliseconds">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>The time it takes for the compositor to draw a frame.</summary>
</histogram>

<histogram name="Renderer.DrawDurationOverestimate" units="milliseconds">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    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="milliseconds">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    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="milliseconds">
  <owner>Please list the metric's owners. Add more owner tags as needed.</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="milliseconds">
  <owner>Please list the metric's owners. Add more owner tags as needed.</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="milliseconds">
  <owner>Please list the metric's owners. Add more owner tags as needed.</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.PixelIncreaseFromTransitions">
  <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="milliseconds">
  <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="Renderer2.FinishDocToFinish">
  <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">
  <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">
  <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">
  <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">
  <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">
  <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">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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.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="milliseconds">
  <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="milliseconds">
  <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" units="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"
    units="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" units="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" units="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="milliseconds">
  <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="%">
  <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="%">
  <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.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.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="milliseconds">
  <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="milliseconds">
  <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.Snapshot">
  <owner>wiltzius@chromium.org</owner>
  <summary>Time to capture a renderer snapshot.</summary>
</histogram>

<histogram name="Renderer4.SoftwareCompositorThreadImplDrawDelay"
    units="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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.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="RendererSyncIPC.ElapsedTime" units="milliseconds">
  <owner>ppi@chromium.org</owner>
  <summary>
    Roundtrip times for synchronous IPC calls from the renderer to browser.
  </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">
  <owner>estade@chromium.org</owner>
  <summary>
    The state of the requestAutocomplete() dialog when it was dismissed.
  </summary>
</histogram>

<histogram name="RequestAutocomplete.InitialUserState"
    enum="AutofillDialogInitialUserState">
  <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">
  <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">
  <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">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Measures the duration for which an requestAutocomplete() dialog was shown.
  </summary>
</histogram>

<histogram name="RequestAutocomplete.UiDuration.Cancel" units="ms">
  <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">
  <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">
  <owner>estade@chromium.org</owner>
  <summary>
    Measures how users are interacting with the requestAutocomplete() dialog UI.
  </summary>
</histogram>

<histogram name="RequestAutocomplete.UiLatencyToShow" units="ms">
  <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">
  <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">
  <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="SafeBrowsing.EnabledSettingChanged" enum="BooleanEnabled">
  <owner>feng@chromium.org</owner>
  <summary>
    Records the user action that enables/disables safe browsing feature in the
    Settings page on Android.
  </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="SB.BloomFilter" units="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The size of the SafeBrowsing database file on disk in kilobytes.
  </summary>
</histogram>

<histogram name="SB2.DatabaseOpen" units="milliseconds">
  <owner>shess@chromium.org</owner>
  <summary>
    The time it takes to initialize the SafeBrowsing storage backend, in
    milliseconds.
  </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="milliseconds">
  <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">
  <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="milliseconds">
  <owner>shess@chromium.org</owner>
  <summary>The time it takes for a download to finish.</summary>
</histogram>

<histogram name="SB2.DownloadHashCheckDuration" units="milliseconds">
  <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="milliseconds">
  <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">
  <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="milliseconds">
  <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.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.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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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">
  <owner>shess@chromium.org</owner>
  <summary>The size of the PrefixSet file in kilobytes.</summary>
</histogram>

<histogram name="SB2.PrefixSetLoad" units="ms">
  <owner>shess@chromium.org</owner>
  <summary>Time to load the PrefixSet file.</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.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">
  <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 the PrefixSet file.</summary>
</histogram>

<histogram name="SB2.PrefixSetWrite" units="ms">
  <owner>shess@chromium.org</owner>
  <summary>Time to store the PrefixSet file.</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.SetExtendedReportingEnabled" enum="BooleanEnabled">
  <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.SideEffectFreeWhitelistDatabaseKilobytes" units="KB">
  <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">
  <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">
  <owner>shess@chromium.org</owner>
  <summary>Time to load the Side Effect Free Whitelist PrefixSet file.</summary>
</histogram>

<histogram name="SB2.SideEffectFreeWhitelistPrefixSetWrite" units="ms">
  <owner>shess@chromium.org</owner>
  <summary>
    Time to store the Side Effect Free Whitelist PrefixSet file.
  </summary>
</histogram>

<histogram name="SB2.SideEffectFreeWhitelistStatus"
    enum="SB2SideEffectFreeWhitelistStatus">
  <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="milliseconds">
  <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>feng@chromium.org</owner>
  <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>feng@chromium.org</owner>
  <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.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.
  </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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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.ExtractImageHeadersTime" units="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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">
  <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="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.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.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>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The counts for various reasons why an in-progress phishing classification
    was canceled.
  </summary>
</histogram>

<histogram name="SBClientPhishing.CheckNoPendingClassificationFailed">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <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>Please list the metric's owners. Add more owner tags as needed.</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.ClientModelStatus"
    enum="SBClientPhishingClientModelStatus">
  <owner>Please list the metric's owners. Add more owner tags as needed.</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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>Time spent generating the thumbnail.</summary>
</histogram>

<histogram name="SBClientPhishing.IllegalFeatureValue">
  <owner>Please list the metric's owners. Add more owner tags as needed.</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>Please list the metric's owners. Add more owner tags as needed.</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>Please list the metric's owners. Add more owner tags as needed.</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>Please list the metric's owners. Add more owner tags as needed.</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>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Records the status when we create a scorer object for the client-side
    phishing detection classifier.
  </summary>
</histogram>

<histogram name="SBClientPhishing.TermFeatureBreakIterError">
  <owner>Please list the metric's owners. Add more owner tags as needed.</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="milliseconds">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The time that an individual chunk of term feature extraction work took.
  </summary>
</histogram>

<histogram name="SBClientPhishing.TermFeatureIterations">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The number of iterations that the term feature extractor took to finish.
  </summary>
</histogram>

<histogram name="SBClientPhishing.TermFeatureTimeout">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The number of phishing classification that were aborted because term feature
    extraction took too long.
  </summary>
</histogram>

<histogram name="SBClientPhishing.TermFeatureTotalTime" units="milliseconds">
  <owner>Please list the metric's owners. Add more owner tags as needed.</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>Please list the metric's owners. Add more owner tags as needed.</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="milliseconds">
  <owner>Please list the metric's owners. Add more owner tags as needed.</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.DroppedIncident" enum="IncidentType">
  <owner>grt@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="milliseconds">
  <owner>grt@google.com</owner>
  <summary>
    The elapsed time to collect environmental data for a safe browsing incident
    report.
  </summary>
</histogram>

<histogram name="SBIRS.FindDownloadedBinaryTime" units="milliseconds">
  <owner>grt@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>grt@google.com</owner>
  <summary>
    The type of incident given to the safe browsing incident reporting service.
  </summary>
</histogram>

<histogram name="SBIRS.IncidentCount">
  <owner>grt@google.com</owner>
  <summary>
    The number of incidents collated into a single safe browsing incident report
    before pruning.
  </summary>
</histogram>

<histogram name="SBIRS.InterIncidentTime" units="milliseconds">
  <owner>grt@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.PruneRatio" units="percentage">
  <owner>grt@google.com</owner>
  <summary>
    The percentage of incidents pruned from a safe browsing incident report on
    account of having been previously reported.
  </summary>
</histogram>

<histogram name="SBIRS.ReportPayloadSize" units="bytes">
  <owner>grt@google.com</owner>
  <summary>The size, in bytes, of a safe browsing incident report.</summary>
</histogram>

<histogram name="SBIRS.ReportUploadTime" units="milliseconds">
  <owner>grt@google.com</owner>
  <summary>The elapsed time to upload a safe browsing incident report.</summary>
</histogram>

<histogram name="SBIRS.UploadResult" enum="ReportProcessingResult">
  <owner>grt@google.com</owner>
  <summary>
    The result of an attempted report upload by the safe browsing incident
    reporting service.
  </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.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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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.Network_Decode_1st_To_2nd_c" units="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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.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.ProblemCodes_3" enum="SdchProblemCode">
  <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">
  <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.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="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.MigratedPrefToDictionaryValue" enum="BooleanHit">
  <owner>erikwright@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="ServicesCustomization.LoadResult"
    enum="ServicesCustomizationLoadResult">
  <owner>dpolukhin@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.ActivateEventExecutionTime" units="millisecond">
  <owner>shimazu@chromium.org</owner>
  <summary>Execution time of ServiceWorkerGlobalScope.onactivate.</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.FetchEventExecutionTime" units="millisecond">
  <owner>shimazu@chromium.org</owner>
  <summary>Execution time of ServiceWorkerGlobalScope.onfetch.</summary>
</histogram>

<histogram name="ServiceWorker.InstallEventExecutionTime" units="millisecond">
  <owner>shimazu@chromium.org</owner>
  <summary>Execution time of ServiceWorkerGlobalScope.oninstall.</summary>
</histogram>

<histogram name="ServiceWorker.MessageEventExecutionTime" units="millisecond">
  <owner>shimazu@chromium.org</owner>
  <summary>Execution time of ServiceWorkerGlobalScope.onmessage.</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="SessionCrashed.Bubble" enum="SessionCrashedBubbleUserAction">
  <owner>yiyaoliu@chromium.org</owner>
  <summary>How did the user interact with the SessionCrashed Bubble?</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="milliseconds">
  <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="milliseconds">
  <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.JsonDataSizeKilobytes" units="KB">
  <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.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.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.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">
  <owner>mad@chromium.org</owner>
  <summary>The startup URLs pref migration steps.</summary>
</histogram>

<histogram name="Settings.StartupURLsResetTime" units="milliseconds">
  <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.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">
  <obsolete>
    Deprecated 2014-10.
  </obsolete>
  <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.
  </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="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="SharedWorker.RendererSurviveForWorkerTime"
    units="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <owner>horo@chromium.org</owner>
  <summary>
    The time from the creation of SharedWorkerHost until when
    WorkerScriptLoadFailed is called.
  </summary>
</histogram>

<histogram name="ShortcutsProvider.QueryIndexTime" units="milliseconds">
  <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.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.AndroidSigninPromo" enum="AndroidSigninPromoAction">
  <owner>guohui@chromium.org</owner>
  <summary>Track how a user interfacts with the android signin promo.</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.OneClickConfirmation" enum="SigninFlowConfirmations">
  <owner>Please list the metric's owners. Add more owner tags as needed.</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.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.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.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.SignoutProfile" enum="SigninSignoutProfile">
  <owner>mlerman@chromium.org</owner>
  <summary>Track how a profile gets signed out.</summary>
</histogram>

<histogram name="SimpleCache.App.CheckCRCResult" enum="CheckCRCResult">
  <owner>Please list the metric's owners. Add more owner tags as needed.</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.App.CreationToIndex" units="milliseconds">
  <owner>Please list the metric's owners. Add more owner tags as needed.</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.App.CreationToIndexFail" units="milliseconds">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The time from the creation of the simple cache backend until the index fails
    to load.
  </summary>
</histogram>

<histogram name="SimpleCache.App.EntryCreatedAndStream2Omitted"
    enum="SimpleCache.EntryCreatedAndStream2Omitted">
  <owner>Please list the metric's owners. Add more owner tags as needed.</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.App.EntryCreationResult" enum="BooleanSuccess">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    For entry creation operations that were sent to the disk, the result of
    creation.
  </summary>
</histogram>

<histogram name="SimpleCache.App.EntryCreationTime" units="milliseconds">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>The time, in ms, spent creating a new entry on disk.</summary>
</histogram>

<histogram name="SimpleCache.App.EntryOpenedAndStream2Removed"
    enum="SimpleCache.EntryOpenedAndStream2Removed">
  <owner>Please list the metric's owners. Add more owner tags as needed.</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.App.EntryOperationsPending">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    At the time that operations are run, the number of pending operations on a
    particular entry.
  </summary>
</histogram>

<histogram name="SimpleCache.App.Eviction.CacheSizeOnStart" units="bytes">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>The size of the cache at the beginning of an eviction.</summary>
</histogram>

<histogram name="SimpleCache.App.Eviction.CacheSizeOnStart2" units="KB">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>The size of the cache at the beginning of an eviction.</summary>
</histogram>

<histogram name="SimpleCache.App.Eviction.EntryCount">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>The number of entries to be erased in an eviction.</summary>
</histogram>

<histogram name="SimpleCache.App.Eviction.MaxCacheSizeOnStart" units="bytes">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The maximum allowed size of the cache at the beginning of an eviction.
  </summary>
</histogram>

<histogram name="SimpleCache.App.Eviction.MaxCacheSizeOnStart2" units="KB">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The maximum allowed size of the cache at the beginning of an eviction.
  </summary>
</histogram>

<histogram name="SimpleCache.App.Eviction.Result" enum="BooleanSuccess">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>The result of an eviction.</summary>
</histogram>

<histogram name="SimpleCache.App.Eviction.SizeOfEvicted" units="bytes">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>The number of bytes to be erased in an eviction.</summary>
</histogram>

<histogram name="SimpleCache.App.Eviction.SizeOfEvicted2" units="KB">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>The amount of memory freed in an eviction.</summary>
</histogram>

<histogram name="SimpleCache.App.Eviction.SizeWhenDone" units="bytes">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>The size of the cache after running an eviction.</summary>
</histogram>

<histogram name="SimpleCache.App.Eviction.SizeWhenDone2" units="KB">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>The size of the cache after running an eviction.</summary>
</histogram>

<histogram name="SimpleCache.App.Eviction.TimeToDone" units="milliseconds">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>Time spent completing an eviction.</summary>
</histogram>

<histogram name="SimpleCache.App.Eviction.TimeToSelectEntries"
    units="milliseconds">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>Time spent selecting entries for eviction.</summary>
</histogram>

<histogram name="SimpleCache.App.FileDescriptorLimitHard">
  <owner>Please list the metric's owners. Add more owner tags as needed.</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.App.FileDescriptorLimitSoft">
  <owner>Please list the metric's owners. Add more owner tags as needed.</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.App.FileDescriptorLimitStatus"
    enum="SimpleCache.FileDescriptorLimitStatus">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The result of trying to get the file descriptor limit.  Emitted each time
    the browser is launched.
  </summary>
</histogram>

<histogram name="SimpleCache.App.GlobalOpenEntryCount">
  <owner>Please list the metric's owners. Add more owner tags as needed.</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.App.HeaderSize" units="bytes">
  <owner>Please list the metric's owners. Add more owner tags as needed.</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.App.HeaderSizeChange"
    enum="SimpleCacheHeaderSizeChange">
  <owner>Please list the metric's owners. Add more owner tags as needed.</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.App.HeaderSizeDecreaseAbsolute" units="bytes">
  <owner>Please list the metric's owners. Add more owner tags as needed.</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.App.HeaderSizeDecreasePercentage" units="percent">
  <owner>Please list the metric's owners. Add more owner tags as needed.</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.App.HeaderSizeIncreaseAbsolute" units="bytes">
  <owner>Please list the metric's owners. Add more owner tags as needed.</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.App.HeaderSizeIncreasePercentage" units="percent">
  <owner>Please list the metric's owners. Add more owner tags as needed.</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.App.IndexCorrupt" enum="BooleanCorrupt">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>For each index load, whether the index file was corrupt.</summary>
</histogram>

<histogram name="SimpleCache.App.IndexCreatedEntryCount">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>The number of entries in a newly created index file.</summary>
</histogram>

<histogram name="SimpleCache.App.IndexEntriesLoaded">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>Number of entries loaded from the index file on start.</summary>
</histogram>

<histogram name="SimpleCache.App.IndexEntriesRestored">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Number of entries restored from disk when there was no index or the index
    was corrupted.
  </summary>
</histogram>

<histogram name="SimpleCache.App.IndexFileStateOnLoad" enum="SimpleIndexState">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The state the index file is at when an attempt is made to load from it.
  </summary>
</histogram>

<histogram name="SimpleCache.App.IndexInitializationWaiters">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    At the time of index initialization, the number of enqueued jobs awaiting
    index initialization.
  </summary>
</histogram>

<histogram name="SimpleCache.App.IndexInitializeMethod"
    enum="SimpleCacheIndexInitializeMethod">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>The method used to initialize the simple cache index.</summary>
</histogram>

<histogram name="SimpleCache.App.IndexLoadTime" units="milliseconds">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Time (as measured on the worker pool) spent loading the index file.
  </summary>
</histogram>

<histogram name="SimpleCache.App.IndexNumEntriesOnWrite">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>The number of entries written to the index on a flush.</summary>
</histogram>

<histogram name="SimpleCache.App.IndexRestoreTime" units="milliseconds">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Time (as measured on the worker pool) spent restoring the index file by
    iterating directory entries.
  </summary>
</histogram>

<histogram name="SimpleCache.App.IndexWriteInterval.Background"
    units="milliseconds">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The interval between index saves, for apps in the background.
  </summary>
</histogram>

<histogram name="SimpleCache.App.IndexWriteInterval.Foreground"
    units="milliseconds">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The interval between index saves, for apps in the foreground.
  </summary>
</histogram>

<histogram name="SimpleCache.App.IndexWriteToDiskTime.Background"
    units="milliseconds">
  <owner>Please list the metric's owners. Add more owner tags as needed.</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.App.IndexWriteToDiskTime.Foreground"
    units="milliseconds">
  <owner>Please list the metric's owners. Add more owner tags as needed.</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.App.KeyMatchedOnOpen" enum="BooleanMatched">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    For each call to OpenEntry, whether the key on disk matched the request key.
  </summary>
</histogram>

<histogram name="SimpleCache.App.LastClusterLossPercent" units="percent">
  <owner>Please list the metric's owners. Add more owner tags as needed.</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.App.LastClusterSize" units="bytes">
  <owner>Please list the metric's owners. Add more owner tags as needed.</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.App.OpenEntryIndexState"
    enum="SimpleCacheOpenEntryIndexState">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    At the time that an entry is opened, the state of that entry in the index.
  </summary>
</histogram>

<histogram name="SimpleCache.App.ReadIsParallelizable"
    enum="SimpleCacheReadParallelizable">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    For each Read operation, whether it could have been issued in parallel of a
    previous Read operation.
  </summary>
</histogram>

<histogram name="SimpleCache.App.ReadResult" enum="SimpleCacheReadResult">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>The outcome of Entry::ReadData in the simple cache.</summary>
</histogram>

<histogram name="SimpleCache.App.SyncCheckEOFHasCrc" enum="BooleanHasCrc">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    For each EOFRecord found with a valid magic number, indicates if the record
    also contains a CRC.
  </summary>
</histogram>

<histogram name="SimpleCache.App.SyncCheckEOFResult"
    enum="SimpleCacheSyncCheckEOFResult">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The result, at the synchronous layer, of checking the EOF record of a cache
    entry.
  </summary>
</histogram>

<histogram name="SimpleCache.App.SyncCloseResult"
    enum="SimpleCacheSyncCloseResult">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The result, at the synchronous layer, of closing a cache entry.
  </summary>
</histogram>

<histogram name="SimpleCache.App.SyncCreatePlatformFileError"
    enum="PlatformFileError">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The platform error reported when attempting to create a new cache entry at
    the synchronous layer.
  </summary>
</histogram>

<histogram name="SimpleCache.App.SyncCreatePlatformFileError_WithIndex"
    enum="PlatformFileError">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The platform error reported when attempting to create a new cache entry at
    the synchronous layer when the index has already initialized.
  </summary>
</histogram>

<histogram name="SimpleCache.App.SyncCreatePlatformFileError_WithoutIndex"
    enum="PlatformFileError">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The platform error reported when attempting to create a new cache entry at
    the synchronous layer when the index has not yet initialized.
  </summary>
</histogram>

<histogram name="SimpleCache.App.SyncCreateResult"
    enum="SimpleCacheSyncCreateResult">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The result, at the synchronous layer, reported when attempting to create a
    new cache entry.
  </summary>
</histogram>

<histogram name="SimpleCache.App.SyncCreateResult_WithIndex"
    enum="SimpleCacheSyncCreateResult">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The result, at the synchronous layer, reported when attempting to create a
    new cache entry when the index has already initialized.
  </summary>
</histogram>

<histogram name="SimpleCache.App.SyncCreateResult_WithoutIndex"
    enum="SimpleCacheSyncCreateResult">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The result, at the synchronous layer, reported when attempting to create a
    new cache entry when the index has not yet initialized.
  </summary>
</histogram>

<histogram name="SimpleCache.App.SyncOpenEntryAge" units="hours">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The age of the entry (time since last modified), when opened at the
    synchronous layer.
  </summary>
</histogram>

<histogram name="SimpleCache.App.SyncOpenPlatformFileError"
    enum="PlatformFileError">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The platform error reported when attempting to create a new cache entry at
    the synchronous layer.
  </summary>
</histogram>

<histogram name="SimpleCache.App.SyncOpenPlatformFileError_WithIndex"
    enum="PlatformFileError">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The platform error reported when attempting to create a new cache entry at
    the synchronous layer when the index has already initialized.
  </summary>
</histogram>

<histogram name="SimpleCache.App.SyncOpenPlatformFileError_WithoutIndex"
    enum="PlatformFileError">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The platform error reported when attempting to create a new cache entry at
    the synchronous layer when the index has not initialized.
  </summary>
</histogram>

<histogram name="SimpleCache.App.SyncOpenResult"
    enum="SimpleCacheSyncOpenResult">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The result, at the synchronous layer, reported when attempting to open a new
    cache entry.
  </summary>
</histogram>

<histogram name="SimpleCache.App.SyncOpenResult_WithIndex"
    enum="SimpleCacheSyncOpenResult">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The result, at the synchronous layer, reported when attempting to open a new
    cache entry when the index has already initialized.
  </summary>
</histogram>

<histogram name="SimpleCache.App.SyncOpenResult_WithoutIndex"
    enum="SimpleCacheSyncOpenResult">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The result, at the synchronous layer, reported when attempting to open a new
    cache entry when the index has not yet initialized.
  </summary>
</histogram>

<histogram name="SimpleCache.App.SyncWriteResult"
    enum="SimpleCacheSyncWriteResult">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The result, at the synchronous layer, of writing to a cache entry.
  </summary>
</histogram>

<histogram name="SimpleCache.App.WriteDependencyType"
    enum="SimpleCacheWriteDependencyType">
  <owner>Please list the metric's owners. Add more owner tags as needed.</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.App.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>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>The outcome of Entry::WriteData in the simple cache.</summary>
</histogram>

<histogram name="SimpleCache.App.WriteResult2" enum="SimpleCacheWriteResult">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>The outcome of Entry::WriteData in the simple cache.</summary>
</histogram>

<histogram name="SimpleCache.CheckCRCResult" enum="CheckCRCResult">
  <obsolete>
    Deprecated 2013-08 in favor of cache type specific version (App or Http).
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</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="milliseconds">
  <obsolete>
    Deprecated 2013-08 in favor of cache type specific version (App or Http).
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</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="milliseconds">
  <obsolete>
    Deprecated 2013-08 in favor of cache type specific version (App or Http).
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The time from the creation of the simple cache backend until the index fails
    to load.
  </summary>
</histogram>

<histogram name="SimpleCache.EntryCreationResult" enum="BooleanSuccess">
  <obsolete>
    Deprecated 2013-08 in favor of cache type specific version (App or Http).
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    For entry creation operations that were sent to the disk, the result of
    creation.
  </summary>
</histogram>

<histogram name="SimpleCache.EntryCreationTime" units="milliseconds">
  <obsolete>
    Deprecated 2013-08 in favor of cache type specific version (App or Http).
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>The time, in ms, spent creating a new entry on disk.</summary>
</histogram>

<histogram name="SimpleCache.EntryOperationsPending">
  <obsolete>
    Deprecated 2013-08 in favor of cache type specific version (App or Http).
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</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-08 in favor of cache type specific version (App or Http).
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>The size of the cache at the beginning of an eviction.</summary>
</histogram>

<histogram name="SimpleCache.Eviction.CacheSizeOnStart2" units="KB">
  <obsolete>
    Deprecated 2013-08 in favor of cache type specific version (App or Http).
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>The size of the cache at the beginning of an eviction.</summary>
</histogram>

<histogram name="SimpleCache.Eviction.EntryCount">
  <obsolete>
    Deprecated 2013-08 in favor of cache type specific version (App or Http).
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>The number of entries to be erased in an eviction.</summary>
</histogram>

<histogram name="SimpleCache.Eviction.MaxCacheSizeOnStart" units="bytes">
  <obsolete>
    Deprecated 2013-08 in favor of cache type specific version (App or Http).
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The maximum allowed size of the cache at the beginning of an eviction.
  </summary>
</histogram>

<histogram name="SimpleCache.Eviction.MaxCacheSizeOnStart2" units="KB">
  <obsolete>
    Deprecated 2013-08 in favor of cache type specific version (App or Http).
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The maximum allowed size of the cache at the beginning of an eviction.
  </summary>
</histogram>

<histogram name="SimpleCache.Eviction.Result" enum="BooleanSuccess">
  <obsolete>
    Deprecated 2013-08 in favor of cache type specific version (App or Http).
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>The result of an eviction.</summary>
</histogram>

<histogram name="SimpleCache.Eviction.SizeOfEvicted" units="bytes">
  <obsolete>
    Deprecated 2013-08 in favor of cache type specific version (App or Http).
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>The number of bytes to be erased in an eviction.</summary>
</histogram>

<histogram name="SimpleCache.Eviction.SizeOfEvicted2" units="KB">
  <obsolete>
    Deprecated 2013-08 in favor of cache type specific version (App or Http).
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>The amount of memory freed in an eviction.</summary>
</histogram>

<histogram name="SimpleCache.Eviction.SizeWhenDone" units="bytes">
  <obsolete>
    Deprecated 2013-08 in favor of cache type specific version (App or Http).
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>The size of the cache after running an eviction.</summary>
</histogram>

<histogram name="SimpleCache.Eviction.SizeWhenDone2" units="KB">
  <obsolete>
    Deprecated 2013-08 in favor of cache type specific version (App or Http).
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>The size of the cache after running an eviction.</summary>
</histogram>

<histogram name="SimpleCache.Eviction.TimeToDone" units="milliseconds">
  <obsolete>
    Deprecated 2013-08 in favor of cache type specific version (App or Http).
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>Time spent completing an eviction.</summary>
</histogram>

<histogram name="SimpleCache.Eviction.TimeToSelectEntries" units="milliseconds">
  <obsolete>
    Deprecated 2013-08 in favor of cache type specific version (App or Http).
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>Time spent selecting entries for eviction.</summary>
</histogram>

<histogram name="SimpleCache.FileDescriptorLimitHard">
  <obsolete>
    Deprecated 2013-08 in favor of cache type specific version (App or Http).
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</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">
  <obsolete>
    Deprecated 2013-08 in favor of cache type specific version (App or Http).
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</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">
  <obsolete>
    Deprecated 2013-08 in favor of cache type specific version (App or Http).
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</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">
  <obsolete>
    Deprecated 2013-08 in favor of cache type specific version (App or Http).
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</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">
  <obsolete>
    Deprecated 2013-08 in favor of cache type specific version (App or Http).
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</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">
  <obsolete>
    Deprecated 2013-08 in favor of cache type specific version (App or Http).
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</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">
  <obsolete>
    Deprecated 2013-08 in favor of cache type specific version (App or Http).
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</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="percent">
  <obsolete>
    Deprecated 2013-08 in favor of cache type specific version (App or Http).
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</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">
  <obsolete>
    Deprecated 2013-08 in favor of cache type specific version (App or Http).
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</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="percent">
  <obsolete>
    Deprecated 2013-08 in favor of cache type specific version (App or Http).
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</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.Http.CheckCRCResult" enum="CheckCRCResult">
  <owner>Please list the metric's owners. Add more owner tags as needed.</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.Http.CreationToIndex" units="milliseconds">
  <owner>Please list the metric's owners. Add more owner tags as needed.</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.Http.CreationToIndexFail" units="milliseconds">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The time from the creation of the simple cache backend until the index fails
    to load.
  </summary>
</histogram>

<histogram name="SimpleCache.Http.EntryCreatedAndStream2Omitted"
    enum="SimpleCache.EntryCreatedAndStream2Omitted">
  <owner>Please list the metric's owners. Add more owner tags as needed.</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.Http.EntryCreationResult" enum="BooleanSuccess">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    For entry creation operations that were sent to the disk, the result of
    creation.
  </summary>
</histogram>

<histogram name="SimpleCache.Http.EntryCreationTime" units="milliseconds">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>The time, in ms, spent creating a new entry on disk.</summary>
</histogram>

<histogram name="SimpleCache.Http.EntryOpenedAndStream2Removed"
    enum="SimpleCache.EntryOpenedAndStream2Removed">
  <owner>Please list the metric's owners. Add more owner tags as needed.</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.Http.EntryOperationsPending">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    At the time that operations are run, the number of pending operations on a
    particular entry.
  </summary>
</histogram>

<histogram name="SimpleCache.Http.Eviction.CacheSizeOnStart" units="bytes">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>The size of the cache at the beginning of an eviction.</summary>
</histogram>

<histogram name="SimpleCache.Http.Eviction.CacheSizeOnStart2" units="KB">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>The size of the cache at the beginning of an eviction.</summary>
</histogram>

<histogram name="SimpleCache.Http.Eviction.EntryCount">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>The number of entries to be erased in an eviction.</summary>
</histogram>

<histogram name="SimpleCache.Http.Eviction.MaxCacheSizeOnStart" units="bytes">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The maximum allowed size of the cache at the beginning of an eviction.
  </summary>
</histogram>

<histogram name="SimpleCache.Http.Eviction.MaxCacheSizeOnStart2" units="KB">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The maximum allowed size of the cache at the beginning of an eviction.
  </summary>
</histogram>

<histogram name="SimpleCache.Http.Eviction.Result" enum="BooleanSuccess">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>The result of an eviction.</summary>
</histogram>

<histogram name="SimpleCache.Http.Eviction.SizeOfEvicted" units="bytes">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>The number of bytes to be erased in an eviction.</summary>
</histogram>

<histogram name="SimpleCache.Http.Eviction.SizeOfEvicted2" units="KB">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>The amount of memory freed in an eviction.</summary>
</histogram>

<histogram name="SimpleCache.Http.Eviction.SizeWhenDone" units="bytes">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>The size of the cache after running an eviction.</summary>
</histogram>

<histogram name="SimpleCache.Http.Eviction.SizeWhenDone2" units="KB">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>The size of the cache after running an eviction.</summary>
</histogram>

<histogram name="SimpleCache.Http.Eviction.TimeToDone" units="milliseconds">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>Time spent completing an eviction.</summary>
</histogram>

<histogram name="SimpleCache.Http.Eviction.TimeToSelectEntries"
    units="milliseconds">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>Time spent selecting entries for eviction.</summary>
</histogram>

<histogram name="SimpleCache.Http.FileDescriptorLimitHard">
  <owner>Please list the metric's owners. Add more owner tags as needed.</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.Http.FileDescriptorLimitSoft">
  <owner>Please list the metric's owners. Add more owner tags as needed.</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.Http.FileDescriptorLimitStatus"
    enum="SimpleCache.FileDescriptorLimitStatus">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The result of trying to get the file descriptor limit.  Emitted each time
    the browser is launched.
  </summary>
</histogram>

<histogram name="SimpleCache.Http.GlobalOpenEntryCount">
  <owner>Please list the metric's owners. Add more owner tags as needed.</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.Http.HeaderSize" units="bytes">
  <owner>Please list the metric's owners. Add more owner tags as needed.</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.Http.HeaderSizeChange"
    enum="SimpleCacheHeaderSizeChange">
  <owner>Please list the metric's owners. Add more owner tags as needed.</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.Http.HeaderSizeDecreaseAbsolute" units="bytes">
  <owner>Please list the metric's owners. Add more owner tags as needed.</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.Http.HeaderSizeDecreasePercentage" units="percent">
  <owner>Please list the metric's owners. Add more owner tags as needed.</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.Http.HeaderSizeIncreaseAbsolute" units="bytes">
  <owner>Please list the metric's owners. Add more owner tags as needed.</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.Http.HeaderSizeIncreasePercentage" units="percent">
  <owner>Please list the metric's owners. Add more owner tags as needed.</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.Http.IndexCorrupt" enum="BooleanCorrupt">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>For each index load, whether the index file was corrupt.</summary>
</histogram>

<histogram name="SimpleCache.Http.IndexCreatedEntryCount">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>The number of entries in a newly created index file.</summary>
</histogram>

<histogram name="SimpleCache.Http.IndexEntriesLoaded">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>Number of entries loaded from the index file on start.</summary>
</histogram>

<histogram name="SimpleCache.Http.IndexEntriesRestored">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Number of entries restored from disk when there was no index or the index
    was corrupted.
  </summary>
</histogram>

<histogram name="SimpleCache.Http.IndexFileStateOnLoad" enum="SimpleIndexState">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The state the index file is at when an attempt is made to load from it.
  </summary>
</histogram>

<histogram name="SimpleCache.Http.IndexInitializationWaiters">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    At the time of index initialization, the number of enqueued jobs awaiting
    index initialization.
  </summary>
</histogram>

<histogram name="SimpleCache.Http.IndexInitializeMethod"
    enum="SimpleCacheIndexInitializeMethod">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>The method used to initialize the simple cache index.</summary>
</histogram>

<histogram name="SimpleCache.Http.IndexLoadTime" units="milliseconds">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Time (as measured on the worker pool) spent loading the index file.
  </summary>
</histogram>

<histogram name="SimpleCache.Http.IndexNumEntriesOnWrite">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>The number of entries written to the index on a flush.</summary>
</histogram>

<histogram name="SimpleCache.Http.IndexRestoreTime" units="milliseconds">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Time (as measured on the worker pool) spent restoring the index file by
    iterating directory entries.
  </summary>
</histogram>

<histogram name="SimpleCache.Http.IndexWriteInterval.Background"
    units="milliseconds">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The interval between index saves, for apps in the background.
  </summary>
</histogram>

<histogram name="SimpleCache.Http.IndexWriteInterval.Foreground"
    units="milliseconds">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The interval between index saves, for apps in the foreground.
  </summary>
</histogram>

<histogram name="SimpleCache.Http.IndexWriteToDiskTime.Background"
    units="milliseconds">
  <owner>Please list the metric's owners. Add more owner tags as needed.</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.Http.IndexWriteToDiskTime.Foreground"
    units="milliseconds">
  <owner>Please list the metric's owners. Add more owner tags as needed.</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.Http.KeyMatchedOnOpen" enum="BooleanMatched">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    For each call to OpenEntry, whether the key on disk matched the request key.
  </summary>
</histogram>

<histogram name="SimpleCache.Http.LastClusterLossPercent" units="percent">
  <owner>Please list the metric's owners. Add more owner tags as needed.</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.Http.LastClusterSize" units="bytes">
  <owner>Please list the metric's owners. Add more owner tags as needed.</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.Http.OpenEntryIndexState"
    enum="SimpleCacheOpenEntryIndexState">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    At the time that an entry is opened, the state of that entry in the index.
  </summary>
</histogram>

<histogram name="SimpleCache.Http.ReadIsParallelizable"
    enum="SimpleCacheReadParallelizable">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    For each Read operation, whether it could have been issued in parallel of a
    previous Read operation.
  </summary>
</histogram>

<histogram name="SimpleCache.Http.ReadResult" enum="SimpleCacheReadResult">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>The outcome of Entry::ReadData in the simple cache.</summary>
</histogram>

<histogram name="SimpleCache.Http.SyncCheckEOFHasCrc" enum="BooleanHasCrc">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    For each EOFRecord found with a valid magic number, indicates if the record
    also contains a CRC.
  </summary>
</histogram>

<histogram name="SimpleCache.Http.SyncCheckEOFResult"
    enum="SimpleCacheSyncCheckEOFResult">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The result, at the synchronous layer, of checking the EOF record of a cache
    entry.
  </summary>
</histogram>

<histogram name="SimpleCache.Http.SyncCloseResult"
    enum="SimpleCacheSyncCloseResult">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The result, at the synchronous layer, of closing a cache entry.
  </summary>
</histogram>

<histogram name="SimpleCache.Http.SyncCreatePlatformFileError"
    enum="PlatformFileError">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The platform error reported when attempting to create a new cache entry at
    the synchronous layer.
  </summary>
</histogram>

<histogram name="SimpleCache.Http.SyncCreatePlatformFileError_WithIndex"
    enum="PlatformFileError">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The platform error reported when attempting to create a new cache entry at
    the synchronous layer when the index has already initialized.
  </summary>
</histogram>

<histogram name="SimpleCache.Http.SyncCreatePlatformFileError_WithoutIndex"
    enum="PlatformFileError">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The platform error reported when attempting to create a new cache entry at
    the synchronous layer when the index has not yet initialized.
  </summary>
</histogram>

<histogram name="SimpleCache.Http.SyncCreateResult"
    enum="SimpleCacheSyncCreateResult">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The result, at the synchronous layer, reported when attempting to create a
    new cache entry.
  </summary>
</histogram>

<histogram name="SimpleCache.Http.SyncCreateResult_WithIndex"
    enum="SimpleCacheSyncCreateResult">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The result, at the synchronous layer, reported when attempting to create a
    new cache entry when the index has already initialized.
  </summary>
</histogram>

<histogram name="SimpleCache.Http.SyncCreateResult_WithoutIndex"
    enum="SimpleCacheSyncCreateResult">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The result, at the synchronous layer, reported when attempting to create a
    new cache entry when the index has not yet initialized.
  </summary>
</histogram>

<histogram name="SimpleCache.Http.SyncOpenEntryAge" units="hours">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The age of the entry (time since last modified), when opened at the
    synchronous layer.
  </summary>
</histogram>

<histogram name="SimpleCache.Http.SyncOpenPlatformFileError"
    enum="PlatformFileError">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The platform error reported when attempting to create a new cache entry at
    the synchronous layer.
  </summary>
</histogram>

<histogram name="SimpleCache.Http.SyncOpenPlatformFileError_WithIndex"
    enum="PlatformFileError">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The platform error reported when attempting to create a new cache entry at
    the synchronous layer when the index has already initialized.
  </summary>
</histogram>

<histogram name="SimpleCache.Http.SyncOpenPlatformFileError_WithoutIndex"
    enum="PlatformFileError">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The platform error reported when attempting to create a new cache entry at
    the synchronous layer when the index has not initialized.
  </summary>
</histogram>

<histogram name="SimpleCache.Http.SyncOpenResult"
    enum="SimpleCacheSyncOpenResult">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The result, at the synchronous layer, reported when attempting to open a new
    cache entry.
  </summary>
</histogram>

<histogram name="SimpleCache.Http.SyncOpenResult_WithIndex"
    enum="SimpleCacheSyncOpenResult">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The result, at the synchronous layer, reported when attempting to open a new
    cache entry when the index has already initialized.
  </summary>
</histogram>

<histogram name="SimpleCache.Http.SyncOpenResult_WithoutIndex"
    enum="SimpleCacheSyncOpenResult">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The result, at the synchronous layer, reported when attempting to open a new
    cache entry when the index has not yet initialized.
  </summary>
</histogram>

<histogram name="SimpleCache.Http.SyncWriteResult"
    enum="SimpleCacheSyncWriteResult">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The result, at the synchronous layer, of writing to a cache entry.
  </summary>
</histogram>

<histogram name="SimpleCache.Http.WriteDependencyType"
    enum="SimpleCacheWriteDependencyType">
  <owner>Please list the metric's owners. Add more owner tags as needed.</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.Http.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>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>The outcome of Entry::WriteData in the simple cache.</summary>
</histogram>

<histogram name="SimpleCache.Http.WriteResult2" enum="SimpleCacheWriteResult">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>The outcome of Entry::WriteData in the simple cache.</summary>
</histogram>

<histogram name="SimpleCache.IndexCorrupt" enum="BooleanCorrupt">
  <obsolete>
    Deprecated 2013-08 in favor of cache type specific version (App or Http).
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>For each index load, whether the index file was corrupt.</summary>
</histogram>

<histogram name="SimpleCache.IndexCreatedEntryCount">
  <obsolete>
    Deprecated 2013-08 in favor of cache type specific version (App or Http).
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>The number of entries in a newly created index file.</summary>
</histogram>

<histogram name="SimpleCache.IndexEntriesLoaded">
  <obsolete>
    Deprecated 2013-08 in favor of cache type specific version (App or Http).
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>Number of entries loaded from the index file on start.</summary>
</histogram>

<histogram name="SimpleCache.IndexEntriesRestored">
  <obsolete>
    Deprecated 2013-08 in favor of cache type specific version (App or Http).
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</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">
  <obsolete>
    Deprecated 2013-08 in favor of cache type specific version (App or Http).
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The state the index file is at when an attempt is made to load from it.
  </summary>
</histogram>

<histogram name="SimpleCache.IndexInitializationWaiters">
  <obsolete>
    Deprecated 2013-08 in favor of cache type specific version (App or Http).
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    At the time of index initialization, the number of enqueued jobs awaiting
    index initialization.
  </summary>
</histogram>

<histogram name="SimpleCache.IndexInitializeMethod"
    enum="SimpleCacheIndexInitializeMethod">
  <obsolete>
    Deprecated 2013-08 in favor of cache type specific version (App or Http).
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>The method used to initialize the simple cache index.</summary>
</histogram>

<histogram name="SimpleCache.IndexLoadTime" units="milliseconds">
  <obsolete>
    Deprecated 2013-08 in favor of cache type specific version (App or Http).
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Time (as measured on the worker pool) spent loading the index file.
  </summary>
</histogram>

<histogram name="SimpleCache.IndexNumEntriesOnWrite">
  <obsolete>
    Deprecated 2013-08 in favor of cache type specific version (App or Http).
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>The number of entries written to the index on a flush.</summary>
</histogram>

<histogram name="SimpleCache.IndexRestoreTime" units="milliseconds">
  <obsolete>
    Deprecated 2013-08 in favor of cache type specific version (App or Http).
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</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>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>For each index load, whether the index file was stale.</summary>
</histogram>

<histogram name="SimpleCache.IndexWriteInterval.Background"
    units="milliseconds">
  <obsolete>
    Deprecated 2013-08 in favor of cache type specific version (App or Http).
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The interval between index saves, for apps in the background.
  </summary>
</histogram>

<histogram name="SimpleCache.IndexWriteInterval.Foreground"
    units="milliseconds">
  <obsolete>
    Deprecated 2013-08 in favor of cache type specific version (App or Http).
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The interval between index saves, for apps in the foreground.
  </summary>
</histogram>

<histogram name="SimpleCache.IndexWriteToDiskTime" units="milliseconds">
  <obsolete>
    Deprecated 2013-05 in favour of
    SimpleCache.SimpleIndexWriteToDiskTime.Background and
    SimpleCache.SimpleIndexWriteToDiskTime.Foreground.
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</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="milliseconds">
  <obsolete>
    Deprecated 2013-08 in favor of cache type specific version (App or Http).
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</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="milliseconds">
  <obsolete>
    Deprecated 2013-08 in favor of cache type specific version (App or Http).
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</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">
  <obsolete>
    Deprecated 2013-08 in favor of cache type specific version (App or Http).
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    For each call to OpenEntry, whether the key on disk matched the request key.
  </summary>
</histogram>

<histogram name="SimpleCache.LastClusterLossPercent" units="percent">
  <obsolete>
    Deprecated 2013-08 in favor of cache type specific version (App or Http).
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</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">
  <obsolete>
    Deprecated 2013-08 in favor of cache type specific version (App or Http).
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</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.Media.CheckCRCResult" enum="CheckCRCResult">
  <owner>Please list the metric's owners. Add more owner tags as needed.</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.Media.CreationToIndex" units="milliseconds">
  <owner>Please list the metric's owners. Add more owner tags as needed.</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.Media.CreationToIndexFail" units="milliseconds">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The time from the creation of the simple cache backend until the index fails
    to load.
  </summary>
</histogram>

<histogram name="SimpleCache.Media.EntryCreatedAndStream2Omitted"
    enum="SimpleCache.EntryCreatedAndStream2Omitted">
  <owner>Please list the metric's owners. Add more owner tags as needed.</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.Media.EntryCreationResult" enum="BooleanSuccess">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    For entry creation operations that were sent to the disk, the result of
    creation.
  </summary>
</histogram>

<histogram name="SimpleCache.Media.EntryCreationTime" units="milliseconds">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>The time, in ms, spent creating a new entry on disk.</summary>
</histogram>

<histogram name="SimpleCache.Media.EntryOpenedAndStream2Removed"
    enum="SimpleCache.EntryOpenedAndStream2Removed">
  <owner>Please list the metric's owners. Add more owner tags as needed.</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.Media.EntryOperationsPending">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    At the time that operations are run, the number of pending operations on a
    particular entry.
  </summary>
</histogram>

<histogram name="SimpleCache.Media.Eviction.CacheSizeOnStart" units="bytes">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>The size of the cache at the beginning of an eviction.</summary>
</histogram>

<histogram name="SimpleCache.Media.Eviction.CacheSizeOnStart2" units="KB">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>The size of the cache at the beginning of an eviction.</summary>
</histogram>

<histogram name="SimpleCache.Media.Eviction.EntryCount">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>The number of entries to be erased in an eviction.</summary>
</histogram>

<histogram name="SimpleCache.Media.Eviction.MaxCacheSizeOnStart" units="bytes">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The maximum allowed size of the cache at the beginning of an eviction.
  </summary>
</histogram>

<histogram name="SimpleCache.Media.Eviction.MaxCacheSizeOnStart2" units="KB">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The maximum allowed size of the cache at the beginning of an eviction.
  </summary>
</histogram>

<histogram name="SimpleCache.Media.Eviction.Result" enum="BooleanSuccess">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>The result of an eviction.</summary>
</histogram>

<histogram name="SimpleCache.Media.Eviction.SizeOfEvicted" units="bytes">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>The number of bytes to be erased in an eviction.</summary>
</histogram>

<histogram name="SimpleCache.Media.Eviction.SizeOfEvicted2" units="KB">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>The amount of memory freed in an eviction.</summary>
</histogram>

<histogram name="SimpleCache.Media.Eviction.SizeWhenDone" units="bytes">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>The size of the cache after running an eviction.</summary>
</histogram>

<histogram name="SimpleCache.Media.Eviction.SizeWhenDone2" units="KB">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>The size of the cache after running an eviction.</summary>
</histogram>

<histogram name="SimpleCache.Media.Eviction.TimeToDone" units="milliseconds">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>Time spent completing an eviction.</summary>
</histogram>

<histogram name="SimpleCache.Media.Eviction.TimeToSelectEntries"
    units="milliseconds">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>Time spent selecting entries for eviction.</summary>
</histogram>

<histogram name="SimpleCache.Media.FileDescriptorLimitHard">
  <owner>Please list the metric's owners. Add more owner tags as needed.</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.Media.FileDescriptorLimitSoft">
  <owner>Please list the metric's owners. Add more owner tags as needed.</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.Media.FileDescriptorLimitStatus"
    enum="SimpleCache.FileDescriptorLimitStatus">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The result of trying to get the file descriptor limit.  Emitted each time
    the browser is launched.
  </summary>
</histogram>

<histogram name="SimpleCache.Media.GlobalOpenEntryCount">
  <owner>Please list the metric's owners. Add more owner tags as needed.</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.Media.HeaderSize" units="bytes">
  <owner>Please list the metric's owners. Add more owner tags as needed.</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.Media.HeaderSizeChange"
    enum="SimpleCacheHeaderSizeChange">
  <owner>Please list the metric's owners. Add more owner tags as needed.</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.Media.HeaderSizeDecreaseAbsolute" units="bytes">
  <owner>Please list the metric's owners. Add more owner tags as needed.</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.Media.HeaderSizeDecreasePercentage"
    units="percent">
  <owner>Please list the metric's owners. Add more owner tags as needed.</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.Media.HeaderSizeIncreaseAbsolute" units="bytes">
  <owner>Please list the metric's owners. Add more owner tags as needed.</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.Media.HeaderSizeIncreasePercentage"
    units="percent">
  <owner>Please list the metric's owners. Add more owner tags as needed.</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.Media.IndexCorrupt" enum="BooleanCorrupt">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>For each index load, whether the index file was corrupt.</summary>
</histogram>

<histogram name="SimpleCache.Media.IndexCreatedEntryCount">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>The number of entries in a newly created index file.</summary>
</histogram>

<histogram name="SimpleCache.Media.IndexEntriesLoaded">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>Number of entries loaded from the index file on start.</summary>
</histogram>

<histogram name="SimpleCache.Media.IndexEntriesRestored">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Number of entries restored from disk when there was no index or the index
    was corrupted.
  </summary>
</histogram>

<histogram name="SimpleCache.Media.IndexFileStateOnLoad"
    enum="SimpleIndexState">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The state the index file is at when an attempt is made to load from it.
  </summary>
</histogram>

<histogram name="SimpleCache.Media.IndexInitializationWaiters">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    At the time of index initialization, the number of enqueued jobs awaiting
    index initialization.
  </summary>
</histogram>

<histogram name="SimpleCache.Media.IndexInitializeMethod"
    enum="SimpleCacheIndexInitializeMethod">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>The method used to initialize the simple cache index.</summary>
</histogram>

<histogram name="SimpleCache.Media.IndexLoadTime" units="milliseconds">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Time (as measured on the worker pool) spent loading the index file.
  </summary>
</histogram>

<histogram name="SimpleCache.Media.IndexNumEntriesOnWrite">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>The number of entries written to the index on a flush.</summary>
</histogram>

<histogram name="SimpleCache.Media.IndexRestoreTime" units="milliseconds">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Time (as measured on the worker pool) spent restoring the index file by
    iterating directory entries.
  </summary>
</histogram>

<histogram name="SimpleCache.Media.IndexWriteInterval.Background"
    units="milliseconds">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The interval between index saves, for apps in the background.
  </summary>
</histogram>

<histogram name="SimpleCache.Media.IndexWriteInterval.Foreground"
    units="milliseconds">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The interval between index saves, for apps in the foreground.
  </summary>
</histogram>

<histogram name="SimpleCache.Media.IndexWriteToDiskTime.Background"
    units="milliseconds">
  <owner>Please list the metric's owners. Add more owner tags as needed.</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.Media.IndexWriteToDiskTime.Foreground"
    units="milliseconds">
  <owner>Please list the metric's owners. Add more owner tags as needed.</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.Media.KeyMatchedOnOpen" enum="BooleanMatched">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    For each call to OpenEntry, whether the key on disk matched the request key.
  </summary>
</histogram>

<histogram name="SimpleCache.Media.LastClusterLossPercent" units="percent">
  <owner>Please list the metric's owners. Add more owner tags as needed.</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.Media.LastClusterSize" units="bytes">
  <owner>Please list the metric's owners. Add more owner tags as needed.</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.Media.OpenEntryIndexState"
    enum="SimpleCacheOpenEntryIndexState">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    At the time that an entry is opened, the state of that entry in the index.
  </summary>
</histogram>

<histogram name="SimpleCache.Media.ReadIsParallelizable"
    enum="SimpleCacheReadParallelizable">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    For each Read operation, whether it could have been issued in parallel of a
    previous Read operation.
  </summary>
</histogram>

<histogram name="SimpleCache.Media.ReadResult" enum="SimpleCacheReadResult">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>The outcome of Entry::ReadData in the simple cache.</summary>
</histogram>

<histogram name="SimpleCache.Media.SyncCheckEOFHasCrc" enum="BooleanHasCrc">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    For each EOFRecord found with a valid magic number, indicates if the record
    also contains a CRC.
  </summary>
</histogram>

<histogram name="SimpleCache.Media.SyncCheckEOFResult"
    enum="SimpleCacheSyncCheckEOFResult">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The result, at the synchronous layer, of checking the EOF record of a cache
    entry.
  </summary>
</histogram>

<histogram name="SimpleCache.Media.SyncCloseResult"
    enum="SimpleCacheSyncCloseResult">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The result, at the synchronous layer, of closing a cache entry.
  </summary>
</histogram>

<histogram name="SimpleCache.Media.SyncCreatePlatformFileError"
    enum="PlatformFileError">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The platform error reported when attempting to create a new cache entry at
    the synchronous layer.
  </summary>
</histogram>

<histogram name="SimpleCache.Media.SyncCreatePlatformFileError_WithIndex"
    enum="PlatformFileError">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The platform error reported when attempting to create a new cache entry at
    the synchronous layer when the index has already initialized.
  </summary>
</histogram>

<histogram name="SimpleCache.Media.SyncCreatePlatformFileError_WithoutIndex"
    enum="PlatformFileError">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The platform error reported when attempting to create a new cache entry at
    the synchronous layer when the index has not yet initialized.
  </summary>
</histogram>

<histogram name="SimpleCache.Media.SyncCreateResult"
    enum="SimpleCacheSyncCreateResult">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The result, at the synchronous layer, reported when attempting to create a
    new cache entry.
  </summary>
</histogram>

<histogram name="SimpleCache.Media.SyncCreateResult_WithIndex"
    enum="SimpleCacheSyncCreateResult">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The result, at the synchronous layer, reported when attempting to create a
    new cache entry when the index has already initialized.
  </summary>
</histogram>

<histogram name="SimpleCache.Media.SyncCreateResult_WithoutIndex"
    enum="SimpleCacheSyncCreateResult">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The result, at the synchronous layer, reported when attempting to create a
    new cache entry when the index has not yet initialized.
  </summary>
</histogram>

<histogram name="SimpleCache.Media.SyncOpenEntryAge" units="hours">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The age of the entry (time since last modified), when opened at the
    synchronous layer.
  </summary>
</histogram>

<histogram name="SimpleCache.Media.SyncOpenPlatformFileError"
    enum="PlatformFileError">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The platform error reported when attempting to create a new cache entry at
    the synchronous layer.
  </summary>
</histogram>

<histogram name="SimpleCache.Media.SyncOpenPlatformFileError_WithIndex"
    enum="PlatformFileError">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The platform error reported when attempting to create a new cache entry at
    the synchronous layer when the index has already initialized.
  </summary>
</histogram>

<histogram name="SimpleCache.Media.SyncOpenPlatformFileError_WithoutIndex"
    enum="PlatformFileError">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The platform error reported when attempting to create a new cache entry at
    the synchronous layer when the index has not initialized.
  </summary>
</histogram>

<histogram name="SimpleCache.Media.SyncOpenResult"
    enum="SimpleCacheSyncOpenResult">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The result, at the synchronous layer, reported when attempting to open a new
    cache entry.
  </summary>
</histogram>

<histogram name="SimpleCache.Media.SyncOpenResult_WithIndex"
    enum="SimpleCacheSyncOpenResult">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The result, at the synchronous layer, reported when attempting to open a new
    cache entry when the index has already initialized.
  </summary>
</histogram>

<histogram name="SimpleCache.Media.SyncOpenResult_WithoutIndex"
    enum="SimpleCacheSyncOpenResult">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The result, at the synchronous layer, reported when attempting to open a new
    cache entry when the index has not yet initialized.
  </summary>
</histogram>

<histogram name="SimpleCache.Media.SyncWriteResult"
    enum="SimpleCacheSyncWriteResult">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The result, at the synchronous layer, of writing to a cache entry.
  </summary>
</histogram>

<histogram name="SimpleCache.Media.WriteDependencyType"
    enum="SimpleCacheWriteDependencyType">
  <owner>Please list the metric's owners. Add more owner tags as needed.</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.Media.WriteResult2" enum="SimpleCacheWriteResult">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>The outcome of Entry::WriteData in the simple cache.</summary>
</histogram>

<histogram name="SimpleCache.OpenEntryIndexState"
    enum="SimpleCacheOpenEntryIndexState">
  <obsolete>
    Deprecated 2013-08 in favor of cache type specific version (App or Http).
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</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">
  <obsolete>
    Deprecated 2013-08 in favor of cache type specific version (App or Http).
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</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">
  <obsolete>
    Deprecated 2013-08 in favor of cache type specific version (App or Http).
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>The outcome of Entry::ReadData in the simple cache.</summary>
</histogram>

<histogram name="SimpleCache.SyncCheckEOFHasCrc" enum="BooleanHasCrc">
  <obsolete>
    Deprecated 2013-08 in favor of cache type specific version (App or Http).
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</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">
  <obsolete>
    Deprecated 2013-08 in favor of cache type specific version (App or Http).
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</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">
  <obsolete>
    Deprecated 2013-08 in favor of cache type specific version (App or Http).
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The result, at the synchronous layer, of closing a cache entry.
  </summary>
</histogram>

<histogram name="SimpleCache.SyncCreatePlatformFileError"
    enum="PlatformFileError">
  <obsolete>
    Deprecated 2013-08 in favor of cache type specific version (App or Http).
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The platform error reported when attempting to create a new cache entry at
    the synchronous layer.
  </summary>
</histogram>

<histogram name="SimpleCache.SyncCreatePlatformFileError_WithIndex"
    enum="PlatformFileError">
  <obsolete>
    Deprecated 2013-08 in favor of cache type specific version (App or Http).
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The platform error reported when attempting to create a new cache entry at
    the synchronous layer when the index has already initialized.
  </summary>
</histogram>

<histogram name="SimpleCache.SyncCreatePlatformFileError_WithoutIndex"
    enum="PlatformFileError">
  <obsolete>
    Deprecated 2013-08 in favor of cache type specific version (App or Http).
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The platform error reported when attempting to create a new cache entry at
    the synchronous layer when the index has not yet initialized.
  </summary>
</histogram>

<histogram name="SimpleCache.SyncCreateResult"
    enum="SimpleCacheSyncCreateResult">
  <obsolete>
    Deprecated 2013-08 in favor of cache type specific version (App or Http).
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The result, at the synchronous layer, reported when attempting to create a
    new cache entry.
  </summary>
</histogram>

<histogram name="SimpleCache.SyncCreateResult_WithIndex"
    enum="SimpleCacheSyncCreateResult">
  <obsolete>
    Deprecated 2013-08 in favor of cache type specific version (App or Http).
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The result, at the synchronous layer, reported when attempting to create a
    new cache entry when the index has already initialized.
  </summary>
</histogram>

<histogram name="SimpleCache.SyncCreateResult_WithoutIndex"
    enum="SimpleCacheSyncCreateResult">
  <obsolete>
    Deprecated 2013-08 in favor of cache type specific version (App or Http).
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The result, at the synchronous layer, reported when attempting to create a
    new cache entry when the index has not yet initialized.
  </summary>
</histogram>

<histogram name="SimpleCache.SyncOpenEntryAge" units="hours">
  <obsolete>
    Deprecated 2013-08 in favor of cache type specific version (App or Http).
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</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">
  <obsolete>
    Deprecated 2013-08 in favor of cache type specific version (App or Http).
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The platform error reported when attempting to create a new cache entry at
    the synchronous layer.
  </summary>
</histogram>

<histogram name="SimpleCache.SyncOpenPlatformFileError_WithIndex"
    enum="PlatformFileError">
  <obsolete>
    Deprecated 2013-08 in favor of cache type specific version (App or Http).
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The platform error reported when attempting to create a new cache entry at
    the synchronous layer when the index has already initialized.
  </summary>
</histogram>

<histogram name="SimpleCache.SyncOpenPlatformFileError_WithoutIndex"
    enum="PlatformFileError">
  <obsolete>
    Deprecated 2013-08 in favor of cache type specific version (App or Http).
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The platform error reported when attempting to create a new cache entry at
    the synchronous layer when the index has not initialized.
  </summary>
</histogram>

<histogram name="SimpleCache.SyncOpenResult" enum="SimpleCacheSyncOpenResult">
  <obsolete>
    Deprecated 2013-08 in favor of cache type specific version (App or Http).
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The result, at the synchronous layer, reported when attempting to open a new
    cache entry.
  </summary>
</histogram>

<histogram name="SimpleCache.SyncOpenResult_WithIndex"
    enum="SimpleCacheSyncOpenResult">
  <obsolete>
    Deprecated 2013-08 in favor of cache type specific version (App or Http).
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The result, at the synchronous layer, reported when attempting to open a new
    cache entry when the index has already initialized.
  </summary>
</histogram>

<histogram name="SimpleCache.SyncOpenResult_WithoutIndex"
    enum="SimpleCacheSyncOpenResult">
  <obsolete>
    Deprecated 2013-08 in favor of cache type specific version (App or Http).
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The result, at the synchronous layer, reported when attempting to open a new
    cache entry when the index has not yet initialized.
  </summary>
</histogram>

<histogram name="SimpleCache.SyncWriteResult" enum="SimpleCacheSyncWriteResult">
  <obsolete>
    Deprecated 2013-08 in favor of cache type specific version (App or Http).
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The result, at the synchronous layer, of writing to a cache entry.
  </summary>
</histogram>

<histogram name="SimpleCache.WriteDependencyType"
    enum="SimpleCacheWriteDependencyType">
  <obsolete>
    Deprecated 2013-08 in favor of cache type specific version (App or Http).
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</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>
    Deprecated 2013-08 in favor of cache type specific version (App or Http).
  </obsolete>
  <owner>Please list the metric's owners. Add more owner tags as needed.</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.ResponseCode"
    enum="HttpResponseCode">
  <owner>alemate@chromium.org</owner>
  <summary>Http response codes in IP-based SimpleGeolocation.</summary>
</histogram>

<histogram name="SimpleGeolocation.Request.ResponseFailureTime"
    units="milliseconds">
  <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="milliseconds">
  <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="SiteIsolation.AllResponses">
  <owner>Please list the metric's owners. Add more owner tags as needed.</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>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The count of all current BrowsingInstances.  Recorded once per UMA ping.
  </summary>
</histogram>

<histogram name="SiteIsolation.CurrentRendererProcessCount">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    The count of all renderer processes, including WebUI and extensions.
    Recorded once per UMA ping.
  </summary>
</histogram>

<histogram name="SiteIsolation.IsolateAllSitesProcessCountEstimate">
  <owner>Please list the metric's owners. Add more owner tags as needed.</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>Please list the metric's owners. Add more owner tags as needed.</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>Please list the metric's owners. Add more owner tags as needed.</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>Please list the metric's owners. Add more owner tags as needed.</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.IsolateHttpsSitesProcessCountEstimate">
  <owner>Please list the metric's owners. Add more owner tags as needed.</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>Please list the metric's owners. Add more owner tags as needed.</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>Please list the metric's owners. Add more owner tags as needed.</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>Please list the metric's owners. Add more owner tags as needed.</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.XSD.DataLength" units="byte">
  <owner>Please list the metric's owners. Add more owner tags as needed.</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>Please list the metric's owners. Add more owner tags as needed.</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>Please list the metric's owners. Add more owner tags as needed.</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="SiteIsolationResourceType">
  <owner>Please list the metric's owners. Add more owner tags as needed.</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.NoSniffBlocked.NonRenderableStatusCode">
  <owner>Please list the metric's owners. Add more owner tags as needed.</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="SiteIsolationResourceType">
  <owner>Please list the metric's owners. Add more owner tags as needed.</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.NotBlocked">
  <owner>Please list the metric's owners. Add more owner tags as needed.</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>Please list the metric's owners. Add more owner tags as needed.</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>Please list the metric's owners. Add more owner tags as needed.</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>Please list the metric's owners. Add more owner tags as needed.</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="SiteIsolationResourceType">
  <owner>Please list the metric's owners. Add more owner tags as needed.</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.NoSniffBlocked.NonRenderableStatusCode">
  <owner>Please list the metric's owners. Add more owner tags as needed.</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="SiteIsolationResourceType">
  <owner>Please list the metric's owners. Add more owner tags as needed.</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.NotBlocked">
  <owner>Please list the metric's owners. Add more owner tags as needed.</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>Please list the metric's owners. Add more owner tags as needed.</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>Please list the metric's owners. Add more owner tags as needed.</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>Please list the metric's owners. Add more owner tags as needed.</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>Please list the metric's owners. Add more owner tags as needed.</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="SiteIsolationResourceType">
  <owner>Please list the metric's owners. Add more owner tags as needed.</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.JSON.Blocked">
  <owner>Please list the metric's owners. Add more owner tags as needed.</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>Please list the metric's owners. Add more owner tags as needed.</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="SiteIsolationResourceType">
  <owner>Please list the metric's owners. Add more owner tags as needed.</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.NoSniffBlocked.NonRenderableStatusCode">
  <owner>Please list the metric's owners. Add more owner tags as needed.</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="SiteIsolationResourceType">
  <owner>Please list the metric's owners. Add more owner tags as needed.</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.NotBlocked">
  <owner>Please list the metric's owners. Add more owner tags as needed.</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>Please list the metric's owners. Add more owner tags as needed.</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>Please list the metric's owners. Add more owner tags as needed.</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>Please list the metric's owners. Add more owner tags as needed.</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="SiteIsolationResourceType">
  <owner>Please list the metric's owners. Add more owner tags as needed.</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.XML.Blocked">
  <owner>Please list the metric's owners. Add more owner tags as needed.</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>Please list the metric's owners. Add more owner tags as needed.</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="SiteIsolationResourceType">
  <owner>Please list the metric's owners. Add more owner tags as needed.</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.NoSniffBlocked.NonRenderableStatusCode">
  <owner>Please list the metric's owners. Add more owner tags as needed.</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="SiteIsolationResourceType">
  <owner>Please list the metric's owners. Add more owner tags as needed.</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.NotBlocked">
  <owner>Please list the metric's owners. Add more owner tags as needed.</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>Please list the metric's owners. Add more owner tags as needed.</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="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.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.Step" enum="SwReporterStep">
  <owner>mad@chromium.org</owner>
  <summary>
    The registration and execution steps for the software reporter.
  </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.CloseFailure" enum="SqliteErrorCode">
  <owner>shess@chromium.org</owner>
  <summary>Error which prevented database close.</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.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.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.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.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="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="Stars.Goog_Related" units="percent">
  <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="percent">
  <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="percent">
  <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="percent">
  <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.No_Images_Snippets" units="percent">
  <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="percent">
  <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.AppListFirstPaintColdStart" units="milliseconds">
  <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="milliseconds">
  <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.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="milliseconds">
  <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="milliseconds">
  <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.BrowserWindowDisplay" units="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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.Fling.TimeToDisplayVideo" units="milliseconds">
  <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().
  </summary>
</histogram>

<histogram name="Startup.LoadTime.ProcessCreateToDllMain">
  <owner>jeremy@chromium.org</owner>
  <summary>Time from the process creation to chrome.dll's main().</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.
  </summary>
</histogram>

<histogram name="Startup.MobileSessionStartAction"
    enum="MobileSessionStartAction">
  <owner>jeremy@chromium.org</owner>
  <summary>
    The action requested on the application startup when called from another app
    or the OS.
  </summary>
</histogram>

<histogram name="Startup.MobileSessionStartFromApps"
    enum="MobileSessionCallerApp">
  <owner>jeremy@chromium.org</owner>
  <summary>The calling application (if any).</summary>
</histogram>

<histogram name="Startup.OSX.AwakeFromNib" units="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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.ShowAppListColdStart" units="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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.WarmStartTimeFromRemoteProcessStart"
    units="milliseconds">
  <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="milliseconds">
  <owner>rtenneti@chromium.org</owner>
  <summary>
    Time duration measured from the time the startup timebomb was started and
    when it went off.
  </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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <owner>zea@chromium.org</owner>
  <summary>Time taken during app association.</summary>
</histogram>

<histogram name="Sync.AppSettingsAssociationTime" units="milliseconds">
  <owner>zea@chromium.org</owner>
  <summary>Time taken during app settings association.</summary>
</histogram>

<histogram name="Sync.AppSettingsStartFailure" enum="SyncStartResult">
  <owner>zea@chromium.org</owner>
  <summary>Enumeration of types of app settings association failures.</summary>
</histogram>

<histogram name="Sync.AppsStartFailure" enum="SyncStartResult">
  <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.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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <owner>zea@chromium.org</owner>
  <summary>Time taken during autofill association.</summary>
</histogram>

<histogram name="Sync.AutofillProfileAssociationTime" units="milliseconds">
  <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="milliseconds">
  <owner>zea@chromium.org</owner>
  <summary>Time taken during autofill profile association.</summary>
</histogram>

<histogram name="Sync.AutofillProfilesStartFailure" enum="SyncStartResult">
  <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">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <owner>zea@chromium.org</owner>
  <summary>Time taken during bookmark association.</summary>
</histogram>

<histogram name="Sync.BookmarksStartFailure" enum="SyncStartResult">
  <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.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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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.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.DictionaryAssociationTime" units="milliseconds">
  <owner>zea@chromium.org</owner>
  <summary>Time taken during dictionary association.</summary>
</histogram>

<histogram name="Sync.DictionaryStartFailure" enum="SyncStartResult">
  <owner>zea@chromium.org</owner>
  <summary>Enumeration of types of dictionary association failures.</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="milliseconds">
  <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="milliseconds">
  <owner>zea@chromium.org</owner>
  <summary>Time taken during extension association.</summary>
</histogram>

<histogram name="Sync.ExtensionSettingsAssociationTime" units="milliseconds">
  <owner>zea@chromium.org</owner>
  <summary>Time taken during extension settings association.</summary>
</histogram>

<histogram name="Sync.ExtensionSettingsStartFailure" enum="SyncStartResult">
  <owner>zea@chromium.org</owner>
  <summary>
    Enumeration of types of extension settings association failures.
  </summary>
</histogram>

<histogram name="Sync.ExtensionsStartFailure" enum="SyncStartResult">
  <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.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="milliseconds">
  <owner>zea@chromium.org</owner>
  <summary>Time taken during favicon images association.</summary>
</histogram>

<histogram name="Sync.FaviconImagesStartFailure" enum="SyncStartResult">
  <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="milliseconds">
  <owner>zea@chromium.org</owner>
  <summary>Time taken during favicon tracking association.</summary>
</histogram>

<histogram name="Sync.FaviconTrackingStartFailure" enum="SyncStartResult">
  <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="milliseconds">
  <owner>haitaol@chromium.org</owner>
  <summary>First sync delay casued by backing up user data.</summary>
</histogram>

<histogram name="Sync.FreqApps" units="milliseconds">
  <owner>zea@chromium.org</owner>
  <summary>
    Time between nudges for apps. Used as estimate of datatype commit frequency.
  </summary>
</histogram>

<histogram name="Sync.FreqAutofill" units="milliseconds">
  <owner>zea@chromium.org</owner>
  <summary>
    Time between nudges for autofill entries. Used as estimate of datatype
    commit frequency.
  </summary>
</histogram>

<histogram name="Sync.FreqAutofillProfiles" units="milliseconds">
  <owner>zea@chromium.org</owner>
  <summary>
    Time between nudges for autofill profiles. Used as estimate of datatype
    commit frequency.
  </summary>
</histogram>

<histogram name="Sync.FreqBookmarks" units="milliseconds">
  <owner>zea@chromium.org</owner>
  <summary>
    Time between nudges for bookmarks. Used as estimate of datatype commit
    frequency.
  </summary>
</histogram>

<histogram name="Sync.FreqDictionary" units="milliseconds">
  <owner>zea@chromium.org</owner>
  <summary>
    Time between nudges for dictionary. Used as estimate of datatype commit
    frequency.
  </summary>
</histogram>

<histogram name="Sync.FreqExtensions" units="milliseconds">
  <owner>zea@chromium.org</owner>
  <summary>
    Time between nudges for extensions. Used as estimate of datatype commit
    frequency.
  </summary>
</histogram>

<histogram name="Sync.FreqFaviconImages" units="milliseconds">
  <owner>zea@chromium.org</owner>
  <summary>
    Time between nudges for favicon images. Used as estimate of datatype commit
    frequency.
  </summary>
</histogram>

<histogram name="Sync.FreqFaviconTracking" units="milliseconds">
  <owner>zea@chromium.org</owner>
  <summary>
    Time between nudges for favicon tracking. Used as estimate of datatype
    commit frequency.
  </summary>
</histogram>

<histogram name="Sync.FreqNigori" units="milliseconds">
  <owner>zea@chromium.org</owner>
  <summary>
    Time between nudges for nigori. Used as estimate of datatype commit
    frequency.
  </summary>
</histogram>

<histogram name="Sync.FreqPasswords" units="milliseconds">
  <owner>zea@chromium.org</owner>
  <summary>
    Time between nudges for passwords. Used as estimate of datatype commit
    frequency.
  </summary>
</histogram>

<histogram name="Sync.FreqPreferences" units="milliseconds">
  <owner>zea@chromium.org</owner>
  <summary>
    Time between nudges for preferences. Used as estimate of datatype commit
    frequency.
  </summary>
</histogram>

<histogram name="Sync.FreqSearchEngines" units="milliseconds">
  <owner>zea@chromium.org</owner>
  <summary>
    Time between nudges for search engines. Used as estimate of datatype commit
    frequency.
  </summary>
</histogram>

<histogram name="Sync.FreqSessions" units="milliseconds">
  <owner>zea@chromium.org</owner>
  <summary>
    Time between nudges for sessions. Used as estimate of datatype commit
    frequency.
  </summary>
</histogram>

<histogram name="Sync.FreqSyncedNotifications" units="milliseconds">
  <owner>zea@chromium.org</owner>
  <summary>
    Time between nudges for synced notifications. Used as estimate of datatype
    commit frequency.
  </summary>
</histogram>

<histogram name="Sync.FreqThemes" units="milliseconds">
  <owner>zea@chromium.org</owner>
  <summary>
    Time between nudges for themes. Used as estimate of datatype commit
    frequency.
  </summary>
</histogram>

<histogram name="Sync.FreqTypedUrls" units="milliseconds">
  <owner>zea@chromium.org</owner>
  <summary>
    Time between nudges for typed urls. Used as estimate of datatype commit
    frequency.
  </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.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.NigoriMigrationState" enum="SyncNigoriMigrationState">
  <owner>zea@chromium.org</owner>
  <summary>Breakdown of sync's nigori node keystore migration state.</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.PasswordAssociationTime" units="milliseconds">
  <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="milliseconds">
  <owner>zea@chromium.org</owner>
  <summary>Time taken during password association.</summary>
</histogram>

<histogram name="Sync.PasswordsStartFailure" enum="SyncStartResult">
  <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="milliseconds">
  <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="milliseconds">
  <owner>zea@chromium.org</owner>
  <summary>Time taken during preference association.</summary>
</histogram>

<histogram name="Sync.PreferencesStartFailure" enum="SyncStartResult">
  <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="milliseconds">
  <owner>zea@chromium.org</owner>
  <summary>Time taken from startup for the user to reauthorize.</summary>
</histogram>

<histogram name="Sync.RefreshTokenAvailable" enum="BooleanSuccess">
  <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.ResolveSimpleConflict"
    enum="SyncSimpleConflictResolutions">
  <owner>zea@chromium.org</owner>
  <summary>Enumeration of types of simple conflict resolutions.</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="milliseconds">
  <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="milliseconds">
  <owner>zea@chromium.org</owner>
  <summary>Time taken during search engine association.</summary>
</histogram>

<histogram name="Sync.SearchEnginesStartFailure" enum="SyncStartResult">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <owner>zea@chromium.org</owner>
  <summary>Time taken during session association.</summary>
</histogram>

<histogram name="Sync.SessionsStartFailure" enum="SyncStartResult">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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.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="milliseconds">
  <owner>zea@chromium.org</owner>
  <summary>Time taken during synced notifications association.</summary>
</histogram>

<histogram name="Sync.SyncedNotificationsStartFailure" enum="SyncStartResult">
  <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="milliseconds">
  <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="milliseconds">
  <owner>zea@chromium.org</owner>
  <summary>Time taken during theme association.</summary>
</histogram>

<histogram name="Sync.ThemesStartFailure" enum="SyncStartResult">
  <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="milliseconds">
  <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.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="milliseconds">
  <owner>zea@chromium.org</owner>
  <summary>Time taken during typed url association.</summary>
</histogram>

<histogram name="Sync.TypedUrlsStartFailure" enum="SyncStartResult">
  <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.UserPerceivedAuthorizationTime" units="milliseconds">
  <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="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.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="milliseconds">
  <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.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="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.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.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.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="milliseconds">
  <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="milliseconds">
  <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.
  </summary>
</histogram>

<histogram name="Tab.NewTabScriptStart" units="milliseconds">
  <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.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="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.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="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="milliseconds">
  <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="milliseconds">
  <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="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="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.CaptureText" units="milliseconds">
  <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.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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>Whether the scroll is executed on main thread.</summary>
</histogram>

<histogram name="UMA.CleanExitBeaconConsistency" enum="UmaCleanExitConsistency">
  <owner>erikwright@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">
  <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="milliseconds">
  <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.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.FieldTrialsEnabledBenchmarking" enum="BooleanUsage">
  <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.GeneratedLowEntropySource" enum="BooleanSuccess">
  <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.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="milliseconds">
  <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">
  <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.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.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">
  <owner>asvitkine@chromium.org</owner>
  <summary>
    Kilobytes saved from gzipping the protobufs before uploading them.
  </summary>
</histogram>

<histogram name="UMA.StoreLogsTime" units="milliseconds">
  <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.SyntheticTrials.Count">
  <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.UploadCreation" enum="BooleanSuccess">
  <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">
  <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">
  <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="milliseconds">
  <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="milliseconds">
  <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.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.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="UserImage.ChangeChoice" enum="ChromeOSUserImageId">
  <owner>Please list the metric's owners. Add more owner tags as needed.</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>Please list the metric's owners. Add more owner tags as needed.</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>Please list the metric's owners. Add more owner tags as needed.</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>Please list the metric's owners. Add more owner tags as needed.</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="milliseconds">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>The time it took to download user's profile picture.</summary>
</histogram>

<histogram name="UserImage.ScreenIsShownTime" units="milliseconds">
  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
  <summary>
    Time histogram of the &quot;Choose Picture&quot; OOBE screen display delay.
  </summary>
</histogram>

<histogram name="UserManager.LoginUserType" enum="UserType">
  <owner>Please list the metric's owners. Add more owner tags as needed.</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>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="V8.ASTOptimization">
  <obsolete>
    This histogram is no longer present in V8
  </obsolete>
  <owner>jochen@chromium.org</owner>
  <summary>TBD</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="percent">
  <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="milliseconds">
  <owner>jochen@chromium.org</owner>
  <owner>yangguo@chromium.org</owner>
  <summary>Time spent in V8 compiler (full codegen).</summary>
</histogram>

<histogram name="V8.CompileEval" units="milliseconds">
  <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.CompileLazy">
  <obsolete>
    This histogram is no longer present in V8
  </obsolete>
  <owner>jochen@chromium.org</owner>
  <summary>Time spent compiling functions lazily on first run.</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.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.GCCompactor" units="milliseconds">
  <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="milliseconds">
  <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.GCIdleNotification" units="milliseconds">
  <owner>jochen@chromium.org</owner>
  <owner>hpayer@chromium.org</owner>
  <summary>Time spent in IdleNotifications.</summary>
</histogram>

<histogram name="V8.GCIdleTimeAllottedInMS" units="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <owner>jochen@chromium.org</owner>
  <owner>hpayer@chromium.org</owner>
  <summary>Time spent doing incremental marking steps during GC.</summary>
</histogram>

<histogram name="V8.GCLowMemoryNotification" units="milliseconds">
  <owner>jochen@chromium.org</owner>
  <owner>hpayer@chromium.org</owner>
  <summary>Time spent in LowMemoryNotifications.</summary>
</histogram>

<histogram name="V8.GCScavenger" units="milliseconds">
  <owner>jochen@chromium.org</owner>
  <owner>hpayer@chromium.org</owner>
  <summary>Time spent in scavenging phase of GC.</summary>
</histogram>

<histogram name="V8.MemoryExternalFragmentationCellSpace" units="percent">
  <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="percent">
  <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="percent">
  <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="percent">
  <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="percent">
  <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="percent">
  <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.MemoryExternalFragmentationTotal" units="percent">
  <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.MemoryHeapFractionCellSpace" units="percent">
  <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="percent">
  <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="percent">
  <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="percent">
  <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="percent">
  <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="percent">
  <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="percent">
  <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.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.Parse" units="milliseconds">
  <owner>jochen@chromium.org</owner>
  <owner>marja@chromium.org</owner>
  <summary>Time spent in V8 parser.</summary>
</histogram>

<histogram name="V8.ParseLazy" units="milliseconds">
  <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.PreParse" units="milliseconds">
  <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">
  <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.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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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.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.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.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>
  <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>
  <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>
  <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>
  <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">
  <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.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="milliseconds">
  <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.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.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="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="Percent">
  <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">
  <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="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.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>eseidel@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>eseidel@chromium.org</owner>
  <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.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.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.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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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.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>
  <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>
  <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.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>
  <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>
  <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.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>
  <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>
  <summary>
    PlatformFileErrors encountered by a single LevelDBEnv method when writing to
    an IndexedDB instance.
  </summary>
</histogram>

<histogram name="WebCore.IndexedDB.OpenTime.Blocked" units="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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.PreloadDelayMs" units="milliseconds">
  <owner>Please list the metric's owners. Add more owner tags as needed.</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.Scripts.Async.StartedStreaming"
    units="BooleanStreamed">
  <owner>marja@chromium.org</owner>
  <summary>Whether an async script was streamed or not.</summary>
</histogram>

<histogram name="WebCore.Scripts.Deferred.StartedStreaming"
    units="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">
  <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.StartedStreaming"
    units="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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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.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="milliseconds">
  <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.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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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.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.LayoutLatency" units="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <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>Please list the metric's owners. Add more owner tags as needed.</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>Please list the metric's owners. Add more owner tags as needed.</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>Please list the metric's owners. Add more owner tags as needed.</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>Please list the metric's owners. Add more owner tags as needed.</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="milliseconds">
  <owner>Please list the metric's owners. Add more owner tags as needed.</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.AudioCaptureTime" units="milliseconds">
  <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>xians@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>xians@chromium.org</owner>
  <summary>Audio input sample rate for WebRTC (in Hz).</summary>
</histogram>

<histogram name="WebRTC.AudioInputSampleRateUnexpected" units="Hz">
  <owner>xians@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>xians@chromium.org</owner>
  <summary>Size of WebRTC audio output buffers (in audio frames).</summary>
</histogram>

<histogram name="WebRTC.AudioOutputFramesPerBufferUnexpected"
    units="audio frames">
  <owner>xians@chromium.org</owner>
  <summary>
    Size of WebRTC audio output buffers (atypical values, in audio frames).
  </summary>
</histogram>

<histogram name="WebRTC.AudioOutputSampleRate" enum="AudioSampleRate">
  <owner>xians@chromium.org</owner>
  <summary>Audio output sample rate for WebRTC (in Hz).</summary>
</histogram>

<histogram name="WebRTC.AudioOutputSampleRateUnexpected" units="Hz">
  <owner>xians@chromium.org</owner>
  <summary>
    Audio output sample rate for WebRTC (atypical values, in Hz).
  </summary>
</histogram>

<histogram name="WebRTC.AudioRenderTime" units="milliseconds">
  <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="milliseconds">
  <owner>henrika@chromium.org</owner>
  <summary>
    Measures the time spent in WebRtcAudioRenderer::SourceCallback. Sampled 10
    times per second.
  </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="milliseconds">
  <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.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.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.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.TimeToConnect" units="milliseconds">
  <owner>mallinath@chromium.org</owner>
  <summary>Time to setup a peer to peer call with PeerConnection.</summary>
</histogram>

<histogram name="WebRTC.ReceivedAudioTrackDuration" units="milliseconds">
  <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="milliseconds">
  <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="milliseconds">
  <owner>jiayl@chromium.org</owner>
  <summary>Time for capturing one frame in screen capturing.</summary>
</histogram>

<histogram name="WebRTC.SentAudioTrackDuration" units="milliseconds">
  <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="milliseconds">
  <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.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.webkitApiCount" enum="JavaScriptAPIName">
  <owner>perkj@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="milliseconds">
  <owner>jiayl@chromium.org</owner>
  <summary>Time for capturing one frame in window capturing.</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="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="Windows.Tablet" enum="BooleanTablet">
  <owner>zturner@chromium.org</owner>
  <summary>Count of browser launches from a Windows tablet pc.</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.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="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="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"/>
</enum>

<enum name="AddressFamily" type="int">
  <int value="0" label="Unspecified"/>
  <int value="1" label="IPv4"/>
  <int value="2" label="IPv6"/>
</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="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="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="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)"/>
  <int value="4" label="Undos Dismissed (Action)"/>
</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="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="Automatic dismissal: User navigated elsewhere"/>
</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."/>
</enum>

<enum name="AppBannersInstallEvent" type="int">
  <int value="21" label="User triggered the app install dialog"/>
  <int value="22" label="User began installing the app"/>
  <int value="23" label="User waited for the app to finish installing"/>
</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"/>
</enum>

<enum name="AppInfoDialogLaunchOrigin" type="int">
  <int value="0" label="App List context menu"/>
  <int value="1" label="Extensions page"/>
</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="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="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"/>
</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="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="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="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"/>
</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="k8000Hz"/>
  <int value="1" label="k16000Hz"/>
  <int value="2" label="k32000Hz"/>
  <int value="3" label="k48000Hz"/>
  <int value="4" label="k96000Hz"/>
  <int value="5" label="k11025Hz"/>
  <int value="6" label="k22050Hz"/>
  <int value="7" label="k44100Hz"/>
  <int value="8" label="k88200Hz"/>
  <int value="9" label="k176400Hz"/>
  <int value="10" label="k192000Hz"/>
  <int value="11" label="k24000Hz"/>
</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="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="AutofillMacAddressBook" type="int">
  <int value="0" label="Showed popup entry"/>
  <int value="1" label="Selected popup entry"/>
</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="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"/>
</enum>

<enum name="AutofillUserHappiness" type="int">
  <int value="0" label="Forms loaded"/>
  <int value="1" label="Submitted fillable form, autofilled all"/>
  <int value="2" label="Submitted fillable form, autofilled some"/>
  <int value="3" label="Submitted fillable form, autofilled none"/>
  <int value="4" label="Submitted non-fillable form"/>
  <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="BackingStoreResults" type="int">
  <int value="0" label="Unused"/>
  <int value="1" label="Success"/>
  <int value="2" label="Failure"/>
</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="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="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="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="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="Boolean" type="int">
  <int value="0" label="False"/>
  <int value="1" label="True"/>
</enum>

<enum name="BooleanAccepted" type="int">
  <int value="0" label="Not Accepted"/>
  <int value="1" label="Accepted"/>
</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="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="BooleanCorrupt" type="int">
  <int value="0" label="Not Corrupt"/>
  <int value="1" label="Corrupt"/>
</enum>

<enum name="BooleanCovered" type="int">
  <int value="0" label="Not Covered"/>
  <int value="1" label="Covered"/>
</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="BooleanDelete" type="int">
  <int value="0" label="Ignored"/>
  <int value="1" label="Deleted"/>
</enum>

<enum name="BooleanDidEvict" type="int">
  <int value="0" label="Did not evict"/>
  <int value="1" label="Did evict"/>
</enum>

<enum name="BooleanDistillable" type="int">
  <int value="0" label="Not distillable"/>
  <int value="1" label="Distillable"/>
</enum>

<enum name="BooleanDuplicate" type="int">
  <int value="0" label="Not Duplicate"/>
  <int value="1" label="Duplicate"/>
</enum>

<enum name="BooleanEnabled" type="int">
  <int value="0" label="Disabled"/>
  <int value="1" label="Enabled"/>
</enum>

<enum name="BooleanExpired" type="int">
  <int value="0" label="Unexpired"/>
  <int value="1" label="Expired"/>
</enum>

<enum name="BooleanForceDisabled" type="int">
  <int value="0" label="Not Force Disabled"/>
  <int value="1" label="Force Disabled"/>
</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="BooleanHandshakeConfirmed" type="int">
  <int value="0" label="Handshake not confirmed"/>
  <int value="1" label="Handshake confirmed"/>
</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="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="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="BooleanMigrated" type="int">
  <int value="0" label="Not migrated"/>
  <int value="1" label="Migrated"/>
</enum>

<enum name="BooleanOrphan" type="int">
  <int value="0" label="Non-orphan"/>
  <int value="1" label="Orphan"/>
</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="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="BooleanReported" type="int">
  <int value="0" label="Not reported"/>
  <int value="1" label="Reported"/>
</enum>

<enum name="BooleanRevoked" type="int">
  <int value="0" label="Not revoked"/>
  <int value="1" label="Revoked"/>
</enum>

<enum name="BooleanSelected" type="int">
  <int value="0" label="No selection"/>
  <int value="1" label="Selected"/>
</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="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="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="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="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="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="CanvasContextType" type="int">
  <int value="0" label="2d"/>
  <int value="1" label="webkit-3d"/>
  <int value="2" label="experimental-webgl"/>
  <int value="3" label="webgl"/>
</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="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="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="CapturePixelFormat" type="int">
  <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"/>
</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="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">
  <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="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="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="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="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="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="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="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="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="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="ContentSetting" type="int">
  <int value="1" label="ALLOW"/>
  <int value="2" label="BLOCK"/>
  <int value="3" label="ASK"/>
  <int value="4" label="SESSION_ONLY"/>
</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="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="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"/>
</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="DailyEventIntervalType" type="int">
  <int value="0" label="First Run"/>
  <int value="1" label="Day Elapsed"/>
  <int value="2" label="Clock Changed"/>
</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="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="DataReductionProxyNetworkChangeEvent" type="int">
  <int value="0" label="IP Address Change"/>
  <int value="1" label="Proxy disabled on VPN"/>
</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"/>
</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="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="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="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."/>
</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"/>
</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="Extension's Panel"/>
</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"/>
  <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="DllHash" type="int">
<!-- Generated by chrome_elf/dll_hash/dll_hash_main.cc -->

  <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="447643466" label="libinject.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="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="1736709911" label="bitguard.dll"/>
  <int value="1996673448" label="scdetour.dll"/>
  <int value="2060768492" label="libwinhook.dll"/>
  <int value="2117903235" label="cplushook.dll"/>
  <int value="2132270559" label="libsvn_tsvn32.dll"/>
</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"/>
</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"/>
  <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"/>
</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"/>
</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="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="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="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="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"/>
</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="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="EasyUnlockUnlockEvent" type="int">
  <int value="0" label="Screen unlocked (total)"/>
  <int value="1" label="Screen unlocked (via EasyUnlock)"/>
</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 (deprecated)">
    DEPRECATED: Enrollment failed because it failed to apply device policy.
  </int>
  <int value="6" label="Other Failed (deprecated)">
    DEPRECATED: 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">
    Auto-enrollment started automatically after sign-in.
  </int>
  <int value="10" label="Auto-enrollment Failed">Auto-enrollment failed.</int>
  <int value="11" label="Auto-enrollment Restarted">
    Auto-enrollment started again after a failure.
  </int>
  <int value="12" label="Auto-enrollment Cancelled">
    User opted-out of auto-enrollment.
  </int>
  <int value="13" label="Auto-enrollment OK">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">
    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">
    Enrollment failed: lockbox initialization took too long to complete.
  </int>
  <int value="17" label="Re-enrollment: lock domain mismatch">
    Re-enrollment device lock failed: 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">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="Re-enrollment: lock domain mismatch">
    Re-enrollment device lock failed: domain does not match 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 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 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 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"/>
  <int value="118" label="Disable SSL record splitting"/>
  <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 Chrome OS Files app"/>
  <int value="140"
      label="Disables Google Drive over Cellular connections in the 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 Chrome"/>
  <int value="191" label="System wide flags to be applied on 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"/>
  <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"/>
  <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"/>
  <int value="271" label="Transfer SAML IdP cookies during login"/>
  <int value="272" label="Enable EasyUnlock"/>
  <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 the browser"/>
  <int value="276" label="Enable add person in the user manager"/>
  <int value="277"
      label="Import autofill form data from default browser on first run"/>
  <int value="278" label="Extension Settings"/>
</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="2" label="No payload; expired"/>
  <int value="3" label="Payload; expired"/>
</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="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"/>
  <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"/>
</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="FILEMANAGERPRIVATE_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="FILEMANAGERPRIVATE_CANCELFILETRANSFERS"/>
  <int value="22" label="FILEMANAGERPRIVATE_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="FILEMANAGERPRIVATE_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="DEVELOPERPRIVATE_ENABLE"/>
  <int value="77" label="FILEMANAGERPRIVATE_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="FILEMANAGERPRIVATE_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="FILEMANAGERPRIVATE_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="FILEMANAGERPRIVATE_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="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="FILEMANAGERPRIVATE_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="FILEMANAGERPRIVATE_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="MEDIAGALLERIESPRIVATE_ADDGALLERYWATCH"/>
  <int value="396" label="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="FILEMANAGERPRIVATE_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="MEDIAGALLERIESPRIVATE_GETALLGALLERYWATCH"/>
  <int value="412" label="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="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="LOCATION_WATCHLOCATION"/>
  <int value="452" label="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="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="FILEMANAGERPRIVATE_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="FILEMANAGERPRIVATE_INSTALLWEBSTOREITEM"/>
  <int value="560" label="FILEMANAGERPRIVATE_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="PRINCIPALSPRIVATE_SHOWAVATARBUBBLE"/>
  <int value="583" label="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="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="PREFERENCESPRIVATE_GETSYNCCATEGORIESWITHOUTPASSPHRASE"/>
  <int value="660" label="READINGLISTPRIVATE_ADDENTRY"/>
  <int value="661" label="READINGLISTPRIVATE_REMOVEENTRY"/>
  <int value="662" label="READINGLISTPRIVATE_GETENTRIES"/>
  <int value="663" label="MEDIAGALLERIES_STARTMEDIASCAN"/>
  <int value="664" label="MEDIAGALLERIES_CANCELMEDIASCAN"/>
  <int value="665" label="MEDIAGALLERIES_ADDSCANRESULTS"/>
  <int value="666" label="LOGPRIVATE_STARTNETINTERNALSWATCH"/>
  <int value="667" label="LOGPRIVATE_STOPNETINTERNALSWATCH"/>
  <int value="668" label="FILEMANAGERPRIVATE_GETPROFILES"/>
  <int value="669" label="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="APP_CURRENTWINDOWINTERNAL_SETBADGEICON"/>
  <int value="681" label="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="FILEMANAGERPRIVATE_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="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="SYNCEDNOTIFICATIONSPRIVATE_GETINITIALDATA"/>
  <int value="768" label="SYNCEDNOTIFICATIONSPRIVATE_UPDATENOTIFICATION"/>
  <int value="769" label="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="ENTERPRISE_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="FILEMANAGERPRIVATE_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="MEDIAGALLERIES_GETALLGALLERYWATCH"/>
  <int value="888" label="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="COPRESENCESOCKET_CREATEPEER"/>
  <int value="902" label="COPRESENCESOCKET_DESTROYPEER"/>
  <int value="903" label="COPRESENCESOCKET_SEND"/>
  <int value="904" label="COPRESENCESOCKET_DISCONNECT"/>
  <int value="905" label="BOOKMARKMANAGERPRIVATE_SETVERSION"/>
  <int value="906" label="FILESYSTEMPROVIDER_NOTIFY"/>
</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="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="kManagedMode"/>
  <int value="21" label="kInput"/>
  <int value="22" label="kAudioCapture"/>
  <int value="23" label="kVideoCapture"/>
  <int value="24" label="kDownloads"/>
  <int value="25" label="kFileSystemWrite"/>
  <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"/>
</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="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"/>
</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="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="AnimationPlayerFinishEvent"/>
  <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="AnimationPlayerGetStartTime"/>
  <int value="546" label="AnimationPlayerSetStartTime"/>
  <int value="547" label="AnimationPlayerGetCurrentTime"/>
  <int value="548" label="AnimationPlayerSetCurrentTime"/>
  <int value="549" label="AnimationPlayerGetPlaybackRate"/>
  <int value="550" label="AnimationPlayerSetPlaybackRate"/>
  <int value="551" label="AnimationPlayerGetPlayState"/>
  <int value="552" label="AnimationPlayerFinish"/>
  <int value="553" label="AnimationPlayerPlay"/>
  <int value="554" label="AnimationPlayerPause"/>
  <int value="555" label="AnimationPlayerReverse"/>
  <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"/>
</enum>

<enum name="FFmpegCodecs" type="int">
  <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="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="Cloud Device"/>
  <int value="5" label="FileSystemProvider API"/>
  <int value="6" label="MTP (Media Transfer Protocol) Device"/>
</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="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="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"/>
  <int value="5" label="OS/2"/>
</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="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"/>
</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="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="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="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"/>
</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="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 be deserialized by Chrome.
  </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="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="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="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="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="HotwordPrefState" type="int">
  <int value="0" label="Preference not set"/>
  <int value="1" label="Hotwording enabled"/>
  <int value="2" label="Hotwording disabled"/>
</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="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="503" label="503: Service Unavailable"/>
  <int value="504" label="504: Gateway Timeout"/>
  <int value="505" label="505: HTTP Version Not Supported"/>
</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="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="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>
</enum>

<enum name="IMECommitType" 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 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="IMECorrectionLevel" type="int">
  <int value="0" label="Off"/>
  <int value="1" label="Modest"/>
  <int value="2" label="Aggressive"/>
</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>
</enum>

<enum name="IncidentType" type="int">
  <int value="1" label="TrackedPreference"/>
  <int value="2" label="BinaryIntegrity"/>
  <int value="3" label="BlacklistLoad"/>
</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="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:rs::srp">Serbian keyboard</int>
  <int value="111402" label="xkb:ru::rus">Russian keyboard</int>
  <int value="111403" 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="InsecureContentType" type="int">
  <int value="0" label="Displayed"/>
  <int value="1" label="Displayed by *.google.com"/>
  <int value="2" label="Displayed by www.google.com"/>
  <int value="3" label="Displayed due to an iframe"/>
  <int value="4" label="Ran"/>
  <int value="5" label="Ran by *.google.com"/>
  <int value="6" label="Ran by www.google.com"/>
  <int value="7" label="Ran from www.youtube.com"/>
  <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"/>
  <int value="12" label="Ran by www.youtube.com"/>
  <int value="13" label="Ran by *.googleusercontent.com"/>
  <int value="14" label="Displayed by mail.google.com"/>
  <int value="15" label="Ran by mail.google.com"/>
  <int value="16" label="Displayed by plus.google.com"/>
  <int value="17" label="Ran by plus.google.com"/>
  <int value="18" label="Displayed by docs.google.com"/>
  <int value="19" label="Ran by docs.google.com"/>
  <int value="20" label="Displayed by sites.google.com"/>
  <int value="21" label="Ran by sites.google.com"/>
  <int value="22" label="Displayed by picasaweb.google.com"/>
  <int value="23" label="Ran by picasaweb.google.com"/>
  <int value="24" label="Displayed by google.com/reader/"/>
  <int value="25" label="Ran by google.com/reader/"/>
  <int value="26" label="Displayed by code.google.com"/>
  <int value="27" label="Ran by code.google.com"/>
  <int value="28" label="Displayed by groups.google.com"/>
  <int value="29" label="Ran by groups.google.com"/>
  <int value="30" label="Displayed by maps.google.com"/>
  <int value="31" label="Ran by maps.google.com"/>
  <int value="32" label="Displayed by google.com/support/"/>
  <int value="33" label="Ran by google.com/support/"/>
  <int value="34" label="Displayed by google.com/intl/"/>
  <int value="35" label="Ran by google.com/intl/"/>
</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">
  <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">
  <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.3"/>
  <int value="7" label="AVX"/>
</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="30" label="SERVER_FAILED"/>
  <int value="31" label="SERVER_NO_RANGE"/>
  <int value="32" label="SERVER_PRECONDITION"/>
  <int value="33" label="SERVER_BAD_CONTENT"/>
  <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="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"/>
</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="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="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="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"/>
</enum>

<enum name="LevelDBPrefStoreErrorCodes" type="int">
  <int value="1" label="OPENED"/>
  <int value="5" label="REPAIRED | OPENED"/>
  <int value="6" label="REPAIRED | DESTROYED"/>
  <int value="7" label="REPAIRED | DESTROYED | OPENED"/>
  <int value="12" label="REPAIRED | DESTROY_FAILED"/>
  <int value="18" label="REPAIR_FAILED | DESTROYED"/>
  <int value="19" label="REPAIR_FAILED | DESTROYED | OPENED"/>
  <int value="24" label="REPAIR_FAILED | DESTROY_FAILED"/>
  <int value="32" label="IO_ERROR"/>
  <int value="36" label="REPAIRED | IO_ERROR"/>
  <int value="38" label="REPAIRED | DESTROYED | IO_ERROR"/>
  <int value="50" label="REPAIR_FAILED | DESTROYED | IO_ERROR"/>
  <int value="65" label="OPENED | DATA_LOST"/>
  <int value="69" label="REPAIRED | OPENED | DATA_LOST"/>
  <int value="71" label="REPAIRED | DESTROYED | OPENED | DATA_LOST"/>
  <int value="83" label="REPAIR_FAILED | DESTROYED | OPENED | DATA_LOST"/>
  <int value="129" label="OPENED | ITER_NOT_OK"/>
  <int value="133" label="REPAIRED | OPENED | ITER_NOT_OK"/>
  <int value="135" label="REPAIRED | DESTROYED | OPENED | ITER_NOT_OK"/>
  <int value="147" label="REPAIR_FAILED | DESTROYED | OPENED | ITER_NOT_OK"/>
  <int value="193" label="OPENED | DATA_LOST | ITER_NOT_OK"/>
  <int value="197" label="REPAIRED | OPENED | DATA_LOST | ITER_NOT_OK"/>
  <int value="199"
      label="REPAIRED | DESTROYED | OPENED | DATA_LOST | ITER_NOT_OK"/>
  <int value="211"
      label="REPAIR_FAILED | DESTROYED | OPENED | DATA_LOST | ITER_NOT_OK"/>
  <int value="256" label="FILE_NOT_SPECIFIED"/>
</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="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"/>
</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"/>
</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="-2137755780" label="enable-reader-mode-toolbar-icon"/>
  <int value="-2132591642" label="enable-input-view"/>
  <int value="-2117201726" label="disable-gpu-rasterization"/>
  <int value="-2114831248" label="disable-new-ntp"/>
  <int value="-2098610409" label="disable-lcd-text"/>
  <int value="-2097515669" label="disable-cast"/>
  <int value="-2077268643" label="disable-device-enumeration"/>
  <int value="-2052416224" label="enable-zero-suggest-ether-noserp"/>
  <int value="-2047822258" label="enable-avfoundation"/>
  <int value="-2025367104" label="enable-material-design-ntp"/>
  <int value="-2020024440" label="scroll-end-effect"/>
  <int value="-2008272679" label="disable-webrtc-hw-encoding"/>
  <int value="-2003354337"
      label="enable-search-button-in-omnibox-for-str-or-iip"/>
  <int value="-1985025593" label="file-manager-enable-new-gallery"/>
  <int value="-1972383451" label="disable-pinch"/>
  <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="-1911153473" label="enable-easy-signin"/>
  <int value="-1888273969" label="tab-capture-upscale-quality"/>
  <int value="-1876881908"
      label="disable-infobar-for-protected-media-identifier"/>
  <int value="-1874908826" label="enable-instant-search-clicks"/>
  <int value="-1870961970" label="enable-filemanager-mtp"/>
  <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="-1767470652" label="out-of-process-pdf"/>
  <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="-1725507605" label="enable-web-midi"/>
  <int value="-1719833926" label="disable-answers-in-suggest"/>
  <int value="-1716654100" label="tab-capture-downscale-quality"/>
  <int value="-1703709912" label="enable-new-ntp"/>
  <int value="-1703308540" label="disable-webaudio"/>
  <int value="-1696366449" label="disable-permissions-bubbles"/>
  <int value="-1662447331" label="wake-on-packets"/>
  <int value="-1619757314" label="touch-scrolling-mode"/>
  <int value="-1605567628" label="disable-overlay-scrollbar"/>
  <int value="-1596559650" label="max-tiles-for-interest-area"/>
  <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="-1510839574" label="disable-sync-synced-notifications"/>
  <int value="-1497338981" label="disable-accelerated-overflow-scroll"/>
  <int value="-1482685863" label="enable-request-tablet-site"/>
  <int value="-1460462432" label="disable-media-source"/>
  <int value="-1433087548" label="enable-app-install-alerts"/>
  <int value="-1419788257" label="enable-experimental-hotwording"/>
  <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="-1375111024" label="enable-fixed-position-compositing"/>
  <int value="-1358669137" label="enable-supervised-user-blacklist"/>
  <int value="-1349872906"
      label="disallow-autofill-sync-credential-for-reauth"/>
  <int value="-1341092934" label="enable-accelerated-overflow-scroll"/>
  <int value="-1340055960" label="enable-streamlined-hosted-apps"/>
  <int value="-1334327410" label="ash-enable-touch-view-testing"/>
  <int value="-1319688939" label="ignore-gpu-blacklist"/>
  <int value="-1285021473" label="save-page-as-mhtml"/>
  <int value="-1245459041" label="enable-zero-suggest-personalized"/>
  <int value="-1241747717" label="enable-android-password-link"/>
  <int value="-1218608640" label="disable-offline-load-stale-cache"/>
  <int value="-1212273428" label="enable-experimental-app-list"/>
  <int value="-1201183153" label="enable-centered-app-list"/>
  <int value="-1172204005" label="enable-offline-auto-reload-visible-only"/>
  <int value="-1159563774" label="enable-accessibility-script-injection"/>
  <int value="-1136509631" label="ssl-interstitial-v1"/>
  <int value="-1125133283" label="disable-threaded-scrolling"/>
  <int value="-1102212525" label="enable-tcp-fastopen"/>
  <int value="-1078093206" label="ash-debug-shortcuts"/>
  <int value="-1077752943" label="enable-password-generation"/>
  <int value="-1052782474" label="enable-cloud-devices"/>
  <int value="-1052415111" label="malware-interstitial-v2"/>
  <int value="-1022971520" label="enable-search-button-in-omnibox-for-str"/>
  <int value="-979034258" label="disable-ntp-other-sessions-menu"/>
  <int value="-949178861" label="enable-new-avatar-menu"/>
  <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="-898005938" label="disable-pinch-virtual-viewport"/>
  <int value="-885601782" label="enable-contextual-search"/>
  <int value="-867087281" label="enable-virtual-keyboard"/>
  <int value="-864205629" label="enable-offline-load-stale-cache"/>
  <int value="-853594220" label="disable-new-avatar-menu"/>
  <int value="-836123854" label="wallet-service-use-sandbox"/>
  <int value="-820041355" label="enable-transition-compositing"/>
  <int value="-814097014" label="disable-session-crashed-bubble"/>
  <int value="-795600188" label="disable-async-dns"/>
  <int value="-770319039" label="enable-touch-editing"/>
  <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="-711890895" label="enable-website-settings-manager"/>
  <int value="-699767107" label="enable-sync-app-list"/>
  <int value="-697751423" label="disable-quickoffice-component-app"/>
  <int value="-667517406" label="overscroll-history-navigation"/>
  <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="-604814313" label="enable-pinch"/>
  <int value="-601384286" label="disable-contextual-search"/>
  <int value="-579192400" label="disable-input-view"/>
  <int value="-563980787" label="disable-webrtc"/>
  <int value="-562274241" label="enable-extension-action-redesign"/>
  <int value="-536289234" label="ssl-interstitial-v2-colorful"/>
  <int value="-516845951" label="enable-embedded-extension-options"/>
  <int value="-510488450" label="disable-pnacl"/>
  <int value="-508143738" label="disable-accelerated-fixed-root-background"/>
  <int value="-495585885" label="enable-spdy-proxy-dev-auth-origin"/>
  <int value="-478462945" label="enable-ephemeral-apps"/>
  <int value="-462205750" label="enable-service-worker-sync"/>
  <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="-349057743" label="extensions-on-chrome-urls"/>
  <int value="-340255045" label="allow-nacl-socket-api"/>
  <int value="-328361990" label="enable-experimental-extension-apis"/>
  <int value="-320820051" label="enable-zero-copy"/>
  <int value="-314910380" label="disable-distance-field-text"/>
  <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="-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="-102537270" label="extension-content-verification"/>
  <int value="-86788587" label="allow-autofill-sync-credential"/>
  <int value="-80353187" label="disable-display-color-calibration"/>
  <int value="-76631048" label="disable-offline-auto-reload-visible-only"/>
  <int value="-68225452" label="enable-translate-new-ux"/>
  <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="-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="27507364" label="apps-keep-chrome-alive"/>
  <int value="61205887" label="enable-text-input-focus-manager"/>
  <int value="79503461" label="disable-account-consistency"/>
  <int value="91938915" label="enable-suggestions-service"/>
  <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="147373243" label="enable-deferred-image-decoding"/>
  <int value="203776499" label="enable-virtual-keyboard-overscroll"/>
  <int value="242267133" label="enable-zero-suggest-ether-serp"/>
  <int value="270267831" label="enable-scripts-require-action"/>
  <int value="278756320" label="disable-app-list-app-info"/>
  <int value="346711293" label="enable-save-password-bubble"/>
  <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="370486304" label="enable-origin-chip-on-srp"/>
  <int value="401983950" label="enable-spdy4"/>
  <int value="402143634" label="enable-search-button-in-omnibox-always"/>
  <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="494733611" label="disable-drop-sync-credential"/>
  <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="593707592" label="disable-network-portal-notification"/>
  <int value="606288133" label="enable-print-preview-register-promos"/>
  <int value="625273056" label="disable-boot-animation"/>
  <int value="630947363" label="touch-events"/>
  <int value="689489984" label="disable-zero-suggest"/>
  <int value="709850261" label="disable-touch-editing"/>
  <int value="711424932" label="enable-cloud-print-xps"/>
  <int value="732703958" label="enable-gesture-tap-highlight"/>
  <int value="773919225" label="disable-office-editing-component-extension"/>
  <int value="779086132" label="enable-data-reduction-proxy-alt"/>
  <int value="821192723" label="show-fps-counter"/>
  <int value="824961931" label="use-simple-cache-backend"/>
  <int value="834326277" label="enable-answers-in-suggest"/>
  <int value="835018878" label="disable-quic"/>
  <int value="838887742" label="manual-enhanced-bookmarks"/>
  <int value="851085848" label="enable-settings-window"/>
  <int value="869531646" label="enable-session-crashed-bubble"/>
  <int value="879699575" label="disable-gesture-tap-highlight"/>
  <int value="880510010" label="enable-permissions-bubbles"/>
  <int value="887011602" label="enable-spelling-auto-correct"/>
  <int value="909439558" label="disable-device-discovery"/>
  <int value="952558794" label="enable-remote-assistance"/>
  <int value="1022992701" label="enable-origin-chip-always"/>
  <int value="1033597574" label="disable-layer-squashing"/>
  <int value="1050321458" label="new-profile-management"/>
  <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="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="1150622273" label="enable-apps-file-associations"/>
  <int value="1163255347" label="ash-enable-touch-view-touch-feedback"/>
  <int value="1196644408" label="performance-monitor-gathering"/>
  <int value="1205849612" label="enable-sync-synced-notifications"/>
  <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="1257980502" label="disable-accelerated-video-decode"/>
  <int value="1268470658" label="disable-android-password-link"/>
  <int value="1279584261" label="enable-carrier-switching"/>
  <int value="1283960113" label="disable-fixed-position-compositing"/>
  <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="1361047396" label="disable-click-delay"/>
  <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="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="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="1490255042" label="enable-overlay-scrollbar"/>
  <int value="1497924954" label="js-flags"/>
  <int value="1505194447" label="disable-transition-compositing"/>
  <int value="1510476448" label="disable-prefixed-encrypted-media"/>
  <int value="1515196403" label="fast-user-switching"/>
  <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="1694854500" label="disable-save-password-bubble"/>
  <int value="1723601083" label="enable-app-window-controls"/>
  <int value="1730236697" label="force-device-scale-factor"/>
  <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="1783293530" label="disallow-autofill-sync-credential"/>
  <int value="1803465156" label="enable-zero-suggest-most-visited"/>
  <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="1820451991" label="enable-offline-auto-reload"/>
  <int value="1821723343" label="disable-saml-signin"/>
  <int value="1844110073" label="enable-app-view"/>
  <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="1865799183" label="javascript-harmony"/>
  <int value="1900529524" label="disable-touch-drag-drop"/>
  <int value="1906942630" label="enable-easy-unlock"/>
  <int value="1930901873" label="disable-sync-app-list"/>
  <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="2004829262" label="enable-webgl-draft-extensions"/>
  <int value="2037756154" label="enable-impl-side-painting"/>
  <int value="2059322877" label="new-avatar-menu"/>
  <int value="2093235103" label="default-tile-width"/>
  <int value="2101151142" label="disable-direct-write"/>
  <int value="2119964154" label="enable-download-resumption"/>
  <int value="2122876605" label="enable-bleeding-edge-rendering-fast-paths"/>
  <int value="2137347307" label="enable-drive-apps-in-app-list"/>
</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="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="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="MainFrameStorable" type="int">
  <int value="0" label="Storable"/>
  <int value="1" label="cache-control: no-store"/>
</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="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="webkit-animation"/>
  <int value="167" label="webkit-animation-delay"/>
  <int value="168" label="webkit-animation-direction"/>
  <int value="169" label="webkit-animation-duration"/>
  <int value="170" label="webkit-animation-fill-mode"/>
  <int value="171" label="webkit-animation-iteration-count"/>
  <int value="172" label="webkit-animation-name"/>
  <int value="173" label="webkit-animation-play-state"/>
  <int value="174" label="webkit-animation-timing-function"/>
  <int value="175" label="webkit-appearance"/>
  <int value="176" label="webkit-aspect-ratio"/>
  <int value="177" label="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="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="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="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="webkit-column-count"/>
  <int value="219" label="webkit-column-gap"/>
  <int value="220" label="webkit-column-progression"/>
  <int value="221" label="webkit-column-rule"/>
  <int value="222" label="webkit-column-rule-color"/>
  <int value="223" label="webkit-column-rule-style"/>
  <int value="224" label="webkit-column-rule-width"/>
  <int value="225" label="webkit-column-span"/>
  <int value="226" label="webkit-column-width"/>
  <int value="227" label="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="webkit-perspective"/>
  <int value="309" label="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="webkit-transform"/>
  <int value="327" label="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="webkit-transform-style"/>
  <int value="332" label="webkit-transition"/>
  <int value="333" label="webkit-transition-delay"/>
  <int value="334" label="webkit-transition-duration"/>
  <int value="335" label="webkit-transition-property"/>
  <int value="336" label="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"/>
</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="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="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"/>
  <int value="12" label="GetMetadata API invocations"/>
  <int value="13" label="AddUserSelectedFolder API invocations"/>
  <int value="14" label="StartMediaScan API invocations"/>
  <int value="15" label="CancelMediaScan API invocations"/>
  <int value="16" label="AddScanResults API invocations"/>
  <int value="17" label="A media scan completed"/>
  <int value="18" label="AddScanResults dialog cancelled"/>
  <int value="19" label="AddScanResults dialog accepted"/>
  <int value="20" label="Gallery removed from AddScanResults dialog"/>
  <int value="21" label="Gallery removed from permission dialog"/>
  <int value="22" label="DropPermissionForMediaFileSystem API invocations"/>
</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="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="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="MediaUrlType" type="int">
  <int value="0" label="Non Http Live Stream Type"/>
  <int value="1" label="Http Live Stream Type"/>
</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="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="MobileSessionCallerApp" type="int">
  <int value="0" label="Google Search"/>
  <int value="1" label="GMail"/>
  <int value="2" label="Google+"/>
  <int value="3" label="Google Drive"/>
  <int value="4" label="Google Earth"/>
  <int value="5" label="Other Google Apps"/>
  <int value="6" label="Others"/>
  <int value="7" label="Mobile Safari"/>
  <int value="8" label="Other Apple Apps"/>
  <int value="9" label="YouTube"/>
  <int value="10" label="Google Maps"/>
</enum>

<enum name="MobileSessionStartAction" type="int">
  <int value="0" label="Open http"/>
  <int value="1" label="Open https"/>
  <int value="2" label="Open file"/>
  <int value="3" label="x-callback-url open"/>
  <int value="4" label="x-callback-url other"/>
  <int value="5" label="Others"/>
</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"/>
</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="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"/>
</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="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="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_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="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="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="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="Load Stale Button Shown"/>
  <int value="5" label="Load Stale Button Clicked"/>
  <int value="6" label="Load Stale Button Click Load Error"/>
  <int value="7" label="More Button Clicked"/>
  <int value="8" label="Browser Initiated Reload"/>
</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="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="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"/>
</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)"/>
</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="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="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="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="NtpOtherSessionsType" 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"/>
</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="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="OfflineStatus" type="int">
  <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="416" label="SEARCH_SUGGEST_PERSONALIZED 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"/>
</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)"/>
</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="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="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>
</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="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="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="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"/>
  <int value="4"
      label="Opened automatically / Confirming generated password saved"/>
</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="Generation popup shown"/>
  <int value="6" label="Generated password accepted"/>
  <int value="7" label="Editing popup shown"/>
  <int value="8" label="Generated password edited"/>
  <int value="9" label="Generated password deleted"/>
</enum>

<enum name="PasswordGenerationSubmissionEvent" type="int">
  <int value="0" label="Generated password submission succeeded"/>
  <int value="1" label="Generated password submission failed"/>
  <int value="2" label="Generated password not submitted"/>
  <int value="3" label="Generated password overridden by a non-generated one"/>
</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="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="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="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 'Enable password manager'"/>
  <int value="7" label="Clicked 'OK'"/>
</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="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="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="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="126651696" label="PPB_ContentDecryptor_Private;0.12"/>
  <int value="138418890" label="PPB_Memory(Dev);0.1"/>
  <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="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="612625164" label="PPB_InputEvent;1.0"/>
  <int value="615811055" label="PPB_Flash_MessageLoop;0.1"/>
  <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="760024173" label="PPB_FileIO;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="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="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="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="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="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="1272679676" label="PPB_TCPSocket_Private;0.5"/>
  <int value="1296231808" label="PPB_VideoDecoder;0.1"/>
  <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="1437724812" label="PPB_AudioConfig;1.0"/>
  <int value="1443771913" label="PPB_NetAddress;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="1577776196" label="PPB_InputEvent_Private;0.1"/>
  <int value="1641037564" label="PPB_VideoSource_Private;0.1"/>
  <int value="1645591549" label="PPB_Widget(Dev);0.3"/>
  <int value="1677958987" label="PPB_ImageData;1.0"/>
  <int value="1680873803" label="PPB_Console;1.0"/>
  <int value="1703245231" label="PPB_NetworkList;1.0"/>
  <int value="1721408268" label="PPB_URLLoader;1.0"/>
  <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="1838344955" label="PPB_Flash;12.4"/>
  <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="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="1994108724" label="PPB_Flash_File_FileRef;2"/>
  <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="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="PepperVideoDecodeError" 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="PermissionAction" type="int">
  <int value="0" label="GRANTED"/>
  <int value="1" label="DENIED"/>
  <int value="2" label="DISMISSED"/>
  <int value="3" label="IGNORED"/>
</enum>

<enum name="PermissionType" type="int">
  <int value="0" label="PERMISSION_UNKONWN"/>
  <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"/>
</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="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="4" label="PIPELINE_ERROR_DECRYPT"/>
  <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"/>
</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="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="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="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="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="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="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">
  <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">
  <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">
  <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"/>
</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">
  <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">
  <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">
  <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">
  <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">
  <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">
  <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"/>
</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"/>
  <int value="3" label="Metafile init failed"/>
  <int value="4" label="0-page preview"/>
  <int value="5" label="Mac draft metafile init failed"/>
  <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"/>
</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"/>
</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"/>
  <int value="1" label="User Manager"/>
</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>
</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 bubble menu from NTP"/>
  <int value="1" label="Opened the avatar bubble menu from icon"/>
  <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"/>
</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="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_NUM_EVENTS"/>
</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="QuicDiskCacheEntryState" type="int">
  <int value="0" label="Opened"/>
  <int value="1" label="Closed"/>
</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="CONNECTION_TIMED_OUT"/>
  <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="CONNECTION_OVERALL_TIMED_OUT"/>
</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"/>
</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"/>
</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="RapporDiscardReason" type="int">
  <int value="0" label="Upload Success"/>
  <int value="1" label="Upload Rejected"/>
  <int value="2" label="Queue Overflowed"/>
</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="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="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"/>
</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="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="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="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="CORRUPT"/>
  <int value="1" label="CORRUPT_HANDLER"/>
  <int value="2" label="BROWSE_DB_UPDATE_BEGIN"/>
  <int value="3" label="BROWSE_DB_UPDATE_FINISH"/>
  <int value="4" label="FILTER_MISSING"/>
  <int value="5" label="FILTER_READ"/>
  <int value="6" label="FILTER_WRITE"/>
  <int value="7" label="FILTER_DELETE"/>
  <int value="8" label="STORE_MISSING"/>
  <int value="9" label="STORE_DELETE"/>
  <int value="10" label="DOWNLOAD_DB_UPDATE_BEGIN"/>
  <int value="11" label="DOWNLOAD_DB_UPDATE_FINISH"/>
  <int value="12" label="CSD_DB_UPDATE_BEGIN"/>
  <int value="13" label="CSD_DB_UPDATE_FINISH"/>
  <int value="14" label="BROWSE_PREFIX_SET_MISSING"/>
  <int value="15" label="BROWSE_PREFIX_SET_READ"/>
  <int value="16" label="BROWSE_PREFIX_SET_WRITE"/>
  <int value="17" label="BROWSE_PREFIX_SET_DELETE"/>
  <int value="18" label="EXTENSION_BLACKLIST_UPDATE_BEGIN"/>
  <int value="19" label="EXTENSION_BLACKLIST_UPDATE_FINISH"/>
  <int value="20" label="EXTENSION_BLACKLIST_UPDATE_DELETE"/>
  <int value="21" label="SIDE_EFFECT_FREE_WHITELIST_UPDATE_BEGIN"/>
  <int value="22" label="SIDE_EFFECT_FREE_WHITELIST_UPDATE_FINISH"/>
  <int value="23" label="SIDE_EFFECT_FREE_WHITELIST_DELETE"/>
  <int value="24" label="SIDE_EFFECT_FREE_WHITELIST_PREFIX_SET_READ"/>
  <int value="25" label="SIDE_EFFECT_FREE_WHITELIST_PREFIX_SET_WRITE"/>
  <int value="26" label="SIDE_EFFECT_FREE_WHITELIST_PREFIX_SET_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="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="SB3InterstitialDecision" 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="SB3InterstitialInteraction" 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"/>
</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"/>
</enum>

<enum name="SBClientDownloadExtensions" type="int">
  <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"/>
</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"/>
</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="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="SdchProblemCode" type="int">
  <summary>SDCH problem codes, listed in net/base/sdch_manager.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="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="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="DICTIONARY_IS_TOO_LARGE"/>
  <int value="35" label="DICTIONARY_COUNT_EXCEEDED"/>
  <int value="36" label="DICTIONARY_ALREADY_SCHEDULED_TO_DOWNLOAD"/>
  <int value="37" label="DICTIONARY_ALREADY_TRIED_TO_DOWNLOAD"/>
  <int value="38" label="DICTIONARY_FETCH_READ_FAILED"/>
  <int value="40" label="ATTEMPT_TO_DECODE_NON_HTTP_DATA"/>
  <int value="50" label="MULTIENCODING_FOR_NON_SDCH_REQUEST"/>
  <int value="51" label="SDCH_CONTENT_ENCODE_FOR_NON_SDCH_REQUEST"/>
  <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="DISCARD_TENTATIVE_SDCH"/>
  <int value="90" label="UNFLUSHED_CONTENT"/>
  <int value="91" label="MISSING_TIME_STATS"/>
  <int value="92" label="CACHE_DECODED"/>
  <int value="93" label="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"/>
</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="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="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"/>
</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="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="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="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="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="ShillTerminationActionResult" type="int">
  <summary>
    The termination action result types come from TerminationActionResult 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"/>
</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="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="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="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="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="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="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="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="SiteIsolationResourceType" type="int">
  <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"/>
</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."/>
</enum>

<enum name="SpdyProtocolVersion" type="int">
  <summary>
    |enum NextProto| values, with |kProtoSPDYMinimumVersion| subtracted.
  </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"/>
</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="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="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="266" label="SQLITE_IOERR_READ">Error reading from file</int>
  <int value="270" label="SQLITE_CANTOPEN_NOTEMPDIR">TBD</int>
  <int value="522" label="SQLITE_IOERR_SHORT_READ">Short read from file</int>
  <int value="778" label="SQLITE_IOERR_WRITE">
    Error writing to file (other than SQLITE_FULL)
  </int>
  <int value="1034" label="SQLITE_IOERR_FSYNC">Error syncing to disk</int>
  <int value="1290" label="SQLITE_IOERR_DIR_FSYNC">
    Error syncing directory changes to disk
  </int>
  <int value="1546" label="SQLITE_IOERR_TRUNCATE">Error truncating file</int>
  <int value="1802" label="SQLITE_IOERR_FSTAT">Error reading file metadata</int>
  <int value="2058" label="SQLITE_IOERR_UNLOCK">Error unlocking file</int>
  <int value="2314" label="SQLITE_IOERR_RDLOCK">
    Error getting read lock - should not be possible
  </int>
  <int value="2570" label="SQLITE_IOERR_DELETE">Error deleting file</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>
</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="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="SRTPromptUsage" type="int">
  <int value="0" label="Shown"/>
  <int value="1" label="Accepted"/>
  <int value="2" label="Denied"/>
</enum>

<enum name="SSLCaptivePortal" type="int">
  <int value="0"
      label="Chrome captive portal detection enabled
             (CAPTIVE_PORTAL_DETECTION_ENABLED)"/>
  <int value="1"
      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 0), the only
    difference is that it is for overridable errors.
  </int>
  <int value="2"
      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="3"
      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 2), the only
    difference is that it is for overridable errors.
  </int>
  <int value="4"
      label="Received no response or Non-HTTP login page
             (CAPTIVE_PORTAL_NO_RESPONSE)"/>
  <int value="5"
      label="Received no response or Non-HTTP login page on an overridable
             SSL error page (CAPTIVE_PORTAL_NO_RESPONSE_OVERRIDABLE)"/>
  <int value="6" label="Detected captive portal (CAPTIVE_PORTAL_DETECTED)"/>
  <int value="7"
      label="Detected captive portal on an overridable SSL error page
             (CAPTIVE_PORTAL_DETECTED_OVERRIDABLE)">
    This is a subset of CAPTIVE_PORTAL_DETECTED (bucket 6), 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"/>
</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_REVOKED"/>
  <int value="6" label="CERT_INVALID"/>
  <int value="7" label="CERT_WEAK_SIGNATURE_ALGORITHM"/>
  <int value="8" label="CERT_WEAK_KEY"/>
  <int value="9" label="UNKNOWN"/>
</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="SSLNonAttackCauses" type="int">
  <int value="0" label="CLOCK_PAST: System clock set early"/>
  <int value="1" label="CLOCK_FUTURE: System clock set late"/>
  <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 subdomian 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>
</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"/>
  <int value="13" label="PROCEED_INTERNAL_HOSTNAME"/>
  <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 (CAPTIVE_PORTAL_DETECTED)"/>
  <int value="24"
      label="Detected captive portal on an overridable SSL error page
             (DEPRECATED_CAPTIVE_PORTAL_DETECTED_OVERRIDABLE)"/>
</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="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="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="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"/>
</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="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="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="Enhanced Bookmarks"/>
</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="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="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="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="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"/>
</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="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="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="TrackedPreference" type="int">
  <int value="0" label="prefs::kShowHomeButton"/>
  <int value="1" label="prefs::kHomePageIsNewTabPage"/>
  <int value="2" label="prefs::kHomePage"/>
  <int value="3" label="prefs::kRestoreOnStartup"/>
  <int value="4" label="prefs::kURLsToRestoreOnStartup"/>
  <int value="5" label="extensions::pref_names::kExtensions"/>
  <int value="6" label="prefs::kGoogleServicesLastUsername"/>
  <int value="7" label="prefs::kSearchProviderOverrides"/>
  <int value="8" label="prefs::kDefaultSearchProviderSearchURL"/>
  <int value="9" label="prefs::kDefaultSearchProviderKeyword"/>
  <int value="10" label="prefs::kDefaultSearchProviderName"/>
  <int value="11" label="prefs::kPinnedTabs"/>
  <int value="12"
      label="extensions::pref_names::kKnownDisabled (Obsolete 07/2014)"/>
  <int value="13" label="prefs::kProfileResetPromptMemento"/>
  <int value="14"
      label="DefaultSearchManager::kDefaultSearchProviderDataPrefName"/>
  <int value="15" label="prefs::kPreferenceResetTime"/>
  <int value="16" label="prefs::kSafeBrowsingIncidentReportSent"/>
  <int value="17" label="sync_driver::prefs::kSyncRemainingRollbackTries"/>
</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="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="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"/>
</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="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="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="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"/>
</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="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"/>
  <int value="3" label="Seed Signature Verification Failed"/>
</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="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="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"/>
</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"/>
</enum>

<enum name="VideoPixelFormat" type="int">
  <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"/>
</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="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="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="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="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="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="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="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="WiFiApMode" type="int">
  <int value="0" label="Unknown"/>
  <int value="1" label="Managed"/>
  <int value="2" label="AdHoc"/>
</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="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"/>
</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="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="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="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="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="AutofillServerExperiments">
  <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="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="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="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="">
  <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="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="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="CrosFirstRunStep" separator="">
  <suffix name="AppList"/>
  <suffix name="Tray"/>
  <suffix name="Help"/>
  <affected-histogram name="CrosFirstRun.TimeSpentOnStep"/>
</histogram_suffixes>

<histogram_suffixes name="DataReductionProxy">
  <suffix name="DataReductionProxy"
      label="Only page loads through the data reduction proxy 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_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_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.HeaderTamperDetectionHTTPS"/>
  <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="DataReductionProxyBypassedBytes" separator=".">
  <suffix name="SSL" label="Bypass due to SSL"/>
  <suffix name="LocalBypassRules"
      label="Bypass due to client-side bypass rules"/>
  <suffix name="ManagedProxyConfig" label="Bypass due to a managed config"/>
  <suffix name="Current" label="Bypass due to explicit instruction"/>
  <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="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="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="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="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="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="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="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="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="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">
  <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="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="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.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"/>
</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."/>
</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.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="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.RendererTimeToPrimeLocalStorage"/>
</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="MediaVideoCaptureManagerTime" separator=".">
  <suffix name="OnEnumerateDevicesTime"
      label="Measures the time taken for OnEnumerateDevices()."/>
  <suffix name="OnOpenTime" label="Measures the time taken for OnOpen()."/>
  <suffix name="OnCloseTime" label="Measures the time taken for OnClose()."/>
  <suffix name="OnStartTime" label="Measures the time taken for OnStart()."/>
  <suffix name="OnStopTime" label="Measures the time taken for OnStop()."/>
  <affected-histogram name="Media.VideoCaptureManager"/>
</histogram_suffixes>

<histogram_suffixes name="Net.QuicClientHelloRejectReasons.QuicIsSecureOrNot"
    separator=".">
  <owner>rtenneti@chromium.org</owner>
  <suffix name="Insecure" label="for insecure QUIC."/>
  <suffix name="Secure" label="for secure QUIC."/>
  <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="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="NewTabPageProviders" separator=".">
  <suffix name="client" label="Suggestions coming from the client."/>
  <suffix name="client0" label="Suggestions coming from the client source 0."/>
  <suffix name="server" label="Suggestions coming from the server."/>
  <suffix name="server0" label="Suggestions coming from server source 0."/>
  <suffix name="server1" label="Suggestions coming from server source 1."/>
  <suffix name="server2" label="Suggestions coming from server source 2."/>
  <suffix name="server3" label="Suggestions coming from server source 3."/>
  <suffix name="server4" label="Suggestions coming from server source 4."/>
  <affected-histogram name="NewTabPage.MostVisited"/>
  <affected-histogram name="NewTabPage.SuggestionsImpression"/>
</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"/>
</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="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="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="PasswordManagerMonitor">
  <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.ProvisionalSaveFailure"/>
  <affected-histogram
      name="PasswordManager.SavePasswordPromptDisappearedQuickly"/>
  <affected-histogram name="PasswordManager.SavePasswordPromptDisplayed"/>
  <affected-histogram name="PasswordManager.SavePasswordPromptResponse"/>
</histogram_suffixes>

<histogram_suffixes name="PerformanceMonitor" separator=".">
  <suffix name="BrowserProcess"/>
  <suffix name="RendererProcess"/>
  <suffix name="PluginProcess"/>
  <suffix name="WorkerProcess"/>
  <suffix name="GPUProcess"/>
  <suffix name="PPAPIProcess"/>
  <affected-histogram name="PerformanceMonitor.AverageCPU"/>
  <affected-histogram name="PerformanceMonitor.HighCPU"/>
</histogram_suffixes>

<histogram_suffixes name="PermissionActions">
  <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"/>
  <affected-histogram name="ContentSettings.PermissionActions"/>
  <affected-histogram name="ContentSettings.PermissionActionsInsecureOrigin"/>
  <affected-histogram name="ContentSettings.PermissionActionsSecureOrigin"/>
</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.PpapiPluginLoadErrorCode"/>
  <affected-histogram name="Plugin.PpapiPluginLoadResult"/>
</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.JsonDataSizeKilobytes"/>
</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."/>
  <suffix name="exp2" label="Likelihood threshold experiment 2."/>
  <suffix name="exp3" label="Likelihood threshold experiment 3."/>
  <suffix name="exp4" label="Likelihood threshold experiment 4."/>
  <suffix name="exp5" label="Likelihood threshold experiment 5."/>
  <suffix name="exp6" label="Likelihood threshold experiment 6."/>
  <suffix name="exp7" label="Likelihood threshold experiment 7."/>
  <suffix name="exp8" label="Likelihood threshold experiment 8."/>
  <suffix name="exp9" label="Likelihood threshold experiment 9."/>
  <suffix name="gws" label="GWS triggered prerender."/>
  <suffix name="Instant" label="Instant search prerender."/>
  <suffix name="localpredictor" label="Local predictor triggered prerender."/>
  <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."/>
  <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="Profile.AndroidAccountManagementMenu" 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="GAIASignoutIncognito"
      label="GAIA-initiated interaction indicating a service type of Signout
             and go Incogntio"/>
  <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="GAIADefault"
      label="GAIA-initiated interaction indicating the default service type"/>
  <affected-histogram name="Profile.AndroidAccountManagementMenu"/>
</histogram_suffixes>

<histogram_suffixes name="Profile.DesktopMenu" 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
             Incogntio"/>
  <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="GAIADefault"
      label="GAIA-initiated interaction indicating the default service type"/>
  <affected-histogram name="Profile.DesktopMenu"/>
</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="ShortcutsProvider.QueryIndexTime"/>
</histogram_suffixes>

<histogram_suffixes name="QuicConnectionType" separator="">
  <owner>rch@chromium.org</owner>
  <suffix name="ForHTTP" label="Only insecure HTTP connections are counted."/>
  <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"/>
  <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="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"/>
</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="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."/>
  <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="SocketType">
  <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="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="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.Error"/>
  <affected-histogram name="Sqlite.SizeKB"/>
  <affected-histogram name="Sqlite.Version"/>
</histogram_suffixes>

<histogram_suffixes name="SSLFalseStart">
  <suffix name="FalseStart_enabled"/>
  <suffix name="FalseStart_disabled"/>
  <affected-histogram name="Net.SSL_Connection_Latency"/>
  <affected-histogram name="PLT.BeginToFinish_LinkLoadNormal"/>
  <affected-histogram name="PLT.BeginToFinish_NormalLoad"/>
</histogram_suffixes>

<histogram_suffixes name="SSLResumption">
  <suffix name="Resume_Handshake" label="Session Resumption"/>
  <suffix name="Full_Handshake" label="Full"/>
  <affected-histogram name="Net.SSL_Connection_Latency"/>
  <affected-histogram name="Net.SSL_Connection_Latency_Google"/>
</histogram_suffixes>

<histogram_suffixes name="StartupTimeBombAlarm" separator=".">
  <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="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="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="V8SpecialApps" separator=".">
  <suffix name="docs" label="Custom histogram for Google Docs and Drive"/>
  <suffix name="gmail" label="Custom histogram for GMail"/>
  <suffix name="plus" label="Custom histogram for Google+"/>
  <affected-histogram name="V8.MemoryExternalFragmentationTotal"/>
  <affected-histogram name="V8.MemoryHeapSampleTotalCommitted"/>
  <affected-histogram name="V8.MemoryHeapSampleTotalUsed"/>
</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="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_list>

</histogram-configuration>
