<!--
Copyright 2023 The Chromium Authors
Use of this source code is governed by a BSD-style license that can be
found in the LICENSE file.
-->

<!--

This file describes the enumerations referenced by entries in histograms.xml for
this directory. Some enums may instead be listed in the central enums.xml file
at src/tools/metrics/histograms/enums.xml when multiple files use them.

For best practices on writing enumerations descriptions, see
https://chromium.googlesource.com/chromium/src.git/+/HEAD/tools/metrics/histograms/README.md#Enum-Histograms

Please follow the instructions in the OWNERS file in this directory to find a
reviewer. If no OWNERS file exists, please consider signing up at
go/reviewing-metrics (Googlers only), as all subdirectories are expected to
have an OWNERS file. As a last resort you can send the CL to
chromium-metrics-reviews@google.com.
-->

<histogram-configuration>

<!-- Enum types -->

<enums>

<enum name="AdSamplerTriggerAction">
  <int value="0" label="The trigger was activated"/>
  <int value="1" label="An ad was found and data was collected"/>
  <int value="2"
      label="An ad was found but no sample taken to limit frequency"/>
  <int value="3" label="No ad was found"/>
  <int value="4" label="An ad was found but data collection was rejected"/>
</enum>

<enum name="AdvancedProtectionEnabledStatus">
  <int value="0" label="Advanced Protection enabled status unknown"/>
  <int value="1" label="User not signed-in or isn't under Advanced Protection"/>
  <int value="2" label="User is signed in and under Advanced Protection"/>
  <int value="3"
      label="User was under Advanced Protection but disabled it or signed out"/>
  <int value="4"
      label="User was signed out or wasn't under Advanced Protection but now
             is"/>
</enum>

<!-- LINT.IfChange(AllowlistAsyncMatchResult) -->

<enum name="AllowlistAsyncMatchResult">
  <int value="0" label="Match"/>
  <int value="1" label="No match"/>
  <int value="2" label="Timeout"/>
</enum>

