/*
 * Copyright (C) 2012 Google, Inc. All rights reserved.
 *
 * Redistribution and use in source and binary forms, with or without
 * modification, are permitted provided that the following conditions
 * are met:
 * 1. Redistributions of source code must retain the above copyright
 *    notice, this list of conditions and the following disclaimer.
 * 2. Redistributions in binary form must reproduce the above copyright
 *    notice, this list of conditions and the following disclaimer in the
 *    documentation and/or other materials provided with the distribution.
 *
 * THIS SOFTWARE IS PROVIDED BY GOOGLE INC. ``AS IS'' AND ANY
 * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
 * PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL APPLE COMPUTER, INC. OR
 * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
 * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
 * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
 * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
 * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
 * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 */

#ifndef UseCounter_h
#define UseCounter_h

#include "core/CSSPropertyNames.h"
#include "core/CoreExport.h"
#include "core/css/parser/CSSParserMode.h"
#include "platform/weborigin/KURL.h"
#include "wtf/BitVector.h"
#include "wtf/Noncopyable.h"
#include "wtf/text/WTFString.h"
#include <v8.h>

namespace blink {

class CSSStyleSheet;
class Document;
class EnumerationHistogram;
class ExecutionContext;
class Frame;
class StyleSheetContents;

// UseCounter is used for counting the number of times features of
// Blink are used on real web pages and help us know commonly
// features are used and thus when it's safe to remove or change them.
//
// The Chromium Content layer controls what is done with this data.
//
// For instance, in Google Chrome, these counts are submitted anonymously
// through the UMA histogram recording system in Chrome for users who have the
// "Automatically send usage statistics and crash reports to Google" setting
// enabled:
// http://www.google.com/chrome/intl/en/privacy.html

class CORE_EXPORT UseCounter {
  DISALLOW_NEW();
  WTF_MAKE_NONCOPYABLE(UseCounter);

 public:
  enum Context {
    DefaultContext,
    // Counters for SVGImages (lifetime independent from other pages).
    SVGImageContext
  };

  UseCounter(Context = DefaultContext);

  enum Feature {
    // Do not change assigned numbers of existing items: add new features
    // to the end of the list.
    OBSOLETE_PageDestruction = 0,
    WorkerStart = 4,
    SharedWorkerStart = 5,
    UnprefixedIndexedDB = 9,
    OpenWebDatabase = 10,
    UnprefixedRequestAnimationFrame = 13,
    PrefixedRequestAnimationFrame = 14,
    ContentSecurityPolicy = 15,
    ContentSecurityPolicyReportOnly = 16,
    PrefixedTransitionEndEvent = 18,
    UnprefixedTransitionEndEvent = 19,
    PrefixedAndUnprefixedTransitionEndEvent = 20,
    AutoFocusAttribute = 21,
    DataListElement = 23,
    FormAttribute = 24,
    IncrementalAttribute = 25,
    InputTypeColor = 26,
    InputTypeDate = 27,
    InputTypeDateTimeFallback = 29,
    InputTypeDateTimeLocal = 30,
    InputTypeEmail = 31,
    InputTypeMonth = 32,
    InputTypeNumber = 33,
    InputTypeRange = 34,
    InputTypeSearch = 35,
    InputTypeTel = 36,
    InputTypeTime = 37,
    InputTypeURL = 38,
    InputTypeWeek = 39,
    InputTypeWeekFallback = 40,
    ListAttribute = 41,
    MaxAttribute = 42,
    MinAttribute = 43,
    PatternAttribute = 44,
    PlaceholderAttribute = 45,
    PrefixedDirectoryAttribute = 47,
    RequiredAttribute = 49,
    StepAttribute = 51,
    PageVisits = 52,
    HTMLMarqueeElement = 53,
    Reflection = 55,
    PrefixedStorageInfo = 57,
    DeprecatedFlexboxWebContent = 61,
    DeprecatedFlexboxChrome = 62,
    DeprecatedFlexboxChromeExtension = 63,
    UnprefixedPerformanceTimeline = 65,
    UnprefixedUserTiming = 67,
    WindowEvent = 69,
    ContentSecurityPolicyWithBaseElement = 70,
    DocumentClear = 74,
    XMLDocument = 77,
    XSLProcessingInstruction = 78,
    XSLTProcessor = 79,
    SVGSwitchElement = 80,
    DocumentAll = 83,
    FormElement = 84,
    DemotedFormElement = 85,
    SVGAnimationElement = 90,
    LineClamp = 96,
    SubFrameBeforeUnloadRegistered = 97,
    SubFrameBeforeUnloadFired = 98,
    ConsoleMarkTimeline = 102,
    DocumentCreateAttribute = 111,
    DocumentCreateAttributeNS = 112,
    DocumentXMLEncoding = 115,    // Removed from DOM4.
    DocumentXMLStandalone = 116,  // Removed from DOM4.
    DocumentXMLVersion = 117,     // Removed from DOM4.
    NavigatorProductSub = 123,
    NavigatorVendor = 124,
    NavigatorVendorSub = 125,
    PrefixedAnimationEndEvent = 128,
    UnprefixedAnimationEndEvent = 129,
    PrefixedAndUnprefixedAnimationEndEvent = 130,
    PrefixedAnimationStartEvent = 131,
    UnprefixedAnimationStartEvent = 132,
    PrefixedAndUnprefixedAnimationStartEvent = 133,
    PrefixedAnimationIterationEvent = 134,
    UnprefixedAnimationIterationEvent = 135,
    PrefixedAndUnprefixedAnimationIterationEvent = 136,
    EventReturnValue = 137,  // Legacy IE extension.
    SVGSVGElement = 138,
    DOMSubtreeModifiedEvent = 143,
    DOMNodeInsertedEvent = 144,
    DOMNodeRemovedEvent = 145,
    DOMNodeRemovedFromDocumentEvent = 146,
    DOMNodeInsertedIntoDocumentEvent = 147,
    DOMCharacterDataModifiedEvent = 148,
    DocumentAllLegacyCall = 150,
    HTMLEmbedElementLegacyCall = 152,
    HTMLObjectElementLegacyCall = 153,
    GetMatchedCSSRules = 155,
    PrefixedAudioDecodedByteCount = 164,
    PrefixedVideoDecodedByteCount = 165,
    PrefixedVideoSupportsFullscreen = 166,
    PrefixedVideoDisplayingFullscreen = 167,
    PrefixedVideoEnterFullscreen = 168,
    PrefixedVideoExitFullscreen = 169,
    PrefixedVideoEnterFullScreen = 170,
    PrefixedVideoExitFullScreen = 171,
    PrefixedVideoDecodedFrameCount = 172,
    PrefixedVideoDroppedFrameCount = 173,
    PrefixedElementRequestFullscreen = 176,
    PrefixedElementRequestFullScreen = 177,
    BarPropLocationbar = 178,
    BarPropMenubar = 179,
    BarPropPersonalbar = 180,
    BarPropScrollbars = 181,
    BarPropStatusbar = 182,
    BarPropToolbar = 183,
    InputTypeEmailMultiple = 184,
    InputTypeEmailMaxLength = 185,
    InputTypeEmailMultipleMaxLength = 186,
    InputTypeText = 190,
    InputTypeTextMaxLength = 191,
    InputTypePassword = 192,
    InputTypePasswordMaxLength = 193,
    PrefixedPageVisibility = 196,
    // Inconsistent with the specification and other browsers.
    CSSStyleSheetInsertRuleOptionalArg = 198,
    DocumentBeforeUnloadRegistered = 200,
    DocumentBeforeUnloadFired = 201,
    DocumentUnloadRegistered = 202,
    DocumentUnloadFired = 203,
    SVGLocatableNearestViewportElement = 204,
    SVGLocatableFarthestViewportElement = 205,
    SVGPointMatrixTransform = 209,
    DOMFocusInOutEvent = 211,
    FileGetLastModifiedDate = 212,
    HTMLElementInnerText = 213,
    HTMLElementOuterText = 214,
    ReplaceDocumentViaJavaScriptURL = 215,
    ElementPrefixedMatchesSelector = 217,
    CSSStyleSheetRules = 219,
    CSSStyleSheetAddRule = 220,
    CSSStyleSheetRemoveRule = 221,
    // The above items are available in M33 branch.

    InitMessageEvent = 222,
    PrefixedDevicePixelRatioMediaFeature = 233,
    PrefixedMaxDevicePixelRatioMediaFeature = 234,
    PrefixedMinDevicePixelRatioMediaFeature = 235,
    PrefixedTransform3dMediaFeature = 237,
    PrefixedStorageQuota = 240,
    ResetReferrerPolicy = 243,
    // Case-insensitivity dropped from specification.
    CaseInsensitiveAttrSelectorMatch = 244,
    FormNameAccessForImageElement = 246,
    FormNameAccessForPastNamesMap = 247,
    FormAssociationByParser = 248,
    SVGSVGElementInDocument = 250,
    SVGDocumentRootElement = 251,
    WorkerSubjectToCSP = 257,
    WorkerAllowedByChildBlockedByScript = 258,
    DeprecatedWebKitGradient = 260,
    DeprecatedWebKitLinearGradient = 261,
    DeprecatedWebKitRepeatingLinearGradient = 262,
    DeprecatedWebKitRadialGradient = 263,
    DeprecatedWebKitRepeatingRadialGradient = 264,
    UnprefixedImageSmoothingEnabled = 268,
    // The above items are available in M34 branch.