<!-- LINT.ThenChange(//components/safe_browsing/core/browser/db/allowlist_checker_client.h:AllowlistAsyncMatchResult) -->

<enum name="AndroidRealTimeIsInAllowlistResult">
  <int value="0" label="NO"/>
  <int value="1" label="YES"/>
  <int value="2" label="ALLOWLIST_UNAVAILABLE"/>
</enum>

<enum name="AndroidRealTimePopulateAllowlistResult">
  <int value="0" label="SUCCESS"/>
  <int value="1" label="FAILED_EMPTY"/>
  <int value="2" label="FAILED_PROTO_PARSE"/>
  <int value="3" label="FAILED_MISSING_URL_HASHES"/>
  <int value="4" label="FAILED_MISSING_VERSION_ID"/>
  <int value="5" label="FAILED_MISSING_SCHEME_ID"/>
  <int value="6" label="FAILED_EMPTY_URL_HASHES"/>
  <int value="7" label="FAILED_DANGLING_HASH"/>
  <int value="8" label="SKIPPED_OLD_VERSION_ID"/>
  <int value="9" label="SKIPPED_EQUAL_VERSION_ID"/>
  <int value="10" label="SKIPPED_INVALID_SCHEME_ID"/>
  <int value="11" label="FAILED_HASH_LENGTH_EXCEEDS_MAX"/>
  <int value="12" label="FAILED_TOO_FEW_ALLOWLIST_ENTRIES"/>
</enum>

<enum name="ApkDownloadTelemetryIncompleteReason">
  <int value="0" label="MISSING_WEB_CONTENTS"/>
  <int value="1" label="SB_NAVIGATION_MANAGER_NOT_READY"/>
  <int value="2" label="COMPLETE"/>
  <int value="3" label="MISSING_RENDER_FRAME_HOST"/>
  <int value="4" label="RENDER_FRAME_HOST_INVALID_URL"/>
</enum>

<enum name="ApkDownloadTelemetryOutcome">
  <int value="0" label="NOT_SENT_SAFE_BROWSING_NOT_ENABLED"/>
  <int value="1" label="NOT_SENT_MISSING_WEB_CONTENTS"/>
  <int value="2" label="NOT_SENT_INCOGNITO"/>
  <int value="3" label="NOT_SENT_EXTENDED_REPORTING_DISABLED"/>
  <int value="4" label="NOT_SENT_DOWNLOAD_CANCELLED"/>
  <int value="5" label="NOT_SENT_FAILED_TO_SERIALIZE"/>
  <int value="6" label="NOT_SENT_FEATURE_NOT_ENABLED"/>
  <int value="7" label="SENT"/>
  <int value="8" label="NOT_SENT_UNCONSENTED"/>
</enum>

<!-- LINT.IfChange(ApplicationAdvancedProtectionEvent) -->

<enum name="ApplicationAdvancedProtectionEvent">
  <int value="0" label="Detector initialized"/>
  <int value="1" label="Profile added"/>
  <int value="2" label="Profile removed"/>
  <int value="3" label="Profile Advanced Protection status changed"/>
</enum>

<!-- LINT.ThenChange(//chrome/browser/safe_browsing/application_advanced_protection_status_detector.h:ApplicationAdvancedProtectionEvent)-->

<enum name="BooleanBackoff">
  <int value="0" label="No backoff"/>
  <int value="1" label="Backoff mode enabled"/>
</enum>

<enum name="BooleanHasKey">
  <int value="0" label="Lacks key"/>
  <int value="1" label="Has key"/>
</enum>

<enum name="BooleanHasToken">
  <int value="0" label="Lacks token"/>
  <int value="1" label="Has token"/>
</enum>

<enum name="BooleanIneligible">
  <int value="0" label="Eligible"/>
  <int value="1" label="Ineligible"/>
</enum>

<enum name="BooleanManagedPref">
  <int value="0" label="Unmanaged Pref"/>
  <int value="1" label="Managed Pref"/>
</enum>

<enum name="BooleanRepeatVisit">
  <int value="0" label="Never visited before"/>
  <int value="1" label="Visited before"/>
</enum>

<enum name="BooleanSafeBrowsingApiUnknownException">
  <int value="0" label="Known exception"/>
  <int value="1" label="Unknown exception"/>
</enum>

<enum name="BooleanSameURL">
  <int value="0" label="Different URL"/>
  <int value="1" label="Same URL"/>
</enum>

<enum name="BooleanSubsequentResponse">
  <int value="0" label="Initial Response"/>
  <int value="1" label="Subsequent Response"/>
</enum>

<enum name="BooleanTabIsSplit">
  <int value="0" label="Tab not split"/>
  <int value="1" label="Tab is split"/>
</enum>

<enum name="BooleanTransferred">
  <int value="0" label="Did not transfer"/>
  <int value="1" label="Transferred"/>
</enum>

<enum name="BooleanUnavailable">
  <int value="0" label="Available"/>
  <int value="1" label="Unavailable"/>
</enum>

<enum name="ClientReportPersistDownloadReportResult">
  <int value="0" label="kPersistTaskPosted"/>
  <int value="1" label="kSerializationError"/>
  <int value="2" label="kEmptyReport"/>
</enum>

<enum name="ClientReportPersisterWriteResult">
  <int value="0" label="kSuccess"/>
  <int value="1" label="kFailedCreateDirectory"/>
  <int value="2" label="kFailedWriteFile"/>
</enum>

<!-- LINT.IfChange(ClientSafeBrowsingReportType) -->

<enum name="ClientSafeBrowsingReportType">
  <int value="0" label="Unknown"/>
  <int value="1" label="URL phishing"/>
  <int value="2" label="URL malware"/>
  <int value="3" label="URL unwanted"/>
  <int value="4" label="URL client side phishing"/>
  <int value="5" label="URL client side malware"/>
  <int value="6" label="dangerous download recovery"/>
  <int value="7" label="dangerous download warning"/>
  <int value="10" label="dangerous download by API"/>
  <int value="12" label="URL password protection phishing"/>
  <int value="13" label="dangerous download opened"/>
  <int value="14" label="Ad sample"/>
  <int value="15" label="URL suspicious"/>
  <int value="16" label="URL billing"/>
  <int value="17" label="APK download"/>
  <int value="19" label="Blocked Ad redirect"/>
  <int value="20" label="Blocked Ad popup"/>
  <int value="21" label="Hash-prefix real-time experiment"/>
  <int value="22" label="Phishy site interactions"/>
  <int value="23" label="Safe Browsing warning shown to user"/>
  <int value="24" label="Abusive notification permission accepted"/>
  <int value="25" label="dangerous download auto deleted"/>
  <int value="26" label="dangerous download canceled on profile closure"/>
  <int value="27" label="URL real-time and hash real-time discrepancy"/>
  <int value="28" label="External app redirect"/>
  <int value="29" label="dangerous download warning (Android)"/>
  <int value="30" label="Service worker behaviors"/>
</enum>

<!-- LINT.ThenChange(//components/safe_browsing/core/common/proto/csd.proto:ClientSafeBrowsingReportType) -->

<!-- LINT.IfChange(ConvertExtensionBlocklistV4ToV5Result) -->

<enum name="ConvertExtensionBlocklistV4ToV5Result">
  <int value="0" label="Success"/>
  <int value="1" label="Failed to read V4 hash file"/>
  <int value="2" label="Invalid hash file size"/>
  <int value="3" label="Invalid extension ID"/>
  <int value="4" label="Failed to write V5 hash file"/>
  <int value="5" label="V4ChecksumMismatch"/>
</enum>

<!-- LINT.ThenChange(//components/safe_browsing/core/browser/db/v5_store.h:ConvertExtensionBlocklistV4ToV5Result) -->

<!-- LINT.IfChange(ConvertExtensionBlocklistV5ToV4Result) -->

<enum name="ConvertExtensionBlocklistV5ToV4Result">
  <int value="0" label="Success"/>
  <int value="1" label="Failed to read V5 hash file"/>
  <int value="2" label="Invalid hash file size"/>
  <int value="3" label="Failed to write V4 hash file"/>
  <int value="4" label="V5ChecksumMismatch"/>
</enum>

<!-- LINT.ThenChange(//components/safe_browsing/core/browser/db/v4_store.h:ConvertExtensionBlocklistV5ToV4Result) -->

<enum name="DisplayPersistentNotificationEvents">
  <int value="0" label="Request to display persistent notification"/>
  <int value="1" label="Finished displaying persistent notification"/>
</enum>

<!-- LINT.IfChange(NotificationRevocationSource) -->

<enum name="NotificationRevocationSource">
  <int value="0" label="Social engineering blocklist"/>
  <int value="1" label="Safe Browsing unwanted notification revocation"/>
  <int value="2" label="Standard one tap unsubscribe"/>
  <int value="3" label="One tap unsubscribe after suspicious content warning"/>
  <int value="4" label="Disruptive auto-revocation"/>
  <int value="5" label="User manually changed site setting"/>
  <int value="6" label="Unknown"/>
  <int value="7" label="Suspicious content auto-revocation"/>
</enum>

<!-- LINT.ThenChange(//components/safe_browsing/core/browser/safe_browsing_metrics_collector.h:NotificationRevocationSource) -->

<enum name="SafeBrowsingAllowlistAsyncMatch">
  <int value="0" label="ASYNC"/>
  <int value="1" label="MATCH"/>
  <int value="2" label="NO_MATCH"/>
</enum>

<enum name="SafeBrowsingApiExceptionStatusCode">
  <int value="-1" label="SUCCESS_CACHE"/>
  <int value="0" label="SUCCESS"/>
  <int value="4" label="SIGN_IN_REQUIRED"/>
  <int value="5" label="INVALID_ACCOUNT"/>
  <int value="6" label="RESOLUTION_REQUIRED"/>
  <int value="7" label="NETWORK_ERROR"/>
  <int value="8" label="INTERNAL_ERROR"/>
  <int value="10" label="DEVELOPER_ERROR"/>
  <int value="13" label="ERROR"/>
  <int value="14" label="INTERRUPTED"/>
  <int value="15" label="TIMEOUT"/>
  <int value="16" label="CANCELED"/>
  <int value="17" label="API_NOT_CONNECTED"/>
  <int value="19" label="REMOTE_EXCEPTION"/>
  <int value="20" label="CONNECTION_SUSPENDED_DURING_CALL"/>
  <int value="21" label="RECONNECTION_TIMED_OUT_DURING_UPDATE"/>
  <int value="22" label="RECONNECTION_TIMED_OUT"/>
</enum>

<enum name="SafeBrowsingApiJavaValidationResult">
  <int value="0" label="valid"/>
  <int value="1" label="valid, but has unrecognized response status"/>
  <int value="2" label="invalid due to unrecognized lookup result"/>
  <int value="3" label="invalid due to unrecognized threat type"/>
  <int value="4" label="invalid due to unrecognized threat attribute"/>
</enum>

<enum name="SafeBrowsingApiLookupResult">
  <int value="0" label="success"/>
  <int value="1" label="general failure"/>
  <int value="2" label="API call timed out"/>
  <int value="3" label="API unsupported (GMSCore outdated)"/>
  <int value="4" label="API not available (API not supported on device)"/>
  <int value="5"
      label="API handler is null. Should never happen in production."/>
</enum>

<enum name="SafeBrowsingApiResponseStatus">
  <int value="0" label="SUCCESS_WITH_LOCAL_BLOCKLIST"/>
  <int value="1" label="SUCCESS_WITH_REAL_TIME"/>
  <int value="2" label="SUCCESS_FALLBACK_REAL_TIME_TIMEOUT"/>
  <int value="3" label="SUCCESS_FALLBACK_REAL_TIME_THROTTLED"/>
  <int value="4" label="FAILURE_NETWORK_UNAVAILABLE"/>
  <int value="5" label="FAILURE_BLOCK_LIST_UNAVAILABLE"/>
  <int value="6" label="FAILURE_INVALID_URL"/>
</enum>

<enum name="SafeBrowsingApiThreatAttribute">
  <int value="1" label="CANARY"/>
  <int value="2" label="FRAME_ONLY"/>
</enum>

<enum name="SafeBrowsingApiThreatType">
  <int value="0" label="NO_THREAT"/>
  <int value="2" label="SOCIAL_ENGINEERING"/>
  <int value="3" label="UNWANTED_SOFTWARE"/>
  <int value="4" label="POTENTIALLY_HARMFUL_APPLICATION"/>
  <int value="15" label="BILLING"/>
  <int value="20" label="ABUSIVE_EXPERIENCE_VIOLATION"/>
  <int value="21" label="BETTER_ADS_VIOLATION"/>
</enum>

<enum name="SafeBrowsingAppOptIn">
  <int value="0" label="No opt-in preference in manifest"/>
  <int value="1" label="Explicit opt-in via manifest"/>
  <int value="2" label="Explicit opt-out via manifest"/>
</enum>

<enum name="SafeBrowsingAttributionResultTypes">
  <int value="1" label="SUCCESS"/>
  <int value="2" label="SUCCESS_LANDING_PAGE"/>
  <int value="3" label="SUCCESS_LANDING_REFERRER"/>
  <int value="4" label="INVALID_URL"/>
  <int value="5" label="NAVIGATION_EVENT_NOT_FOUND"/>
  <int value="6" label="SUCCESS_REFERRER"/>
</enum>

<enum name="SafeBrowsingBinaryUploadResult">
  <int value="0" label="Unknown"/>
  <int value="1" label="Success"/>
  <int value="2" label="Upload failure"/>
  <int value="3" label="Timeout"/>
  <int value="4" label="File too large"/>
  <int value="5" label="Failed to get token"/>
  <int value="6" label="Unauthorized"/>
  <int value="7" label="File encrypted"/>
  <int value="8" label="Unsupported file type"/>
  <int value="9" label="Too many requests"/>
  <int value="10" label="Incomplete response"/>
  <int value="11" label="Cancelled"/>
</enum>

<enum name="SafeBrowsingCheckUrlAction">
  <int value="0" label="URL was checked."/>
  <int value="1" label="URL was classified as unsafe."/>
</enum>

<!-- LINT.IfChange(SafeBrowsingRtDnsResolutionResult) -->

<enum name="SafeBrowsingDnsResolutionResult">
  <int value="0" label="Success"/>
  <int value="1" label="Timeout"/>
  <int value="2" label="Error"/>
  <int value="3" label="Skipped"/>
</enum>

<!-- LINT.ThenChange(//components/safe_browsing/core/browser/realtime/url_lookup_service_base.h:DnsResolutionResult) -->

<enum name="SafeBrowsingEnhancedProtegoPingType">
  <int value="0" label="UnknownType"/>
  <int value="1" label="None"/>
  <int value="2" label="WithToken"/>
  <int value="3" label="WithoutToken"/>
</enum>

<!-- LINT.IfChange(SafeBrowsingEsbDownloadRowPromoOutcome) -->

<enum name="SafeBrowsingEsbDownloadRowPromoOutcome">
  <int value="0" label="Shown"/>
  <int value="1" label="Clicked"/>
</enum>

<!-- LINT.ThenChange(//chrome/browser/ui/webui/downloads/downloads_dom_handler.h:SafeBrowsingEsbDownloadRowPromoOutcome) -->

<enum name="SafeBrowsingHPRTOperationOutcome">
  <int value="0" label="Success"/>
  <int value="1" label="Parse response error"/>
  <int value="2" label="No cache duration in response"/>
  <int value="3" label="Incorrect full hash length in response"/>
  <int value="4" label="Retriable error"/>
  <int value="5" label="Network error"/>
  <int value="6" label="HTTP error"/>
  <int value="7" label="Bug: Reached NOTREACHED code"/>
  <int value="8" label="Result found in local cache"/>
  <int value="9" label="Service is in backoff mode"/>
  <int value="10" label="OHTTP key fetch failed"/>
  <int value="11" label="(Deprecated) No OHTTP key service"/>
</enum>

<enum name="SafeBrowsingJsOptimizerSetting">
  <int value="0" label="Blocked"/>
  <int value="1" label="Allowed"/>
  <int value="2" label="Blocked for unfamiliar sites"/>
</enum>

<enum name="SafeBrowsingKeyFetchOutcome">
  <int value="0" label="Success"/>
  <int value="1" label="Network error"/>
  <int value="2" label="Empty response"/>
  <int value="3" label="Invalid response"/>
  <int value="4" label="No keys"/>
</enum>

<enum name="SafeBrowsingOhttpFetchKeyTriggerReason">
  <int value="0" label="DuringHashRealTimeLookup"/>
  <int value="1" label="AsyncFetch"/>
  <int value="2" label="KeyRelatedHttpErrorCode"/>
  <int value="3" label="(Obsolete) KeyRotatedHeader"/>
</enum>

<enum name="SafeBrowsingPageLoadTokenClearReason">
  <int value="0" label="Safe Browsing state changed"/>
  <int value="1" label="Cookies deleted"/>
  <int value="2" label="Sync state changed"/>
</enum>

<enum name="SafeBrowsingParseV4HashResult">
  <int value="0" label="PARSE_FROM_STRING_ERROR"/>
  <int value="1" label="UNEXPECTED_THREAT_ENTRY_TYPE_ERROR"/>
  <int value="2" label="UNEXPECTED_THREAT_TYPE_ERROR"/>
  <int value="3" label="UNEXPECTED_PLATFORM_TYPE_ERROR"/>
  <int value="4" label="NO_METADATA_ERROR"/>
  <int value="5" label="INCONSISTENT_THREAT_TYPE_ERROR"/>
  <int value="6" label="UNEXPECTED_METADATA_VALUE_ERROR"/>
  <int value="7" label="NO_THREAT_ERROR"/>
</enum>

<enum name="SafeBrowsingParseV4UpdateResult">
  <int value="0" label="PARSE_FROM_STRING_ERROR"/>
  <int value="1" label="NO_PLATFORM_TYPE_ERROR"/>
  <int value="2" label="NO_THREAT_ENTRY_TYPE_ERROR"/>
  <int value="3" label="NO_THREAT_TYPE_ERROR"/>
  <int value="4" label="NO_STATE_ERROR"/>
</enum>

<enum name="SafeBrowsingReferralMethod">
  <int value="0" label="SECURITY_INTERSTITIAL"/>
  <int value="1" label="SAFETY_CHECK"/>
  <int value="2" label="PROMOSLINGER_REFERRAL"/>
  <int value="3" label="DOWNLOAD_BUBBLE_SUBPAGE"/>
  <int value="4" label="DOWNLOAD_BUTTON_IPH_PROMO"/>
  <int value="5" label="DOWNLOAD_PAGE_ROW_PROMO"/>
</enum>

<enum name="SafeBrowsingRTConsumerVersionReason">
  <int value="0" label="Total checks"/>
  <int value="1" label="[Deprecated] Off the record"/>
  <int value="2" label="No valid DM token"/>
  <int value="3" label="Policy not set"/>
  <int value="4" label="Incognito"/>
</enum>

<enum name="SafeBrowsingRTLookupResponseVerdictType">
  <int value="0" label="VERDICT_TYPE_UNSPECIFIED"/>
  <int value="1" label="SAFE"/>
  <int value="50" label="SUSPICIOUS"/>
  <int value="75" label="WARN"/>
  <int value="100" label="DANGEROUS"/>
</enum>

<enum name="SafeBrowsingSecuritySettingsBundle">
  <int value="0" label="Standard"/>
  <int value="1" label="Enhanced"/>
</enum>

<enum name="SafeBrowsingSettingsUserAction">
  <int value="0" label="Settings page showed."/>
  <int value="1" label="Enhanced protection button clicked."/>
  <int value="2" label="Standard protection button clicked."/>
  <int value="3" label="Disable Safe Browsing button clicked."/>
  <int value="4" label="Enhanced protection expand arrow clicked."/>
  <int value="5" label="Standard protection expand arrow clicked."/>
  <int value="6" label="Disable Safe Browsing dialog confirmed."/>
  <int value="7" label="Disable Safe Browsing dialog denied."/>
</enum>

<enum name="SafeBrowsingState">
  <int value="0" label="Safe Browsing disabled."/>
  <int value="1" label="Standard protection."/>
  <int value="2" label="Enhanced protection."/>
</enum>

<enum name="SafeBrowsingTailoredSecurityNotificationResult">
  <int value="0" label="Unknown"/>
  <int value="1" label="Shown"/>
  <int value="2" label="OBSOLETE_AccountNotConsented"/>
  <int value="3" label="EnhancedProtectionAlreadyEnabled"/>
  <int value="4" label="NoWebContentsAvailable"/>
  <int value="5" label="SafeBrowsingControlledByPolicy"/>
  <int value="6" label="NoBrowserAvailable"/>
  <int value="7" label="NoBrowserWindowAvailable"/>
  <int value="8" label="OBSOLETE_PreferencesNotSynced"/>
  <int value="9" label="HistoryNotSynced"/>
</enum>

<enum name="SafeBrowsingTailoredSecurityOutcome">
  <int value="0" label="Accepted"/>
  <int value="1" label="Dismissed"/>
  <int value="2" label="Settings"/>
  <int value="3" label="Shown"/>
  <int value="4" label="Rejected"/>
  <int value="5" label="ClosedByAnotherDialog"/>
</enum>

<enum name="SafeBrowsingTailoredSecurityShouldRetryOutcome">
  <int value="0" label="UnknownType"/>
  <int value="1" label="RetryNeededDoRetry"/>
  <int value="2" label="RetryNeededKeepWaiting"/>
  <int value="3" label="UnsetInitializeWaitingPeriod"/>
  <int value="4" label="UnsetRetryBecauseDoneWaiting"/>
  <int value="5" label="UnsetStillWaiting"/>
</enum>

<!-- LINT.IfChange(SafeBrowsingUpdateCategory) -->

<enum name="SafeBrowsingUpdateCategory">
  <int value="0" label="Post-migration partial update"/>
  <int value="1" label="Post-migration full update"/>
  <int value="2" label="New database partial update"/>
  <int value="3" label="New database full update"/>
  <int value="4" label="Regular partial update"/>
  <int value="5" label="Regular full update"/>
</enum>

<!-- LINT.ThenChange(//components/safe_browsing/core/browser/db/sb_store.h:SafeBrowsingUpdateCategory) -->

<enum name="SafeBrowsingUrlScheme">
  <int value="0" label="Unknown scheme"/>
  <int value="1" label="about"/>
  <int value="2" label="blob"/>
  <int value="3" label="content"/>
  <int value="4" label="cid"/>
  <int value="5" label="data"/>
  <int value="6" label="file"/>
  <int value="7" label="filesystem"/>
  <int value="8" label="ftp"/>
  <int value="9" label="http"/>
  <int value="10" label="https"/>
  <int value="11" label="javascript"/>
  <int value="12" label="mailto"/>
  <int value="13" label="quic-transport"/>
  <int value="14" label="tel"/>
  <int value="15" label="urn"/>
  <int value="16" label="uuid-in-package"/>
  <int value="17" label="webcal"/>
  <int value="18" label="ws"/>
  <int value="19" label="wss"/>
  <int value="20" label="isolated-app"/>
  <int value="21" label="chrome-native"/>
  <int value="22" label="chrome-search"/>
  <int value="23" label="devtools"/>
  <int value="24" label="chrome-error"/>
  <int value="25" label="chrome"/>
  <int value="26" label="chrome-untrusted"/>
  <int value="27" label="chrome-guest"/>
  <int value="28" label="view-source"/>
  <int value="29" label="externalfile"/>
  <int value="30" label="android-app"/>
  <int value="31" label="googlechrome"/>
  <int value="32" label="android-webview-video-poster"/>
  <int value="33" label="chrome-distiller"/>
  <int value="34" label="chrome-extension"/>
</enum>

<enum name="SafeBrowsingUserPopulation">
  <int value="0" label="Unknown user"/>
  <int value="1" label="Safe browsing user"/>
  <int value="2" label="Extended reporting user"/>
  <int value="3" label="Enhanced protection user"/>
</enum>

<enum name="SafeBrowsingV4ApplyUpdateResult">
  <int value="0" label="APPLY_UPDATE_SUCCESS"/>
  <int value="1" label="UNEXPECTED_APPLY_UPDATE_FAILURE"/>
  <int value="2" label="PREFIX_SIZE_TOO_SMALL_FAILURE"/>
  <int value="3" label="PREFIX_SIZE_TOO_LARGE_FAILURE"/>
  <int value="4" label="ADDITIONS_SIZE_UNEXPECTED_FAILURE"/>
  <int value="5" label="ADDITIONS_HAS_EXISTING_PREFIX_FAILURE"/>
  <int value="6" label="UNEXPECTED_RESPONSE_TYPE_FAILURE"/>
  <int value="7" label="REMOVALS_INDEX_TOO_LARGE_FAILURE"/>
  <int value="8" label="RICE_DECODING_FAILURE"/>
  <int value="9" label="UNEXPECTED_COMPRESSION_TYPE_ADDITIONS_FAILURE"/>
  <int value="10" label="UNEXPECTED_COMPRESSION_TYPE_REMOVALS_FAILURE"/>
  <int value="11" label="CHECKSUM_MISMATCH_FAILURE"/>
  <int value="12" label="MMAP_FAILURE"/>
  <int value="13" label="READ_FAILURE_NOT_SORTED"/>
  <int value="14" label="REMOVALS_INDEX_NEGATIVE_FAILURE"/>
</enum>

<enum name="SafeBrowsingV4DecodeResult">
  <int value="0" label="DECODE_SUCCESS"/>
  <int value="1" label="DECODE_NO_MORE_ENTRIES_FAILURE"/>
  <int value="2" label="DECODE_REQUESTED_TOO_MANY_BITS_FAILURE"/>
  <int value="3" label="DECODE_RAN_OUT_OF_BITS_FAILURE"/>
  <int value="4" label="NUM_ENTRIES_NEGATIVE_FAILURE"/>
  <int value="5" label="RICE_PARAMETER_NON_POSITIVE_FAILURE"/>
  <int value="6" label="ENCODED_DATA_UNEXPECTED_EMPTY_FAILURE"/>
  <int value="7" label="DECODED_INTEGER_OVERFLOW_FAILURE"/>
</enum>

<enum name="SafeBrowsingV4FullHashCacheResult">
  <int value="0" label="FULL_HASH_CACHE_MISS"/>
  <int value="1" label="FULL_HASH_CACHE_HIT"/>
  <int value="2" label="FULL_HASH_NEGATIVE_CACHE_HIT"/>
</enum>

<enum name="SafeBrowsingV4GetHashCheckResult">
  <int value="0" label="GET_HASH_CHECK_EMPTY"/>
  <int value="1" label="GET_HASH_CHECK_HIT"/>
  <int value="2" label="GET_HASH_CHECK_MISS"/>
</enum>

<enum name="SafeBrowsingV4OperationResult">
  <int value="0" label="STATUS_200"/>
  <int value="1" label="PARSE_ERROR (subset of STATUS_200)"/>
  <int value="2" label="NETWORK_ERROR"/>
  <int value="3" label="HTTP_ERROR"/>
  <int value="4" label="BACKOFF_ERROR"/>
  <int value="5" label="MIN_WAIT_DURATION_ERROR"/>
  <int value="6" label="ALREADY_PENDING_ERROR"/>
  <int value="7" label="RETRIABLE_NETWORK_ERROR"/>
  <int value="8" label="RETRIABLE_HTTP_ERROR"/>
</enum>

<enum name="SafeBrowsingV4StoreReadResult">
  <int value="0" label="READ_SUCCESS"/>
  <int value="1" label="UNEXPECTED_READ_FAILURE"/>
  <int value="2" label="FILE_UNREADABLE_FAILURE"/>
  <int value="3" label="FILE_EMPTY_FAILURE"/>
  <int value="4" label="PROTO_PARSING_FAILURE"/>
  <int value="5" label="UNEXPECTED_MAGIC_NUMBER_FAILURE"/>
  <int value="6" label="FILE_VERSION_TOO_LOW_FAILURE"/>
  <int value="7" label="HASH_PREFIX_INFO_MISSING_FAILURE"/>
  <int value="8" label="HASH_PREFIX_MAP_GENERATION_FAILURE"/>
  <int value="9" label="MIGRATION_FAILURE"/>
  <int value="10" label="PRE_MMAP_MIGRATION_FILE_FORMAT_FAILURE"/>
  <int value="11" label="V5_TO_V4_MIGRATION_FAILURE"/>
  <int value="12" label="V5_TO_V4_MIGRATION_WIPED_SUCCESSFULLY"/>
</enum>

<enum name="SafeBrowsingV4StoreWriteResult">
  <int value="0" label="WRITE_SUCCESS"/>
  <int value="1" label="UNEXPECTED_WRITE_FAILURE"/>
  <int value="2" label="INVALID_RESPONSE_TYPE_FAILURE"/>
  <int value="3" label="UNEXPECTED_BYTES_WRITTEN_FAILURE"/>
  <int value="4" label="UNABLE_TO_RENAME_FAILURE"/>
</enum>

<!-- LINT.IfChange(SafeBrowsingV4UpdateType) -->

<enum name="SafeBrowsingV4UpdateType">
  <int value="0" label="Invalid update"/>
  <int value="1" label="Full update"/>
  <int value="2" label="Partial update"/>
</enum>

<!-- LINT.ThenChange(//components/safe_browsing/core/browser/db/v4_store.h:ApplyUpdateType) -->

<!-- LINT.IfChange(SafeBrowsingV5ApplyUpdateResult) -->

<enum name="SafeBrowsingV5ApplyUpdateResult">
  <int value="0" label="Unknown"/>
  <int value="1" label="Success"/>
  <int value="2" label="MmapFailure"/>
  <int value="3" label="FileSizeNotMultipleOfPrefixSize"/>
  <int value="4" label="ChecksumMismatchFailure"/>
  <int value="5" label="RiceDecodingAdditionsFailure"/>
  <int value="6" label="RiceDecodingRemovalsFailure"/>
  <int value="7" label="AdditionsHasExistingPrefixFailure"/>
  <int value="8" label="RemovalsIndexTooLargeFailure"/>
  <int value="9" label="WriteFailure"/>
</enum>

<!-- LINT.ThenChange(//components/safe_browsing/core/browser/db/hash_prefix_list.h:V5ApplyUpdateResult) -->

<!-- LINT.IfChange(SafeBrowsingV5DecodeResult) -->

<enum name="SafeBrowsingV5DecodeResult">
  <int value="0" label="Success"/>
  <int value="1" label="PrefixAccumulationOverflow"/>
  <int value="2" label="RanOutOfBits"/>
  <int value="3" label="QuotientTooLarge"/>
</enum>

<!-- LINT.ThenChange(//components/safe_browsing/core/browser/db/v5_rice.h:V5DecodeResult) -->

<!-- LINT.IfChange(SafeBrowsingV5GetHashOperationOutcome) -->

<enum name="SafeBrowsingV5GetHashOperationOutcome">
  <int value="0" label="Success"/>
  <int value="1" label="NetworkError"/>
  <int value="2" label="HttpError"/>
  <int value="3" label="ParseError"/>
  <int value="4" label="BackoffError"/>
  <int value="5" label="LocalCacheHit"/>
  <int value="6" label="RetriableError"/>
</enum>

<!-- LINT.ThenChange(//components/safe_browsing/core/browser/db/v5_get_hash_protocol_manager.h:V5GetHashOperationOutcome) -->

<!-- LINT.IfChange(SafeBrowsingV5GetHashParseFailureReason) -->

<enum name="SafeBrowsingV5GetHashParseFailureReason">
  <int value="1" label="NetworkError"/>
  <int value="2" label="HttpError"/>
  <int value="3" label="RetriableError"/>
  <int value="4" label="ParseError"/>
  <int value="5" label="NoCacheDurationError"/>
  <int value="6" label="IncorrectFullHashLengthError"/>
</enum>

<!-- LINT.ThenChange(//components/safe_browsing/core/browser/db/v5_search_hashes_util.h:V5GetHashParseFailureReason) -->

<!-- LINT.IfChange(SafeBrowsingV5InputValidationResult) -->

<enum name="SafeBrowsingV5InputValidationResult">
  <int value="0" label="Success"/>
  <int value="1" label="NegativeNumEntries"/>
  <int value="2" label="RiceParameterTooSmall"/>
  <int value="3" label="RiceParameterTooLarge"/>
</enum>

<!-- LINT.ThenChange(//components/safe_browsing/core/browser/db/v5_rice.h:V5InputValidationResult) -->

<!-- LINT.IfChange(SafeBrowsingV5StoreReadResult) -->

<enum name="SafeBrowsingV5StoreReadResult">
  <int value="0" label="ReadSuccess"/>
  <int value="1" label="UnexpectedReadFailure"/>
  <int value="2" label="FileOpenFailure"/>
  <int value="3" label="FileEmptyFailure"/>
  <int value="4" label="ProtoParsingFailure"/>
  <int value="5" label="UnexpectedMagicNumberFailure"/>
  <int value="6" label="FileVersionIncompatibleFailure"/>
  <int value="7" label="HashPrefixInfoMissingFailure"/>
  <int value="8" label="HashPrefixListGenerationFailure"/>
  <int value="9" label="FileReadFailure"/>
  <int value="10" label="V4ToV5MigrationFailure"/>
  <int value="11" label="V4ToV5MigrationWipedSuccessfully"/>
</enum>

<!-- LINT.ThenChange(//components/safe_browsing/core/browser/db/sb_store.h:V5StoreReadResult) -->

<!-- LINT.IfChange(SafeBrowsingV5StoreWriteResult) -->

<enum name="SafeBrowsingV5StoreWriteResult">
  <int value="0" label="WriteSuccess"/>
  <int value="1" label="UnexpectedWriteFailure"/>
  <int value="2" label="UnexpectedBytesWrittenFailure"/>
  <int value="3" label="UnableToRenameFailure"/>
</enum>

<!-- LINT.ThenChange(//components/safe_browsing/core/browser/db/v5_store.h:V5StoreWriteResult) -->

<!-- LINT.IfChange(V5ToV4MigrationResult) -->

<enum name="SafeBrowsingV5ToV4MigrationResult">
  <int value="0" label="DiskAlreadyV4"/>
  <int value="1" label="V5ToV4MigrationSucceeded"/>
  <int value="2" label="V5StoreNotFound"/>
  <int value="3" label="ReadV5Failed"/>
  <int value="4" label="PrefixSizeMismatchFailure"/>
  <int value="5" label="HashFileMissingFailure"/>
  <int value="6" label="RenameHashFileFailure"/>
  <int value="7" label="WriteV4FileFailure"/>
  <int value="8" label="RenameV4StoreFileFailure"/>
  <int value="9" label="ProtoSerializationFailure"/>
  <int value="10" label="StoreIneligibleWipeFailed"/>
  <int value="11" label="StoreIneligibleWipeSucceeded"/>
  <int value="12" label="ExtensionBlocklistMigrationFailed"/>
</enum>

<!-- LINT.ThenChange(//components/safe_browsing/core/browser/db/v4_store.h:V5ToV4MigrationResult) -->

<enum name="SafetyCheckWarningReason">
  <int value="1" label="Unpublished"/>
  <int value="2" label="Policy"/>
  <int value="3" label="Malware"/>
  <int value="4" label="Offstore"/>
  <int value="5" label="Unwanted"/>
  <int value="6" label="No Privacy Practice"/>
</enum>

<enum name="SBExtensionTelemetryDisableReason">
  <int value="0" label="Unknown"/>
  <int value="1" label="Malware"/>
</enum>

<!-- LINT.IfChange(SBExtensionTelemetrySearchVsSerpCount) -->

<enum name="SBExtensionTelemetrySearchVsSerpCount">
  <int value="0" label="SearchCountIsLessThanSerpCount"/>
  <int value="1" label="SearchCountEqualsSerpCount"/>
  <int value="2" label="SearchCountIsGreaterThanSerpCount"/>
</enum>

<!-- LINT.ThenChange(//chrome/browser/safe_browsing/extension_telemetry/search_hijacking_detector.cc:SearchVsSerpCount) -->

<enum name="SBExtensionTelemetrySignalsSignalType">
  <int value="0" label="TabsExecuteScript"/>
  <int value="1" label="RemoteHostsContacted"/>
  <int value="2" label="PasswordReuse"/>
  <int value="3" label="PotentialPasswordTheft"/>
  <int value="4" label="CookiesGetAll"/>
  <int value="5" label="CookiesGet"/>
  <int value="6" label="DeclarativeNetRequest"/>
  <int value="7" label="TabsApi"/>
  <int value="8" label="DeclarativeNetRequestAction"/>
</enum>

<enum name="SBFileTypeUpdateResult">
  <int value="1" label="SUCCESS"/>
  <int value="2" label="FAILED_EMPTY"/>
  <int value="3" label="FAILED_PROTO_PARSE"/>
  <int value="4" label="FAILED_DELTA_CHECK"/>
  <int value="5" label="FAILED_VERSION_CHECK"/>
  <int value="6" label="FAILED_DEFAULT_SETTING_SET"/>
  <int value="7" label="FAILED_WRONG_SETTINGS_COUNT"/>
  <int value="8" label="SKIPPED_VERSION_CHECK_EQUAL"/>
</enum>

<!-- LINT.IfChange(SBHashPrefixWriteError) -->

<enum name="SBHashPrefixWriteError">
  <int value="0" label="Error writing file to disk"/>
  <int value="1" label="File size not a multiple of prefix size"/>
  <int value="2" label="File not found"/>
  <int value="3" label="File size does not match metadata"/>
  <int value="4" label="Failed to memory map file"/>
  <int value="5" label="Memory mapped region has wrong size"/>
</enum>

<!-- LINT.ThenChange(//components/safe_browsing/core/browser/db/hash_prefix_container.h:WriteError) -->

<enum name="SBMetricsCollectorEventType">
  <int value="0" label="USER_STATE_DISABLED"/>
  <int value="1" label="USER_STATE_ENABLED"/>
  <int value="2" label="DATABASE_INTERSTITIAL_BYPASS"/>
  <int value="3" label="CSD_INTERSITITAL_BYPASS"/>
  <int value="4" label="URL_REAL_TIME_INTERSTITIAL_BYPASS"/>
  <int value="5" label="DANGEROUS_DOWNLOAD_BYPASS"/>
  <int value="6" label="PASSWORD_REUSE_MODAL_BYPASS"/>
  <int value="7" label="EXTENSION_ALLOWLIST_INSTALL_BYPASS"/>
  <int value="8" label="NON_ALLOWLISTED_EXTENSION_RE_ENABLED"/>
  <int value="9" label="SECURITY_SENSITIVE_SAFE_BROWSING_INTERSTITIAL"/>
  <int value="10" label="SECURITY_SENSITIVE_SSL_INTERSTITIAL"/>
  <int value="11" label="SECURITY_SENSITIVE_PASSWORD_PROTECTION"/>
  <int value="12" label="SECURITY_SENSITIVE_DOWNLOAD"/>
  <int value="13" label="HASH_PREFIX_REAL_TIME_INTERSTITIAL_BYPASS"/>
  <int value="14" label="ANDROID_SAFEBROWSING_REAL_TIME_INTERSTITIAL_BYPASS"/>
  <int value="15" label="ANDROID_SAFEBROWSING_INTERSTITIAL_BYPASS"/>
  <int value="16" label="DOWNLOAD_DEEP_SCAN"/>
  <int value="17" label="GLIC_COUNTER_ABUSE_INTERSTITIAL_BYPASS"/>
</enum>

<enum name="SBThreatType">
  <int value="0" label="Unused"/>
  <int value="1" label="Safe"/>
  <int value="2" label="URL phishing"/>
  <int value="3" label="URL malware"/>
  <int value="4" label="URL unwanted"/>
  <int value="5" label="URL binary malware"/>
  <int value="6" label="URL client side phishing"/>
  <int value="7" label="Extension"/>
  <int value="8" label="URL client side malware"/>
  <int value="9" label="Blacklisted resource"/>
  <int value="10" label="API abuse"/>
  <int value="11" label="Subresource filter"/>
  <int value="12" label="CSD allowlist"/>
  <int value="13" label="URL password protection phishing"/>
  <int value="14" label="Saved password reuse"/>
  <int value="15" label="Signed in sync password reuse"/>
  <int value="16" label="Signed in non sync password reuse"/>
  <int value="17" label="Blocked ad redirect"/>
  <int value="18" label="Ad sample"/>
  <int value="19" label="Blocked ad popup"/>
  <int value="20" label="Suspicious site"/>
  <int value="21" label="Enterprise password reuse"/>
  <int value="22" label="Billing"/>
  <int value="23" label="Apk download"/>
  <int value="24" label="High confidence allowlist"/>
  <int value="25" label="(Obsolete) Accuracy Tips. Deprecated as of 12/2022."/>
</enum>

<enum name="SiteFamiliarityHeuristicName">
  <summary>
    Descriptive names of heuristics that may be used to determine if a site is a
    familiar to the user.
  </summary>
  <int value="0" label="NO_HEURISTIC_MATCH"/>
  <int value="1" label="GLOBAL_ALLOWLIST_MATCH"/>
  <int value="2" label="VISITED_MORE_THAN_A_DAY_AGO"/>
  <int value="3" label="VISITED_MORE_THAN_FOUR_HOURS_AGO"/>
  <int value="4" label="SITE_ENGAGEMENT_SCORE_GTE_50"/>
  <int value="5" label="SITE_ENGAGEMENT_SCORE_GTE_25"/>
  <int value="6" label="SITE_ENGAGEMENT_SCORE_GTE_10"/>
  <int value="7" label="SITE_ENGAGEMENT_SCORE_EXISTS"/>
  <int value="8" label="NO_VISITS_TO_ANY_SITE_MORE_THAN_A_DAY_AGO"/>
  <int value="9" label="GLOBAL_ALLOWLIST_NOT_READY"/>
  <int value="10" label="FAMILIAR_LIKELY_PREVIOUSLY_UNFAMILIAR"/>
</enum>

<enum name="SiteFamiliarityHistoryHeuristicName">
  <int value="0" label="NO_HEURISTIC_MATCH"/>
  <int value="1" label="VISITED_MORE_THAN_A_DAY_AGO"/>
  <int value="2" label="VISITED_MORE_THAN_FOUR_HOURS_AGO"/>
  <int value="3" label="NO_VISITS_TO_ANY_SITE_MORE_THAN_A_DAY_AGO"/>
  <int value="4" label="VISITED_MORE_THAN_A_DAY_AGO_PREVIOUSLY_UNFAMILIAR"/>
</enum>

<enum name="SuspiciousNotificationWarningInteractions">
  <int value="0" label="WARNING_SHOWN"/>
  <int value="1" label="SHOW_ORIGINAL_NOTIFICATION"/>
  <int value="2" label="UNSUBSCRIBE"/>
  <int value="3" label="ALWAYS_ALLOW"/>
  <int value="4" label="DISMISS"/>
  <int value="5" label="REPORT_AS_SAFE"/>
  <int value="6" label="REPORT_WARNED_NOTIFICATION_AS_SPAM"/>
  <int value="7" label="REPORT_UNWARNED_NOTIFICATION_AS_SPAM"/>
  <int value="8" label="SUPPRESS_DUPLICATE_WARNING"/>
</enum>

<enum name="SuspiciousSiteTriggerEvent">
  <int value="0" label="A page load started"/>
  <int value="1" label="A page load finished"/>
  <int value="2" label="A suspicious site was detected"/>
  <int value="3" label="The report delay timer fired"/>
  <int value="4" label="A report was started"/>
  <int value="5" label="A report was finished and sent"/>
  <int value="6" label="A pending report was cancelled"/>
  <int value="7" label="A report failed to start"/>
  <int value="8" label="An active report failed to finish"/>
  <int value="9" label="A report was possible but skipped"/>
</enum>

<enum name="SuspiciousSiteTriggerManagerReason">
  <int value="0" label="No reason"/>
  <int value="1" label="The user opted-out of reports"/>
  <int value="2" label="A report is already running on this page"/>
  <int value="3" label="No report was started on this page"/>
  <int value="4" label="The user has exceeded their report quota"/>
  <int value="5" label="The report type has been deprecated"/>
</enum>

<enum name="SuspiciousSiteTriggerState">
  <int value="0" label="The trigger is idle"/>
  <int value="1" label="A page is loading"/>
  <int value="2" label="A report will begin when the page loads"/>
  <int value="3" label="A report has started"/>
  <int value="4" label="The trigger is in monitoring mode"/>
</enum>

<!-- LINT.IfChange(SuspiciousSiteWarningOutcome) -->

<enum name="SuspiciousSiteWarningOutcome">
  <int value="0" label="Unknown"/>
  <int value="1" label="Bypassed"/>
  <int value="2" label="Adhered"/>
  <int value="3" label="DismissedBySystem"/>
</enum>

<!-- LINT.ThenChange(//components/safe_browsing/core/browser/suspicious_site_warning_allowlist.h:SuspiciousSiteWarningOutcome) -->

<!-- LINT.IfChange(SuspiciousSiteWarningUserInteraction) -->

<enum name="SuspiciousSiteWarningUserInteraction">
  <int value="0" label="Unknown"/>
  <int value="1" label="Warning dialog shown"/>
  <int value="2" label="Mark as safe button clicked"/>
  <int value="3" label="Back to safety button clicked"/>
  <int value="4" label="Dismissed"/>
  <int value="5" label="Manual navigation"/>
  <int value="6" label="Close tab"/>
  <int value="7" label="Learn more clicked"/>
  <int value="8" label="System back button/gesture used"/>
  <int value="9" label="Destroyed"/>
</enum>

<!-- LINT.ThenChange(//components/safe_browsing/core/browser/suspicious_site_warning_allowlist.h:SuspiciousSiteWarningUserInteraction) -->

<!-- LINT.IfChange(SyncedEsbOutcome) -->

<enum name="SyncedEsbOutcome">
  <int value="0" label="Shown"/>
  <int value="1" label="AcceptedOk"/>
  <int value="2" label="AcceptedTurnOn"/>
  <int value="3" label="Dismissed"/>
  <int value="4" label="AcceptedFailed"/>
</enum>

<!-- LINT.ThenChange(//chrome/browser/safe_browsing/tailored_security/consented_message_android.cc:SyncedEsbOutcome) -->

<enum name="URTAndBackgroundHPRTResult">
  <int value="0" label="UrtSafeAndHprtUnfinished"/>
  <int value="1" label="UrtUnsafeAndHprtUnfinished"/>
  <int value="2" label="UrtSafeAndHprtSafe"/>
  <int value="3" label="UrtSafeAndHprtUnsafe"/>
  <int value="4" label="UrtUnsafeAndHprtSafe"/>
  <int value="5" label="UrtUnsafeAndHprtUnsafe"/>
</enum>

<!-- LINT.IfChange(V4ToV5MigrationResult) -->

<enum name="V4ToV5MigrationResult">
  <int value="0" label="DiskAlreadyV5"/>
  <int value="1" label="V4ToV5MigrationSucceeded"/>
  <int value="2" label="V4StoreNotFound"/>
  <int value="3" label="ReadV4Failed"/>
  <int value="4" label="MultipleHashFilesFailure"/>
  <int value="5" label="PrefixSizeMismatchFailure"/>
  <int value="6" label="HashFileMissingFailure"/>
  <int value="7" label="RenameHashFileFailure"/>
  <int value="8" label="WriteV5FileFailure"/>
  <int value="9" label="ProtoSerializationFailure"/>
  <int value="10" label="ExtensionParsingFailure"/>
  <int value="11" label="RenameV5StoreFileFailure"/>
  <int value="12" label="StoreIneligibleWipeFailed"/>
  <int value="13" label="StoreIneligibleWipeSucceeded"/>
  <int value="14" label="ExtensionBlocklistMigrationFailed"/>
</enum>

<!-- LINT.ThenChange(//components/safe_browsing/core/browser/db/v5_store.h:V4ToV5MigrationResult) -->

<!-- LINT.IfChange(V5OperationResult) -->

<enum name="V5OperationResult">
  <int value="0" label="Success"/>
  <int value="1" label="ParseError"/>
  <int value="2" label="NetworkError"/>
  <int value="3" label="HttpError"/>
</enum>

<!-- LINT.ThenChange(//components/safe_browsing/core/browser/db/v5_update_protocol_manager.h:V5OperationResult) -->

<!-- LINT.IfChange(V5ParseResult) -->

<enum name="V5ParseResult">
  <int value="0" label="Success"/>
  <int value="1" label="ParseFromStringError"/>
  <int value="2" label="MismatchedSizeError"/>
  <int value="3" label="MismatchedNameError"/>
  <int value="4" label="MismatchedPrefixLengthError"/>
  <int value="5" label="NegativeDurationError"/>
  <int value="6" label="InvalidRiceFieldError"/>
  <int value="7" label="ChecksumMissingError"/>
  <int value="8" label="ChecksumSizeError"/>
</enum>

<!-- LINT.ThenChange(//components/safe_browsing/core/browser/db/v5_update_protocol_manager.h:V5ParseResult) -->

<!-- LINT.IfChange(V8IframeState) -->

<enum name="V8IframeState">
  <int value="0"
      label="v8 optimizer enabled for frame which finished navigation and for
             topmost frame"/>
  <int value="1"
      label="v8 optimizer enabled for frame which finished navigation but
             disabled for topmost frame"/>
  <int value="2"
      label="v8 optimizer disabled for frame which finished navigation but
             enabled for topmost frame"/>
  <int value="3"
      label="v8 optimizer disabled for frame which finished navigation and
             for topmost frame"/>
</enum>

<!-- LINT.ThenChange(//chrome/browser/site_protection/site_protection_metrics.h:IframeV8OptimizerState) -->

</enums>

</histogram-configuration>