    TextAutosizing = 274,
    HTMLAnchorElementPingAttribute = 276,
    SVGClassName = 279,
    HTMLMediaElementSeekToFragmentStart = 281,
    HTMLMediaElementPauseAtFragmentEnd = 282,
    PrefixedWindowURL = 283,
    WindowOrientation = 285,
    DOMStringListContains = 286,
    DocumentCaptureEvents = 287,
    DocumentReleaseEvents = 288,
    WindowCaptureEvents = 289,
    WindowReleaseEvents = 290,
    DocumentXPathCreateExpression = 295,
    DocumentXPathCreateNSResolver = 296,
    DocumentXPathEvaluate = 297,
    AnimationConstructorKeyframeListEffectObjectTiming = 300,
    AnimationConstructorKeyframeListEffectNoTiming = 302,
    PrefixedCancelAnimationFrame = 304,
    NamedNodeMapGetNamedItem = 306,
    NamedNodeMapSetNamedItem = 307,
    NamedNodeMapRemoveNamedItem = 308,
    NamedNodeMapItem = 309,
    NamedNodeMapGetNamedItemNS = 310,
    NamedNodeMapSetNamedItemNS = 311,
    NamedNodeMapRemoveNamedItemNS = 312,
    PrefixedDocumentIsFullscreen = 318,
    PrefixedDocumentCurrentFullScreenElement = 320,
    PrefixedDocumentCancelFullScreen = 321,
    PrefixedDocumentFullscreenEnabled = 322,
    PrefixedDocumentFullscreenElement = 323,
    PrefixedDocumentExitFullscreen = 324,
    // The above items are available in M35 branch.

    SVGForeignObjectElement = 325,
    SelectionSetPosition = 327,
    AnimationFinishEvent = 328,
    SVGSVGElementInXMLDocument = 329,
    EventSrcElement = 343,
    EventCancelBubble = 344,
    EventPath = 345,
    NodeIteratorDetach = 347,
    EventGetReturnValueTrue = 350,
    EventGetReturnValueFalse = 351,
    EventSetReturnValueTrue = 352,
    EventSetReturnValueFalse = 353,
    WindowOffscreenBuffering = 356,
    WindowDefaultStatus = 357,
    WindowDefaultstatus = 358,
    PrefixedTransitionEventConstructor = 361,
    PrefixedMutationObserverConstructor = 362,
    NotificationPermission = 371,
    RangeDetach = 372,
    PrefixedFileRelativePath = 386,
    DocumentCaretRangeFromPoint = 387,
    ElementScrollIntoViewIfNeeded = 389,
    RangeExpand = 393,
    HTMLImageElementX = 396,
    HTMLImageElementY = 397,
    SelectionBaseNode = 400,
    SelectionBaseOffset = 401,
    SelectionExtentNode = 402,
    SelectionExtentOffset = 403,
    SelectionType = 404,
    SelectionModify = 405,
    SelectionSetBaseAndExtent = 406,
    SelectionEmpty = 407,
    VTTCue = 409,
    VTTCueRender = 410,
    VTTCueRenderVertical = 411,
    VTTCueRenderSnapToLinesFalse = 412,
    VTTCueRenderLineNotAuto = 413,
    VTTCueRenderPositionNot50 = 414,
    VTTCueRenderSizeNot100 = 415,
    VTTCueRenderAlignNotMiddle = 416,
    // The above items are available in M36 branch.

    ElementRequestPointerLock = 417,
    VTTCueRenderRtl = 418,
    PostMessageFromSecureToInsecure = 419,
    PostMessageFromInsecureToSecure = 420,
    DocumentExitPointerLock = 421,
    DocumentPointerLockElement = 422,
    PrefixedCursorZoomIn = 424,
    PrefixedCursorZoomOut = 425,
    TextEncoderConstructor = 429,
    TextEncoderEncode = 430,
    TextDecoderConstructor = 431,
    TextDecoderDecode = 432,
    FocusInOutEvent = 433,
    MouseEventMovementX = 434,
    MouseEventMovementY = 435,
    DocumentFonts = 440,
    MixedContentFormsSubmitted = 441,
    FormsSubmitted = 442,
    HTMLImports = 455,
    ElementCreateShadowRoot = 456,
    DocumentRegisterElement = 457,
    EditingAppleInterchangeNewline = 458,
    EditingAppleConvertedSpace = 459,
    EditingApplePasteAsQuotation = 460,
    EditingAppleStyleSpanClass = 461,
    EditingAppleTabSpanClass = 462,
    HTMLImportsAsyncAttribute = 463,
    XMLHttpRequestSynchronous = 465,
    CSSSelectorPseudoUnresolved = 466,
    CSSSelectorPseudoShadow = 467,
    CSSSelectorPseudoContent = 468,
    CSSSelectorPseudoHost = 469,
    CSSSelectorPseudoHostContext = 470,
    CSSDeepCombinator = 471,
    // The above items are available in M37 branch.

    UseAsm = 473,
    DOMWindowOpen = 475,
    DOMWindowOpenFeatures = 476,
    AspectRatioFlexItem = 479,
    DetailsElement = 480,
    DialogElement = 481,
    MapElement = 482,
    MeterElement = 483,
    ProgressElement = 484,
    PrefixedHTMLElementDropzone = 490,
    WheelEventWheelDeltaX = 491,
    WheelEventWheelDeltaY = 492,
    WheelEventWheelDelta = 493,
    SendBeacon = 494,
    SendBeaconQuotaExceeded = 495,
    SVGSMILElementInDocument = 501,
    MouseEventOffsetX = 502,
    MouseEventOffsetY = 503,
    MouseEventX = 504,
    MouseEventY = 505,
    MouseEventFromElement = 506,
    MouseEventToElement = 507,
    RequestFileSystem = 508,
    RequestFileSystemWorker = 509,
    RequestFileSystemSyncWorker = 510,
    SVGStyleElementTitle = 519,
    PictureSourceSrc = 520,
    // The above items are available in M38 branch.

    Picture = 521,
    Sizes = 522,
    SrcsetXDescriptor = 523,
    SrcsetWDescriptor = 524,
    SelectionContainsNode = 525,
    XMLExternalResourceLoad = 529,
    MixedContentPrivateHostnameInPublicHostname = 530,
    LegacyProtocolEmbeddedAsSubresource = 531,
    RequestedSubresourceWithEmbeddedCredentials = 532,
    NotificationCreated = 533,
    NotificationClosed = 534,
    NotificationPermissionRequested = 535,
    ConsoleTimeline = 538,
    ConsoleTimelineEnd = 539,
    SRIElementWithMatchingIntegrityAttribute = 540,
    SRIElementWithNonMatchingIntegrityAttribute = 541,
    SRIElementWithUnparsableIntegrityAttribute = 542,
    V8Animation_StartTime_AttributeGetter = 545,
    V8Animation_StartTime_AttributeSetter = 546,
    V8Animation_CurrentTime_AttributeGetter = 547,
    V8Animation_CurrentTime_AttributeSetter = 548,
    V8Animation_PlaybackRate_AttributeGetter = 549,
    V8Animation_PlaybackRate_AttributeSetter = 550,
    V8Animation_PlayState_AttributeGetter = 551,
    V8Animation_Finish_Method = 552,
    V8Animation_Play_Method = 553,
    V8Animation_Pause_Method = 554,
    V8Animation_Reverse_Method = 555,
    // The above items are available in M39 branch.

    BreakIterator = 556,
    ScreenOrientationAngle = 557,
    ScreenOrientationType = 558,
    ScreenOrientationLock = 559,
    ScreenOrientationUnlock = 560,
    GeolocationSecureOrigin = 561,
    GeolocationInsecureOrigin = 562,
    NotificationSecureOrigin = 563,
    NotificationInsecureOrigin = 564,
    NotificationShowEvent = 565,
    SVGTransformListConsolidate = 569,
    SVGAnimatedTransformListBaseVal = 570,
    QuotedAnimationName = 571,
    QuotedKeyframesRule = 572,
    SrcsetDroppedCandidate = 573,
    WindowPostMessage = 574,
    RenderRuby = 576,
    ScriptElementWithInvalidTypeHasSrc = 578,
    XMLHttpRequestSynchronousInNonWorkerOutsideBeforeUnload = 581,
    CSSSelectorPseudoScrollbar = 582,
    CSSSelectorPseudoScrollbarButton = 583,
    CSSSelectorPseudoScrollbarThumb = 584,
    CSSSelectorPseudoScrollbarTrack = 585,
    CSSSelectorPseudoScrollbarTrackPiece = 586,
    LangAttribute = 587,
    LangAttributeOnHTML = 588,
    LangAttributeOnBody = 589,
    LangAttributeDoesNotMatchToUILocale = 590,
    InputTypeSubmit = 591,
    InputTypeSubmitWithValue = 592,
    // The above items are available in M40 branch.

    SetReferrerPolicy = 593,
    MouseEventWhich = 595,
    UIEventWhich = 598,
    TextWholeText = 599,
    NotificationCloseEvent = 603,
    StyleMedia = 606,
    StyleMediaType = 607,
    StyleMediaMatchMedium = 608,
    MixedContentPresent = 609,
    MixedContentBlockable = 610,
    MixedContentAudio = 611,
    MixedContentDownload = 612,
    MixedContentFavicon = 613,
    MixedContentImage = 614,
    MixedContentInternal = 615,
    MixedContentPlugin = 616,
    MixedContentPrefetch = 617,
    MixedContentVideo = 618,
    CSSSelectorPseudoFullScreenAncestor = 628,
    CSSSelectorPseudoFullScreen = 629,
    WebKitCSSMatrix = 630,
    AudioContextCreateAnalyser = 631,
    AudioContextCreateBiquadFilter = 632,
    AudioContextCreateBufferSource = 633,
    AudioContextCreateChannelMerger = 634,
    AudioContextCreateChannelSplitter = 635,
    AudioContextCreateConvolver = 636,
    AudioContextCreateDelay = 637,
    AudioContextCreateDynamicsCompressor = 638,
    AudioContextCreateGain = 639,
    AudioContextCreateMediaElementSource = 640,
    AudioContextCreateMediaStreamDestination = 641,
    AudioContextCreateMediaStreamSource = 642,
    AudioContextCreateOscillator = 643,
    AudioContextCreatePeriodicWave = 645,
    AudioContextCreateScriptProcessor = 646,
    AudioContextCreateStereoPanner = 647,
    AudioContextCreateWaveShaper = 648,
    AudioContextDecodeAudioData = 649,
    AudioContextResume = 650,
    AudioContextSuspend = 651,
    MixedContentInNonHTTPSFrameThatRestrictsMixedContent = 661,
    MixedContentInSecureFrameThatDoesNotRestrictMixedContent = 662,
    MixedContentWebSocket = 663,
    SyntheticKeyframesInCompositedCSSAnimation = 664,
    MixedContentFormPresent = 665,
    GetUserMediaInsecureOrigin = 666,
    GetUserMediaSecureOrigin = 667,
    // The above items are available in M41 branch.

    DeviceMotionInsecureOrigin = 668,
    DeviceMotionSecureOrigin = 669,
    DeviceOrientationInsecureOrigin = 670,
    DeviceOrientationSecureOrigin = 671,
    SandboxViaIFrame = 672,
    SandboxViaCSP = 673,
    BlockedSniffingImageToScript = 674,
    Fetch = 675,
    FetchBodyStream = 676,
    XMLHttpRequestAsynchronous = 677,
    WhiteSpacePreFromXMLSpace = 679,
    WhiteSpaceNowrapFromXMLSpace = 680,
    SVGSVGElementForceRedraw = 685,
    SVGSVGElementSuspendRedraw = 686,
    SVGSVGElementUnsuspendRedraw = 687,
    SVGSVGElementUnsuspendRedrawAll = 688,
    AudioContextClose = 689,
    CSSZoomNotEqualToOne = 691,
    // The above items are available in M42 branch.

    ClientRectListItem = 694,
    WindowClientInformation = 695,
    WindowFind = 696,
    WindowScreenLeft = 697,
    WindowScreenTop = 698,
    V8Animation_Cancel_Method = 699,
    V8Animation_Onfinish_AttributeGetter = 700,
    V8Animation_Onfinish_AttributeSetter = 701,
    V8Window_WebKitAnimationEvent_ConstructorGetter = 707,
    CryptoGetRandomValues = 710,
    SubtleCryptoEncrypt = 711,
    SubtleCryptoDecrypt = 712,
    SubtleCryptoSign = 713,
    SubtleCryptoVerify = 714,
    SubtleCryptoDigest = 715,
    SubtleCryptoGenerateKey = 716,
    SubtleCryptoImportKey = 717,
    SubtleCryptoExportKey = 718,
    SubtleCryptoDeriveBits = 719,
    SubtleCryptoDeriveKey = 720,
    SubtleCryptoWrapKey = 721,
    SubtleCryptoUnwrapKey = 722,
    CryptoAlgorithmAesCbc = 723,
    CryptoAlgorithmHmac = 724,
    CryptoAlgorithmRsaSsaPkcs1v1_5 = 725,
    CryptoAlgorithmSha1 = 726,
    CryptoAlgorithmSha256 = 727,
    CryptoAlgorithmSha384 = 728,
    CryptoAlgorithmSha512 = 729,
    CryptoAlgorithmAesGcm = 730,
    CryptoAlgorithmRsaOaep = 731,
    CryptoAlgorithmAesCtr = 732,
    CryptoAlgorithmAesKw = 733,
    CryptoAlgorithmRsaPss = 734,
    CryptoAlgorithmEcdsa = 735,
    CryptoAlgorithmEcdh = 736,
    CryptoAlgorithmHkdf = 737,
    CryptoAlgorithmPbkdf2 = 738,
    DocumentSetDomain = 739,
    UpgradeInsecureRequestsEnabled = 740,
    UpgradeInsecureRequestsUpgradedRequest = 741,
    DocumentDesignMode = 742,
    GlobalCacheStorage = 743,
    NetInfo = 744,
    BackgroundSync = 745,
    LegacyConst = 748,
    V8Permissions_Query_Method = 750,
    // The above items are available in M43 branch.

    V8HTMLInputElement_Autocapitalize_AttributeGetter = 754,
    V8HTMLInputElement_Autocapitalize_AttributeSetter = 755,
    V8HTMLTextAreaElement_Autocapitalize_AttributeGetter = 756,
    V8HTMLTextAreaElement_Autocapitalize_AttributeSetter = 757,
    SVGHrefBaseVal = 758,
    SVGHrefAnimVal = 759,
    V8CSSRuleList_Item_Method = 760,
    V8MediaList_Item_Method = 761,
    V8StyleSheetList_Item_Method = 762,
    StyleSheetListAnonymousNamedGetter = 763,
    AutocapitalizeAttribute = 764,
    FullscreenSecureOrigin = 765,
    FullscreenInsecureOrigin = 766,
    DialogInSandboxedContext = 767,
    SVGSMILAnimationInImageRegardlessOfCache = 768,
    EncryptedMediaSecureOrigin = 770,
    EncryptedMediaInsecureOrigin = 771,
    PerformanceFrameTiming = 772,
    V8Element_Animate_Method = 773,
    // The above items are available in M44 branch.

    V8SVGSVGElement_GetElementById_Method = 778,
    ElementCreateShadowRootMultiple = 779,
    V8MessageChannel_Constructor = 780,
    V8MessagePort_PostMessage_Method = 781,
    V8MessagePort_Start_Method = 782,
    V8MessagePort_Close_Method = 783,
    MessagePortsTransferred = 784,
    CSSKeyframesRuleAnonymousIndexedGetter = 785,
    V8Screen_AvailLeft_AttributeGetter = 786,
    V8Screen_AvailTop_AttributeGetter = 787,
    V8SVGFEConvolveMatrixElement_PreserveAlpha_AttributeGetter = 791,
    V8SVGStyleElement_Disabled_AttributeGetter = 798,
    V8SVGStyleElement_Disabled_AttributeSetter = 799,
    InputTypeFileSecureOrigin = 801,
    InputTypeFileInsecureOrigin = 802,
    ElementAttachShadow = 804,
    V8SecurityPolicyViolationEvent_DocumentURI_AttributeGetter = 806,
    V8SecurityPolicyViolationEvent_BlockedURI_AttributeGetter = 807,
    V8SecurityPolicyViolationEvent_StatusCode_AttributeGetter = 808,
    HTMLLinkElementDisabled = 809,
    V8HTMLLinkElement_Disabled_AttributeGetter = 810,
    V8HTMLLinkElement_Disabled_AttributeSetter = 811,
    V8HTMLStyleElement_Disabled_AttributeGetter = 812,
    V8HTMLStyleElement_Disabled_AttributeSetter = 813,
    V8DOMError_Constructor = 816,
    V8DOMError_Name_AttributeGetter = 817,
    V8DOMError_Message_AttributeGetter = 818,
    V8Location_AncestorOrigins_AttributeGetter = 823,
    V8IDBDatabase_ObjectStoreNames_AttributeGetter = 824,
    V8IDBObjectStore_IndexNames_AttributeGetter = 825,
    V8IDBTransaction_ObjectStoreNames_AttributeGetter = 826,
    TextInputFired = 830,
    V8TextEvent_Data_AttributeGetter = 831,
    V8TextEvent_InitTextEvent_Method = 832,
    ClientHintsDPR = 835,
    ClientHintsResourceWidth = 836,
    ClientHintsViewportWidth = 837,
    SRIElementIntegrityAttributeButIneligible = 838,
    FormDataAppendNull = 843,
    NonHTMLElementSetAttributeNodeFromHTMLDocumentNameNotLowercase = 845,
    DOMStringList_Item_AttributeGetter_IndexedDB = 846,
    DOMStringList_Item_AttributeGetter_Location = 847,
    DOMStringList_Contains_Method_IndexedDB = 848,
    DOMStringList_Contains_Method_Location = 849,
    NavigatorVibrate = 850,
    NavigatorVibrateSubFrame = 851,
    V8XPathEvaluator_Constructor = 853,
    V8XPathEvaluator_CreateExpression_Method = 854,
    V8XPathEvaluator_CreateNSResolver_Method = 855,
    V8XPathEvaluator_Evaluate_Method = 856,
    RequestMIDIAccess = 857,
    V8MouseEvent_LayerX_AttributeGetter = 858,
    V8MouseEvent_LayerY_AttributeGetter = 859,
    InnerTextWithShadowTree = 860,
    SelectionToStringWithShadowTree = 861,
    WindowFindWithShadowTree = 862,
    V8CompositionEvent_InitCompositionEvent_Method = 863,
    V8CustomEvent_InitCustomEvent_Method = 864,
    V8DeviceMotionEvent_InitDeviceMotionEvent_Method = 865,
    V8DeviceOrientationEvent_InitDeviceOrientationEvent_Method = 866,
    V8Event_InitEvent_Method = 867,
    V8KeyboardEvent_InitKeyboardEvent_Method = 868,
    V8MouseEvent_InitMouseEvent_Method = 869,
    V8MutationEvent_InitMutationEvent_Method = 870,
    V8StorageEvent_InitStorageEvent_Method = 871,
    V8UIEvent_InitUIEvent_Method = 873,
    V8Document_CreateTouch_Method = 874,
    RequestFileSystemNonWebbyOrigin = 876,
    V8MemoryInfo_TotalJSHeapSize_AttributeGetter = 879,
    V8MemoryInfo_UsedJSHeapSize_AttributeGetter = 880,
    V8MemoryInfo_JSHeapSizeLimit_AttributeGetter = 881,
    V8Performance_Timing_AttributeGetter = 882,
    V8Performance_Navigation_AttributeGetter = 883,
    V8Performance_Memory_AttributeGetter = 884,
    V8SharedWorker_WorkerStart_AttributeGetter = 885,
    // The above items are available in M45 branch.

    HTMLMediaElementPreloadNone = 892,
    HTMLMediaElementPreloadMetadata = 893,
    HTMLMediaElementPreloadAuto = 894,
    HTMLMediaElementPreloadDefault = 895,
    MixedContentBlockableAllowed = 896,
    PseudoBeforeAfterForInputElement = 897,
    V8Permissions_Revoke_Method = 898,
    LinkRelDnsPrefetch = 899,
    LinkRelPreconnect = 900,
    LinkRelPreload = 901,
    LinkHeaderDnsPrefetch = 902,
    LinkHeaderPreconnect = 903,
    ClientHintsMetaAcceptCH = 904,
    HTMLElementDeprecatedWidth = 905,
    ClientHintsContentDPR = 906,
    ElementAttachShadowOpen = 907,
    ElementAttachShadowClosed = 908,
    AudioParamSetValueAtTime = 909,
    AudioParamLinearRampToValueAtTime = 910,
    AudioParamExponentialRampToValueAtTime = 911,
    AudioParamSetTargetAtTime = 912,
    AudioParamSetValueCurveAtTime = 913,
    AudioParamCancelScheduledValues = 914,
    V8Permissions_Request_Method = 915,
    LinkRelPrefetch = 917,
    LinkRelPrerender = 918,
    LinkRelNext = 919,
    CSSValuePrefixedMinContent = 921,
    CSSValuePrefixedMaxContent = 922,
    CSSValuePrefixedFitContent = 923,
    CSSValuePrefixedFillAvailable = 924,
    PresentationDefaultRequest = 926,
    PresentationAvailabilityChangeEventListener = 927,
    PresentationRequestConstructor = 928,
    PresentationRequestStart = 929,
    PresentationRequestReconnect = 930,
    PresentationRequestGetAvailability = 931,
    PresentationRequestConnectionAvailableEventListener = 932,
    PresentationConnectionTerminate = 933,
    PresentationConnectionSend = 934,
    PresentationConnectionMessageEventListener = 936,
    CSSAnimationsStackedNeutralKeyframe = 937,
    ReadingCheckedInClickHandler = 938,
    FlexboxIntrinsicSizeAlgorithmIsDifferent = 939,
    // The above items are available in M46 branch.

    HTMLImportsHasStyleSheets = 940,
    NetInfoType = 946,
    NetInfoDownlinkMax = 947,
    NetInfoOnChange = 948,
    NetInfoOnTypeChange = 949,
    V8Window_Alert_Method = 950,
    V8Window_Confirm_Method = 951,
    V8Window_Prompt_Method = 952,
    V8Window_Print_Method = 953,
    V8Window_RequestIdleCallback_Method = 954,
    FlexboxPercentagePaddingVertical = 955,
    FlexboxPercentageMarginVertical = 956,
    BackspaceNavigatedBack = 957,
    BackspaceNavigatedBackAfterFormInteraction = 958,
    CSPSourceWildcardWouldMatchExactHost = 959,
    CredentialManagerGet = 960,
    CredentialManagerGetWithUI = 961,
    CredentialManagerGetWithoutUI = 962,
    CredentialManagerStore = 963,
    CredentialManagerRequireUserMediation = 964,
    // The above items are available in M47 branch.

    BlockableMixedContentInSubframeBlocked = 966,
    AddEventListenerThirdArgumentIsObject = 967,
    RemoveEventListenerThirdArgumentIsObject = 968,
    CSSAtRuleCharset = 969,
    CSSAtRuleFontFace = 970,
    CSSAtRuleImport = 971,
    CSSAtRuleKeyframes = 972,
    CSSAtRuleMedia = 973,
    CSSAtRuleNamespace = 974,
    CSSAtRulePage = 975,
    CSSAtRuleSupports = 976,
    CSSAtRuleViewport = 977,
    CSSAtRuleWebkitKeyframes = 978,
    V8HTMLFieldSetElement_Elements_AttributeGetter = 979,
    HTMLMediaElementPreloadForcedNone = 980,
    ExternalAddSearchProvider = 981,
    ExternalIsSearchProviderInstalled = 982,
    V8Permissions_RequestAll_Method = 983,
    DeviceOrientationAbsoluteInsecureOrigin = 987,
    DeviceOrientationAbsoluteSecureOrigin = 988,
    FontFaceConstructor = 989,
    ServiceWorkerControlledPage = 990,
    MeterElementWithMeterAppearance = 993,
    MeterElementWithNoneAppearance = 994,
    SelectionAnchorNode = 997,
    SelectionAnchorOffset = 998,
    SelectionFocusNode = 999,
    SelectionFocusOffset = 1000,
    SelectionIsCollapsed = 1001,
    SelectionRangeCount = 1002,
    SelectionGetRangeAt = 1003,
    SelectionAddRange = 1004,
    SelectionRemoveAllRanges = 1005,
    SelectionCollapse = 1006,
    SelectionCollapseToStart = 1007,
    SelectionCollapseToEnd = 1008,
    SelectionExtend = 1009,
    SelectionSelectAllChildren = 1010,
    SelectionDeleteDromDocument = 1011,
    SelectionDOMString = 1012,
    InputTypeRangeVerticalAppearance = 1013,
    // The above items are available in M48 branch.

    CSSFilterReference = 1014,
    CSSFilterGrayscale = 1015,
    CSSFilterSepia = 1016,
    CSSFilterSaturate = 1017,
    CSSFilterHueRotate = 1018,
    CSSFilterInvert = 1019,
    CSSFilterOpacity = 1020,
    CSSFilterBrightness = 1021,
    CSSFilterContrast = 1022,
    CSSFilterBlur = 1023,
    CSSFilterDropShadow = 1024,
    BackgroundSyncRegister = 1025,
    ExecCommandOnInputOrTextarea = 1027,
    V8History_ScrollRestoration_AttributeGetter = 1028,
    V8History_ScrollRestoration_AttributeSetter = 1029,
    SVG1DOMFilter = 1030,
    OfflineAudioContextStartRendering = 1031,
    OfflineAudioContextSuspend = 1032,
    OfflineAudioContextResume = 1033,
    SVG1DOMPaintServer = 1035,
    SVGSVGElementFragmentSVGView = 1036,
    SVGSVGElementFragmentSVGViewElement = 1037,
    PresentationConnectionClose = 1038,
    SVG1DOMShape = 1039,
    SVG1DOMText = 1040,
    RTCPeerConnectionConstructorConstraints = 1041,
    RTCPeerConnectionConstructorCompliant = 1042,
    RTCPeerConnectionCreateOfferLegacyFailureCallback = 1044,
    RTCPeerConnectionCreateOfferLegacyConstraints = 1045,
    RTCPeerConnectionCreateOfferLegacyOfferOptions = 1046,
    RTCPeerConnectionCreateOfferLegacyCompliant = 1047,
    RTCPeerConnectionCreateAnswerLegacyFailureCallback = 1049,
    RTCPeerConnectionCreateAnswerLegacyConstraints = 1050,
    RTCPeerConnectionCreateAnswerLegacyCompliant = 1051,
    RTCPeerConnectionSetLocalDescriptionLegacyNoSuccessCallback = 1052,
    RTCPeerConnectionSetLocalDescriptionLegacyNoFailureCallback = 1053,
    RTCPeerConnectionSetLocalDescriptionLegacyCompliant = 1054,
    RTCPeerConnectionSetRemoteDescriptionLegacyNoSuccessCallback = 1055,
    RTCPeerConnectionSetRemoteDescriptionLegacyNoFailureCallback = 1056,
    RTCPeerConnectionSetRemoteDescriptionLegacyCompliant = 1057,
    RTCPeerConnectionGetStatsLegacyNonCompliant = 1058,
    NodeFilterIsFunction = 1059,
    NodeFilterIsObject = 1060,
    CSSSelectorInternalPseudoListBox = 1062,
    CSSSelectorInternalMediaControlsCastButton = 1063,
    CSSSelectorInternalMediaControlsOverlayCastButton = 1064,
    CSSSelectorInternalPseudoSpatialNavigationFocus = 1065,
    SameOriginTextScript = 1066,
    SameOriginApplicationScript = 1067,
    SameOriginOtherScript = 1068,
    CrossOriginTextScript = 1069,
    CrossOriginApplicationScript = 1070,
    CrossOriginOtherScript = 1071,
    SVG1DOMSVGTests = 1072,
    DisableRemotePlaybackAttribute = 1074,
    V8SloppyMode = 1075,
    V8StrictMode = 1076,
    V8StrongMode = 1077,
    AudioNodeConnectToAudioNode = 1078,
    AudioNodeConnectToAudioParam = 1079,
    AudioNodeDisconnectFromAudioNode = 1080,
    AudioNodeDisconnectFromAudioParam = 1081,
    V8CSSFontFaceRule_Style_AttributeGetter = 1082,
    SelectionCollapseNull = 1083,
    SelectionSetBaseAndExtentNull = 1084,
    V8SVGSVGElement_CreateSVGNumber_Method = 1085,
    V8SVGSVGElement_CreateSVGLength_Method = 1086,
    V8SVGSVGElement_CreateSVGAngle_Method = 1087,
    V8SVGSVGElement_CreateSVGPoint_Method = 1088,
    V8SVGSVGElement_CreateSVGMatrix_Method = 1089,
    V8SVGSVGElement_CreateSVGRect_Method = 1090,
    V8SVGSVGElement_CreateSVGTransform_Method = 1091,
    V8SVGSVGElement_CreateSVGTransformFromMatrix_Method = 1092,
    FormNameAccessForNonDescendantImageElement = 1093,
    V8RegExpPrototypeStickyGetter = 1096,
    V8RegExpPrototypeToString = 1097,
    V8InputDeviceCapabilities_FiresTouchEvents_AttributeGetter = 1098,
    DataElement = 1099,
    TimeElement = 1100,
    SVG1DOMUriReference = 1101,
    SVG1DOMZoomAndPan = 1102,
    V8SVGGraphicsElement_Transform_AttributeGetter = 1103,
    MenuItemElement = 1104,
    MenuItemCloseTag = 1105,
    SVG1DOMMarkerElement = 1106,
    SVG1DOMUseElement = 1107,
    SVG1DOMMaskElement = 1108,
    V8SVGAElement_Target_AttributeGetter = 1109,
    V8SVGClipPathElement_ClipPathUnits_AttributeGetter = 1110,
    SVG1DOMFitToViewBox = 1111,
    SVG1DOMSVGElement = 1114,
    SVG1DOMImageElement = 1115,
    SVG1DOMForeignObjectElement = 1116,
    AudioContextCreateIIRFilter = 1117,
    // The above items are available in M49 branch

    CSSSelectorPseudoSlotted = 1118,
    MediaDevicesEnumerateDevices = 1119,
    NonSecureSharedWorkerAccessedFromSecureContext = 1120,
    SecureSharedWorkerAccessedFromNonSecureContext = 1121,
    EventComposedPath = 1123,
    LinkHeaderPreload = 1124,
    MouseWheelEvent = 1125,
    WheelEvent = 1126,
    MouseWheelAndWheelEvent = 1127,
    BodyScrollsInAdditionToViewport = 1128,
    DocumentDesignModeEnabeld = 1129,
    ContentEditableTrue = 1130,
    ContentEditableTrueOnHTML = 1131,
    ContentEditablePlainTextOnly = 1132,
    V8RegExpPrototypeUnicodeGetter = 1133,
    V8IntlV8Parse = 1134,
    V8IntlPattern = 1135,
    V8IntlResolved = 1136,
    V8PromiseChain = 1137,
    V8PromiseAccept = 1138,
    V8PromiseDefer = 1139,
    EventComposed = 1140,
    GeolocationInsecureOriginIframe = 1141,
    GeolocationSecureOriginIframe = 1142,
    RequestMIDIAccessIframe = 1143,
    GetUserMediaInsecureOriginIframe = 1144,
    GetUserMediaSecureOriginIframe = 1145,
    ElementRequestPointerLockIframe = 1146,
    NotificationAPIInsecureOriginIframe = 1147,
    NotificationAPISecureOriginIframe = 1148,
    WebSocket = 1149,
    MediaStreamConstraintsNameValue = 1150,
    MediaStreamConstraintsFromDictionary = 1151,
    MediaStreamConstraintsConformant = 1152,
    CSSSelectorIndirectAdjacent = 1153,
    CreateImageBitmap = 1156,
    PresentationConnectionConnectEventListener = 1157,
    PresentationConnectionCloseEventListener = 1158,
    PresentationConnectionTerminateEventListener = 1159,
    DocumentCreateEventAnimationEvent = 1162,
    DocumentCreateEventBeforeUnloadEvent = 1166,
    DocumentCreateEventCompositionEvent = 1168,
    DocumentCreateEventDragEvent = 1169,
    DocumentCreateEventErrorEvent = 1170,
    DocumentCreateEventFocusEvent = 1171,
    DocumentCreateEventHashChangeEvent = 1172,
    DocumentCreateEventMutationEvent = 1173,
    DocumentCreateEventPageTransitionEvent = 1174,
    DocumentCreateEventPopStateEvent = 1176,
    DocumentCreateEventProgressEvent = 1177,
    DocumentCreateEventTextEvent = 1182,
    DocumentCreateEventTransitionEvent = 1183,
    DocumentCreateEventWheelEvent = 1184,
    DocumentCreateEventTrackEvent = 1186,
    DocumentCreateEventWebKitAnimationEvent = 1187,
    DocumentCreateEventMutationEvents = 1188,
    DocumentCreateEventSVGEvents = 1190,
    DocumentCreateEventWebKitTransitionEvent = 1191,
    DocumentCreateEventDeviceMotionEvent = 1195,
    DocumentCreateEventDeviceOrientationEvent = 1196,
    DocumentCreateEventIDBVersionChangeEvent = 1201,
    DocumentCreateEventStorageEvent = 1221,
    DocumentCreateEventWebGLContextEvent = 1224,
    DocumentCreateEventCloseEvent = 1227,
    DocumentCreateEventKeyboardEvents = 1228,
    HTMLMediaElement = 1229,
    HTMLMediaElementInDocument = 1230,
    HTMLMediaElementControlsAttribute = 1231,
    V8Animation_Oncancel_AttributeGetter = 1233,
    V8Animation_Oncancel_AttributeSetter = 1234,
    V8HTMLCommentInExternalScript = 1235,
    V8HTMLComment = 1236,
    V8SloppyModeBlockScopedFunctionRedefinition = 1237,
    V8ForInInitializer = 1238,
    V8Animation_Id_AttributeGetter = 1239,
    V8Animation_Id_AttributeSetter = 1240,
    ApplicationCacheManifestSelectInsecureOrigin = 1245,
    ApplicationCacheManifestSelectSecureOrigin = 1246,
    ApplicationCacheAPIInsecureOrigin = 1247,
    ApplicationCacheAPISecureOrigin = 1248,
    // The above items are available in M50 branch

    CSSAtRuleApply = 1249,
    CSSSelectorPseudoAny = 1250,
    DocumentAllItemNoArguments = 1252,
    DocumentAllItemNamed = 1253,
    DocumentAllItemIndexed = 1254,
    DocumentAllItemIndexedWithNonNumber = 1255,
    DocumentAllLegacyCallNoArguments = 1256,
    DocumentAllLegacyCallNamed = 1257,
    DocumentAllLegacyCallIndexed = 1258,
    DocumentAllLegacyCallIndexedWithNonNumber = 1259,
    DocumentAllLegacyCallTwoArguments = 1260,
    HTMLLabelElementControlForNonFormAssociatedElement = 1263,
    HTMLMediaElementLoadNetworkEmptyNotPaused = 1265,
    V8Window_WebkitSpeechGrammar_ConstructorGetter = 1267,
    V8Window_WebkitSpeechGrammarList_ConstructorGetter = 1268,
    V8Window_WebkitSpeechRecognition_ConstructorGetter = 1269,
    V8Window_WebkitSpeechRecognitionError_ConstructorGetter = 1270,
    V8Window_WebkitSpeechRecognitionEvent_ConstructorGetter = 1271,
    V8Window_SpeechSynthesis_AttributeGetter = 1272,
    V8IDBFactory_WebkitGetDatabaseNames_Method = 1273,
    ImageDocument = 1274,
    ScriptPassesCSPDynamic = 1275,
    CSPWithStrictDynamic = 1277,
    ScrollAnchored = 1278,
    AddEventListenerFourArguments = 1279,
    RemoveEventListenerFourArguments = 1280,
    SVGCalcModeDiscrete = 1287,
    SVGCalcModeLinear = 1288,
    SVGCalcModePaced = 1289,
    SVGCalcModeSpline = 1290,
    FormSubmissionStarted = 1291,
    FormValidationStarted = 1292,
    FormValidationAbortedSubmission = 1293,
    FormValidationShowedMessage = 1294,
    WebAnimationsEasingAsFunctionLinear = 1295,
    WebAnimationsEasingAsFunctionOther = 1296,
    // The above items are available in M51 branch

    V8Document_Images_AttributeGetter = 1297,
    V8Document_Embeds_AttributeGetter = 1298,
    V8Document_Plugins_AttributeGetter = 1299,
    V8Document_Links_AttributeGetter = 1300,
    V8Document_Forms_AttributeGetter = 1301,
    V8Document_Scripts_AttributeGetter = 1302,
    V8Document_Anchors_AttributeGetter = 1303,
    V8Document_Applets_AttributeGetter = 1304,
    XMLHttpRequestCrossOriginWithCredentials = 1305,
    MediaStreamTrackRemote = 1306,
    V8Node_IsConnected_AttributeGetter = 1307,
    ShadowRootDelegatesFocus = 1308,
    MixedShadowRootV0AndV1 = 1309,
    ImageDocumentInFrame = 1310,
    MediaDocument = 1311,
    MediaDocumentInFrame = 1312,
    PluginDocument = 1313,
    PluginDocumentInFrame = 1314,
    SinkDocument = 1315,
    SinkDocumentInFrame = 1316,
    TextDocument = 1317,
    TextDocumentInFrame = 1318,
    ViewSourceDocument = 1319,
    FileAPINativeLineEndings = 1320,
    PointerEventAttributeCount = 1321,
    CompositedReplication = 1322,
    EncryptedMediaAllSelectedContentTypesHaveCodecs = 1323,
    EncryptedMediaAllSelectedContentTypesMissingCodecs = 1324,
    V8DataTransferItem_WebkitGetAsEntry_Method = 1325,
    V8HTMLInputElement_WebkitEntries_AttributeGetter = 1326,
    Entry_Filesystem_AttributeGetter_IsolatedFileSystem = 1327,
    Entry_GetMetadata_Method_IsolatedFileSystem = 1328,
    Entry_MoveTo_Method_IsolatedFileSystem = 1329,
    Entry_CopyTo_Method_IsolatedFileSystem = 1330,
    Entry_Remove_Method_IsolatedFileSystem = 1331,
    Entry_GetParent_Method_IsolatedFileSystem = 1332,
    Entry_ToURL_Method_IsolatedFileSystem = 1333,
    During_Microtask_Alert = 1334,
    During_Microtask_Confirm = 1335,
    During_Microtask_Print = 1336,
    During_Microtask_Prompt = 1337,
    During_Microtask_SyncXHR = 1338,
    CredentialManagerGetReturnedCredential = 1342,
    GeolocationInsecureOriginDeprecatedNotRemoved = 1343,
    GeolocationInsecureOriginIframeDeprecatedNotRemoved = 1344,
    ProgressElementWithNoneAppearance = 1345,
    ProgressElementWithProgressBarAppearance = 1346,
    PointerEventAddListenerCount = 1347,
    EventCancelBubbleAffected = 1348,
    EventCancelBubbleWasChangedToTrue = 1349,
    EventCancelBubbleWasChangedToFalse = 1350,
    CSSValueAppearanceNone = 1351,
    CSSValueAppearanceNotNone = 1352,
    CSSValueAppearanceOthers = 1353,
    CSSValueAppearanceButton = 1354,
    CSSValueAppearanceCaret = 1355,
    CSSValueAppearanceCheckbox = 1356,
    CSSValueAppearanceMenulist = 1357,
    CSSValueAppearanceMenulistButton = 1358,
    CSSValueAppearanceListbox = 1359,
    CSSValueAppearanceRadio = 1360,
    CSSValueAppearanceSearchField = 1361,
    CSSValueAppearanceTextField = 1362,
    AudioContextCreatePannerAutomated = 1363,
    PannerNodeSetPosition = 1364,
    PannerNodeSetOrientation = 1365,
    AudioListenerSetPosition = 1366,
    AudioListenerSetOrientation = 1367,
    IntersectionObserver_Constructor = 1368,
    DurableStoragePersist = 1369,
    DurableStoragePersisted = 1370,
    DurableStorageEstimate = 1371,
    CSSDeepCombinatorAndShadow = 1375,
    OpacityWithPreserve3DQuirk = 1376,
    CSSSelectorPseudoReadOnly = 1377,
    CSSSelectorPseudoReadWrite = 1378,
    // The above items are available in M52 branch

    CSSSelectorPseudoDefined = 1383,
    RTCPeerConnectionAddIceCandidatePromise = 1384,
    RTCPeerConnectionAddIceCandidateLegacy = 1385,
    RTCIceCandidateDefaultSdpMLineIndex = 1386,
    MediaStreamConstraintsOldAndNew = 1389,
    V8ArrayProtectorDirtied = 1390,
    V8ArraySpeciesModified = 1391,
    V8ArrayPrototypeConstructorModified = 1392,
    V8ArrayInstanceProtoModified = 1393,
    V8ArrayInstanceConstructorModified = 1394,
    V8LegacyFunctionDeclaration = 1395,
    V8RegExpPrototypeSourceGetter = 1396,
    V8RegExpPrototypeOldFlagGetter = 1397,
    V8DecimalWithLeadingZeroInStrictMode = 1398,
    GetUserMediaPrefixed = 1400,
    GetUserMediaLegacy = 1401,
    GetUserMediaPromise = 1402,
    CSSFilterFunctionNoArguments = 1403,
    V8LegacyDateParser = 1404,
    OpenSearchInsecureOriginInsecureTarget = 1405,
    OpenSearchInsecureOriginSecureTarget = 1406,
    OpenSearchSecureOriginInsecureTarget = 1407,
    OpenSearchSecureOriginSecureTarget = 1408,
    RegisterProtocolHandlerSecureOrigin = 1409,
    RegisterProtocolHandlerInsecureOrigin = 1410,
    CrossOriginWindowAlert = 1411,
    CrossOriginWindowConfirm = 1412,
    CrossOriginWindowPrompt = 1413,
    CrossOriginWindowPrint = 1414,
    MediaStreamOnActive = 1415,
    MediaStreamOnInactive = 1416,
    AddEventListenerPassiveTrue = 1417,
    AddEventListenerPassiveFalse = 1418,
    CSPReferrerDirective = 1419,
    DocumentOpen = 1420,
    ElementRequestPointerLockInShadow = 1421,
    ShadowRootPointerLockElement = 1422,
    DocumentPointerLockElementInV0Shadow = 1423,
    TextAreaMaxLength = 1424,
    TextAreaMinLength = 1425,
    TopNavigationFromSubFrame = 1426,
    PrefixedElementRequestFullscreenInShadow = 1427,
    MediaSourceAbortRemove = 1428,
    MediaSourceDurationTruncatingBuffered = 1429,
    AudioContextCrossOriginIframe = 1430,
    // The above items are available in M53 branch

    PointerEventSetCapture = 1431,
    PointerEventDispatch = 1432,
    MIDIMessageEventReceivedTime = 1433,
    SummaryElementWithDisplayBlockAuthorRule = 1434,
    V8MediaStream_Active_AttributeGetter = 1435,
    BeforeInstallPromptEvent = 1436,
    BeforeInstallPromptEventUserChoice = 1437,
    BeforeInstallPromptEventPreventDefault = 1438,
    BeforeInstallPromptEventPrompt = 1439,
    ExecCommandAltersHTMLStructure = 1440,
    SecureContextCheckPassed = 1441,
    SecureContextCheckFailed = 1442,
    SecureContextCheckForSandboxedOriginPassed = 1443,
    SecureContextCheckForSandboxedOriginFailed = 1444,
    V8DefineGetterOrSetterWouldThrow = 1445,
    V8FunctionConstructorReturnedUndefined = 1446,
    V8BroadcastChannel_Constructor = 1447,
    V8BroadcastChannel_PostMessage_Method = 1448,
    V8BroadcastChannel_Close_Method = 1449,
    TouchStartFired = 1450,
    MouseDownFired = 1451,
    PointerDownFired = 1452,
    PointerDownFiredForTouch = 1453,
    PointerEventDispatchPointerDown = 1454,
    SVGSMILBeginOrEndEventValue = 1455,
    SVGSMILBeginOrEndSyncbaseValue = 1456,
    SVGSMILElementInsertedAfterLoad = 1457,
    V8VisualViewport_ScrollLeft_AttributeGetter = 1458,
    V8VisualViewport_ScrollTop_AttributeGetter = 1459,
    V8VisualViewport_PageX_AttributeGetter = 1460,
    V8VisualViewport_PageY_AttributeGetter = 1461,
    V8VisualViewport_ClientWidth_AttributeGetter = 1462,
    V8VisualViewport_ClientHeight_AttributeGetter = 1463,
    V8VisualViewport_Scale_AttributeGetter = 1464,
    VisualViewportScrollFired = 1465,
    VisualViewportResizeFired = 1466,
    NodeGetRootNode = 1467,
    SlotChangeEventAddListener = 1468,
    CSSValueAppearanceButtonRendered = 1469,
    CSSValueAppearanceButtonForAnchor = 1470,
    CSSValueAppearanceButtonForButton = 1471,
    CSSValueAppearanceButtonForOtherButtons = 1472,
    CSSValueAppearanceTextFieldRendered = 1473,
    CSSValueAppearanceTextFieldForSearch = 1474,
    CSSValueAppearanceTextFieldForTextField = 1475,
    RTCPeerConnectionGetStats = 1476,
    SVGSMILAnimationAppliedEffect = 1477,
    PerformanceResourceTimingSizes = 1478,
    EventSourceDocument = 1479,
    EventSourceWorker = 1480,
    SingleOriginInTimingAllowOrigin = 1481,
    MultipleOriginsInTimingAllowOrigin = 1482,
    StarInTimingAllowOrigin = 1483,
    SVGSMILAdditiveAnimation = 1484,
    SendBeaconWithNonSimpleContentType = 1485,
    ChromeLoadTimesRequestTime = 1486,
    ChromeLoadTimesStartLoadTime = 1487,
    ChromeLoadTimesCommitLoadTime = 1488,
    ChromeLoadTimesFinishDocumentLoadTime = 1489,
    ChromeLoadTimesFinishLoadTime = 1490,
    ChromeLoadTimesFirstPaintTime = 1491,
    ChromeLoadTimesFirstPaintAfterLoadTime = 1492,
    ChromeLoadTimesNavigationType = 1493,
    ChromeLoadTimesWasFetchedViaSpdy = 1494,
    ChromeLoadTimesWasNpnNegotiated = 1495,
    ChromeLoadTimesNpnNegotiatedProtocol = 1496,
    ChromeLoadTimesWasAlternateProtocolAvailable = 1497,
    ChromeLoadTimesConnectionInfo = 1498,
    ChromeLoadTimesUnknown = 1499,
    SVGViewElement = 1500,
    WebShareShare = 1501,
    AuxclickAddListenerCount = 1502,
    HTMLCanvasElement = 1503,
    SVGSMILAnimationElementTiming = 1504,
    SVGSMILBeginEndAnimationElement = 1505,
    SVGSMILPausing = 1506,
    SVGSMILCurrentTime = 1507,
    HTMLBodyElementOnSelectionChangeAttribute = 1508,
    ForeignFetchInterception = 1509,
    MapNameMatchingStrict = 1510,
    MapNameMatchingASCIICaseless = 1511,
    MapNameMatchingUnicodeLower = 1512,
    InputSelectionGettersThrow = 1517,
    UsbGetDevices = 1519,
    UsbRequestDevice = 1520,
    UsbDeviceOpen = 1521,
    UsbDeviceClose = 1522,
    UsbDeviceSelectConfiguration = 1523,
    UsbDeviceClaimInterface = 1524,
    UsbDeviceReleaseInterface = 1525,
    UsbDeviceSelectAlternateInterface = 1526,
    UsbDeviceControlTransferIn = 1527,
    UsbDeviceControlTransferOut = 1528,
    UsbDeviceClearHalt = 1529,
    UsbDeviceTransferIn = 1530,
    UsbDeviceTransferOut = 1531,
    UsbDeviceIsochronousTransferIn = 1532,
    UsbDeviceIsochronousTransferOut = 1533,
    UsbDeviceReset = 1534,
    // The above items are available in M54 branch

    PointerEnterLeaveFired = 1535,
    PointerOverOutFired = 1536,
    DraggableAttribute = 1539,
    CleanScriptElementWithNonce = 1540,
    PotentiallyInjectedScriptElementWithNonce = 1541,
    PendingStylesheetAddedAfterBodyStarted = 1542,
    UntrustedMouseDownEventDispatchedToSelect = 1543,
    BlockedSniffingAudioToScript = 1544,
    BlockedSniffingVideoToScript = 1545,
    BlockedSniffingCSVToScript = 1546,
    MetaSetCookie = 1547,
    MetaRefresh = 1548,
    MetaSetCookieWhenCSPBlocksInlineScript = 1549,
    MetaRefreshWhenCSPBlocksInlineScript = 1550,
    MiddleClickAutoscrollStart = 1551,
    RTCPeerConnectionCreateOfferOptionsOfferToReceive = 1553,
    DragAndDropScrollStart = 1554,
    PresentationConnectionListConnectionAvailableEventListener = 1555,
    WebAudioAutoplayCrossOriginIframe = 1556,
    VRGetDisplays = 1558,
    VRPresent = 1559,
    VRDeprecatedGetPose = 1560,
    WebAudioAnalyserNode = 1561,
    WebAudioAudioBuffer = 1562,
    WebAudioAudioBufferSourceNode = 1563,
    WebAudioBiquadFilterNode = 1564,
    WebAudioChannelMergerNode = 1565,
    WebAudioChannelSplitterNode = 1566,
    WebAudioConvolverNode = 1567,
    WebAudioDelayNode = 1568,
    WebAudioDynamicsCompressorNode = 1569,
    WebAudioGainNode = 1570,
    WebAudioIIRFilterNode = 1571,
    WebAudioMediaElementAudioSourceNode = 1572,
    WebAudioOscillatorNode = 1573,
    WebAudioPannerNode = 1574,
    WebAudioPeriodicWave = 1575,
    WebAudioStereoPannerNode = 1576,
    WebAudioWaveShaperNode = 1577,
    CSSZoomReset = 1578,
    CSSZoomDocument = 1579,
    XSSAuditorBlockedScript = 1581,
    XSSAuditorBlockedEntirePage = 1582,
    XSSAuditorDisabled = 1583,
    XSSAuditorEnabledFilter = 1584,
    XSSAuditorEnabledBlock = 1585,
    XSSAuditorInvalid = 1586,
    TextInputEventOnInput = 1589,
    TextInputEventOnTextArea = 1590,
    TextInputEventOnContentEditable = 1591,
    TextInputEventOnNotNode = 1592,
    WebkitBeforeTextInsertedOnInput = 1593,
    WebkitBeforeTextInsertedOnTextArea = 1594,
    WebkitBeforeTextInsertedOnContentEditable = 1595,
    WebkitBeforeTextInsertedOnNotNode = 1596,
    WebkitEditableContentChangedOnInput = 1597,
    WebkitEditableContentChangedOnTextArea = 1598,
    WebkitEditableContentChangedOnContentEditable = 1599,
    WebkitEditableContentChangedOnNotNode = 1600,
    V8NavigatorUserMediaError_ConstraintName_AttributeGetter = 1601,
    V8HTMLMediaElement_SrcObject_AttributeGetter = 1602,
    V8HTMLMediaElement_SrcObject_AttributeSetter = 1603,
    CreateObjectURLBlob = 1604,
    CreateObjectURLMediaSource = 1605,
    CreateObjectURLMediaStream = 1606,
    DocumentCreateTouchWindowNull = 1607,
    DocumentCreateTouchWindowWrongType = 1608,
    DocumentCreateTouchTargetNull = 1609,
    DocumentCreateTouchTargetWrongType = 1610,
    DocumentCreateTouchLessThanSevenArguments = 1611,
    DocumentCreateTouchMoreThanSevenArguments = 1612,
    EncryptedMediaCapabilityProvided = 1613,
    EncryptedMediaCapabilityNotProvided = 1614,
    LongTaskObserver = 1615,
    CSSMotionInEffect = 1616,
    CSSOffsetInEffect = 1617,
    // The above items are available in M55 branch

    VRGetDisplaysInsecureOrigin = 1618,
    VRRequestPresent = 1619,
    VRRequestPresentInsecureOrigin = 1620,
    VRDeprecatedFieldOfView = 1621,
    VideoInCanvas = 1622,
    HiddenAutoplayedVideoInCanvas = 1623,
    OffscreenCanvas = 1624,
    GamepadPose = 1625,
    GamepadHand = 1626,
    GamepadDisplayId = 1627,
    GamepadButtonTouched = 1628,
    GamepadPoseHasOrientation = 1629,
    GamepadPoseHasPosition = 1630,
    GamepadPosePosition = 1631,
    GamepadPoseLinearVelocity = 1632,
    GamepadPoseLinearAcceleration = 1633,
    GamepadPoseOrientation = 1634,
    GamepadPoseAngularVelocity = 1635,
    GamepadPoseAngularAcceleration = 1636,
    V8RTCDataChannel_MaxRetransmitTime_AttributeGetter = 1638,
    V8RTCDataChannel_MaxRetransmits_AttributeGetter = 1639,
    V8RTCDataChannel_Reliable_AttributeGetter = 1640,
    V8RTCPeerConnection_AddStream_Method = 1641,
    V8RTCPeerConnection_CreateDTMFSender_Method = 1642,
    V8RTCPeerConnection_GetLocalStreams_Method = 1643,
    V8RTCPeerConnection_GetRemoteStreams_Method = 1644,
    V8RTCPeerConnection_GetStreamById_Method = 1645,
    V8RTCPeerConnection_RemoveStream_Method = 1646,
    V8RTCPeerConnection_UpdateIce_Method = 1647,
    RTCPeerConnectionCreateDataChannelMaxRetransmitTime = 1648,
    RTCPeerConnectionCreateDataChannelMaxRetransmits = 1649,
    AudioContextCreateConstantSource = 1650,
    WebAudioConstantSourceNode = 1651,
    LoopbackEmbeddedInSecureContext = 1652,
    LoopbackEmbeddedInNonSecureContext = 1653,
    BlinkMacSystemFont = 1654,
    RTCConfigurationIceTransportsNone = 1655,
    RTCIceServerURL = 1656,
    RTCIceServerURLs = 1657,
    OffscreenCanvasTransferToImageBitmap2D = 1658,
    OffscreenCanvasTransferToImageBitmapWebGL = 1659,
    OffscreenCanvasCommit2D = 1660,
    OffscreenCanvasCommitWebGL = 1661,
    RTCConfigurationIceTransportPolicy = 1662,
    RTCConfigurationIceTransportPolicyNone = 1663,
    RTCConfigurationIceTransports = 1664,
    DocumentFullscreenElementInV0Shadow = 1665,
    ScriptWithCSPBypassingSchemeParserInserted = 1666,
    ScriptWithCSPBypassingSchemeNotParserInserted = 1667,
    DocumentCreateElement2ndArgStringHandling = 1668,
    V8MediaRecorder_Start_Method = 1669,
    WebBluetoothRequestDevice = 1670,
    UnitlessPerspectiveInPerspectiveProperty = 1671,
    UnitlessPerspectiveInTransformProperty = 1672,
    V8RTCSessionDescription_Type_AttributeGetter = 1673,
    V8RTCSessionDescription_Type_AttributeSetter = 1674,
    V8RTCSessionDescription_Sdp_AttributeGetter = 1675,
    V8RTCSessionDescription_Sdp_AttributeSetter = 1676,
    RTCSessionDescriptionInitNoType = 1677,
    RTCSessionDescriptionInitNoSdp = 1678,
    HTMLMediaElementPreloadForcedMetadata = 1679,
    GenericSensorStart = 1680,
    GenericSensorStop = 1681,
    TouchEventPreventedNoTouchAction = 1682,
    TouchEventPreventedForcedDocumentPassiveNoTouchAction = 1683,
    V8Event_StopPropagation_Method = 1684,
    V8Event_StopImmediatePropagation_Method = 1685,
    ImageCaptureConstructor = 1686,
    V8Document_RootScroller_AttributeGetter = 1687,
    V8Document_RootScroller_AttributeSetter = 1688,
    CustomElementRegistryDefine = 1689,
    LinkHeaderServiceWorker = 1690,
    CSSShadowPiercingDescendantCombinator = 1691,
    // The above items are available in M56 branch.

    CSSFlexibleBox = 1692,
    CSSGridLayout = 1693,
    V8BarcodeDetector_Detect_Method = 1694,
    V8FaceDetector_Detect_Method = 1695,
    FullscreenAllowedByOrientationChange = 1696,
    ServiceWorkerRespondToNavigationRequestWithRedirectedResponse = 1697,
    V8AudioContext_Constructor = 1698,
    V8OfflineAudioContext_Constructor = 1699,
    AppInstalledEventAddListener = 1700,
    AudioContextGetOutputTimestamp = 1701,
    V8MediaStreamAudioDestinationNode_Constructor = 1702,
    V8AnalyserNode_Constructor = 1703,
    V8AudioBuffer_Constructor = 1704,
    V8AudioBufferSourceNode_Constructor = 1705,
    V8AudioProcessingEvent_Constructor = 1706,
    V8BiquadFilterNode_Constructor = 1707,
    V8ChannelMergerNode_Constructor = 1708,
    V8ChannelSplitterNode_Constructor = 1709,
    V8ConstantSourceNode_Constructor = 1710,
    V8ConvolverNode_Constructor = 1711,
    V8DelayNode_Constructor = 1712,
    V8DynamicsCompressorNode_Constructor = 1713,
    V8GainNode_Constructor = 1714,
    V8IIRFilterNode_Constructor = 1715,
    V8MediaElementAudioSourceNode_Constructor = 1716,
    V8MediaStreamAudioSourceNode_Constructor = 1717,
    V8OfflineAudioCompletionEvent_Constructor = 1718,
    V8OscillatorNode_Constructor = 1719,
    V8PannerNode_Constructor = 1720,
    V8PeriodicWave_Constructor = 1721,
    V8StereoPannerNode_Constructor = 1722,
    V8WaveShaperNode_Constructor = 1723,
    V8Headers_GetAll_Method = 1724,
    NavigatorVibrateEngagementNone = 1725,
    NavigatorVibrateEngagementMinimal = 1726,
    NavigatorVibrateEngagementLow = 1727,
    NavigatorVibrateEngagementMedium = 1728,
    NavigatorVibrateEngagementHigh = 1729,
    NavigatorVibrateEngagementMax = 1730,
    AlertEngagementNone = 1731,
    AlertEngagementMinimal = 1732,
    AlertEngagementLow = 1733,
    AlertEngagementMedium = 1734,
    AlertEngagementHigh = 1735,
    AlertEngagementMax = 1736,
    ConfirmEngagementNone = 1737,
    ConfirmEngagementMinimal = 1738,
    ConfirmEngagementLow = 1739,
    ConfirmEngagementMedium = 1740,
    ConfirmEngagementHigh = 1741,
    ConfirmEngagementMax = 1742,
    PromptEngagementNone = 1743,
    PromptEngagementMinimal = 1744,
    PromptEngagementLow = 1745,
    PromptEngagementMedium = 1746,
    PromptEngagementHigh = 1747,
    PromptEngagementMax = 1748,
    TopNavInSandbox = 1749,
    TopNavInSandboxWithoutGesture = 1750,
    TopNavInSandboxWithPerm = 1751,
    TopNavInSandboxWithPermButNoGesture = 1752,
    ReferrerPolicyHeader = 1753,
    HTMLAnchorElementReferrerPolicyAttribute = 1754,
    HTMLIFrameElementReferrerPolicyAttribute = 1755,
    HTMLImageElementReferrerPolicyAttribute = 1756,
    HTMLLinkElementReferrerPolicyAttribute = 1757,
    BaseElement = 1758,
    BaseWithCrossOriginHref = 1759,
    BaseWithDataHref = 1760,
    BaseWithNewlinesInTarget = 1761,
    BaseWithOpenBracketInTarget = 1762,
    BaseWouldBeBlockedByDefaultSrc = 1763,
    V8AssigmentExpressionLHSIsCallInSloppy = 1764,
    V8AssigmentExpressionLHSIsCallInStrict = 1765,
    V8PromiseConstructorReturnedUndefined = 1766,
    FormSubmittedWithUnclosedFormControl = 1767,

    // Add new features immediately above this line. Don't change assigned
    // numbers of any item, and don't reuse removed slots.
    // Also, run update_use_counter_feature_enum.py in
    // chromium/src/tools/metrics/histograms/ to update the UMA mapping.
    NumberOfFeatures,  // This enum value must be last.
  };

  // "count" sets the bit for this feature to 1. Repeated calls are ignored.
  static void count(const Frame*, Feature);
  static void count(const Document&, Feature);
  static void count(ExecutionContext*, Feature);

  void count(CSSParserMode, CSSPropertyID);
  void count(Feature);

  // Count only features if they're being used in an iframe which does not
  // have script access into the top level document.
  static void countCrossOriginIframe(const Document&, Feature);

  // Return whether the Feature was previously counted for this document.
  // NOTE: only for use in testing.
  static bool isCounted(Document&, Feature);
  // Return whether the CSSPropertyID was previously counted for this document.
  // NOTE: only for use in testing.
  static bool isCounted(Document&, const String&);
  bool isCounted(CSSPropertyID unresolvedProperty);

  // Invoked when a new document is loaded into the main frame of the page.
  void didCommitLoad(KURL);

  static UseCounter* getFrom(const Document*);
  static UseCounter* getFrom(const CSSStyleSheet*);
  static UseCounter* getFrom(const StyleSheetContents*);

  static int mapCSSPropertyIdToCSSSampleIdForHistogram(CSSPropertyID);

  // When muted, all calls to "count" functions are ignoed.  May be nested.
  void muteForInspector();
  void unmuteForInspector();

  void recordMeasurement(Feature);

  // Return whether the feature has been seen since the last page load
  // (except when muted).  Does include features seen in documents which have
  // reporting disabled.
  bool hasRecordedMeasurement(Feature) const;

 private:
  EnumerationHistogram& featuresHistogram() const;
  EnumerationHistogram& cssHistogram() const;

  // If non-zero, ignore all 'count' calls completely.
  unsigned m_muteCount;

  // If true, disable reporting all histogram entries.
  bool m_disableReporting;

  // The scope represented by this UseCounter instance.
  Context m_context;

  // Track what features/properties have been reported to the (non-legacy)
  // histograms.
  BitVector m_featuresRecorded;
  BitVector m_CSSRecorded;

  // Encapsulates the work to preserve the old "FeatureObserver" histogram with
  // original semantics
  // TODO(rbyers): remove this - http://crbug.com/676837
  class CORE_EXPORT LegacyCounter {
   public:
    LegacyCounter();
    ~LegacyCounter();
    void countFeature(Feature);
    void countCSS(CSSPropertyID);
    void updateMeasurements();

   private:
    // Tracks what features/properties need to be reported to the legacy
    // histograms.
    BitVector m_featureBits;
    BitVector m_CSSBits;
  } m_legacyCounter;
};

}  // namespace blink

#endif  // UseCounter_h
