{
  // http://dev.chromium.org/blink/runtime-enabled-features
  //
  // This list is used to generate runtime_enabled_features.h/cc which contains
  // a class that stores static enablers for all experimental features.

  parameters: {
    // Each feature can be assigned a "status":
    // * status=stable: Enable this in all Blink configurations. We are
    //   committed to these APIs indefinitely.
    // * status=experimental: In-progress features, Web Developers might play
    //   with, but are not on by default in stable.
    // * status=test: Enabled in ContentShell for testing, otherwise off.
    // Features without a status are not enabled anywhere by default.
    //
    // "stable" features listed here should be rare, as anything which we've
    // shipped stable can have its runtime flag removed soon after.
    status: {
      valid_values: ["stable", "experimental", "test"],
    },

    // "implied_by" or "depends_on" specifies relationship to other features:
    // * implied_by: ["feature1","feature2",...]
    //   The feature is automatically enabled if any implied_by features is
    //   enabled;
    // * depends_on: ["feature1","feature2",...]
    //   The feature is enabled only if all depends_on features are enabled.
    // Only one of "implied_by" and "depends_on" can be specified.
    implied_by: {
      default: [],
      valid_type: "list",
    },
    depends_on: {
      default: [],
      valid_type: "list",
    },

    // origin_trial_feature_name: "FEATURE_NAME" is used to integrate the
    // feature with the Origin Trials framework. The framework allows the
    // feature to be enabled at runtime on a per-page basis through a signed
    // token for the corresponding feature name. Declaring the
    // origin_trial_feature_name will cause a static method to be generated in
    // origin_trials.h/cpp. This static method allows the feature implementation
    // to check if it is enabled for the current context.
    origin_trial_feature_name: {
    },
    origin_trial_os: {
      default: [],
      valid_type: "list",
    },

    // settable_from_internals specifies whether a feature can be set from
    // internals.runtimeFlags, with the default being false.
    settable_from_internals: {
      valid_type: "bool",
    },

    // Set to true to have customised {feature}Enabled() method implementation.
    custom: {
      valid_type: "bool",
    },

    // Feature policy IDL extended attribute (see crrev.com/2247923004).
    feature_policy: {
    },
  },

  data: [
    {
      name: "Accelerated2dCanvas",
      settable_from_internals: true,
      status: "stable",
    },
    {
      name: "AccessibilityObjectModel",
      status: "experimental",
    },
    {
      name: "AdTagging",
      status: "test",
    },
    {
      name: "AllowActivationDelegationAttr",
    },
    {
      name: "AllowContentInitiatedDataUrlNavigations",
      status: "stable",
    },
    {
      name: "AnimationWorklet",
      origin_trial_feature_name: "AnimationWorklet",
      status: "experimental",
    },
    {
      name: "AsyncClipboard",
      status: "experimental",
    },
    {
      name: "AudioOutputDevices",
      status: "stable",
    },
    {
      name: "AudioVideoTracks",
      status: "experimental",
    },
    {
      name: "AutomationControlled",
      settable_from_internals: true,
    },
    {
      // Flag set by the media::kAutoplayIgnoreWebAudio feature flag.
      name: "AutoplayIgnoresWebAudio",
      settable_from_internals: true,
    },
    {
      name: "BackgroundFetch",
      status: "experimental",
    },
    {
      name: "BackgroundVideoTrackOptimization",
      status: "stable",
    },
    {
      name: "BlinkGenPropertyTrees",
    },
    {
      name: "BlinkRuntimeCallStats",
    },
    {
      name: "BloatedRendererDetection",
      status: "experimental",
    },
    {
      // Detects bloated renderers even if the uptime is small.
      // Useful for local testing, not intended for production.
      name: "BloatedRendererDetectionSkipUptimeCheck",
    },
    {
      name: "BlockCredentialedSubresources",
      status: "stable",
    },
    {
      name: "BlockingDownloadsInSandbox",
    },
    {
      name: "BlockMetaSetCookie",
      status: "stable"
    },
    {
      name: "Budget",
      status: "stable",
    },
    {
      name: "BudgetQuery",
      origin_trial_feature_name: "BudgetQuery",
      status: "experimental",
    },
    {
      name: "CacheInlineScriptCode"
    },
    {
      name: "CacheStyleSheetWithMediaQueries",
      status: "experimental",
    },
    {
      name: "Canvas2dContextLostRestored",
      status: "experimental",
    },
    {
      name: "Canvas2dFixedRenderingMode",
      status: "test",
    },
    {
      name: "Canvas2dImageChromium",
    },
    {
      name: "Canvas2dScrollPathIntoView",
      status: "experimental",
    },
    {
      name: "CanvasColorManagement",
      status: "experimental",
    },
    {
      name: "CanvasHitRegion",
      status: "experimental",
    },
    {
      name: "CanvasImageSmoothing",
      status: "experimental",
    },
    {
      name: "ClickRetargetting",
      status: "experimental",
    },
    {
      name: "ClientPlaceholdersForServerLoFi",
    },
    {
      name: "CompositedSelectionUpdate",
    },
    {
      name: "CompositeOpaqueFixedPosition",
      settable_from_internals: true,
      status: "experimental",
    },
    {
      name: "CompositorTouchAction",
      status: "test",
    },
    {
      name: "ComputedAccessibilityInfo",
      status: "experimental",
    },
    {
      name: "ConstructableStylesheets",
      status: "experimental",
    },
    {
      name: "ContextMenu",
      status: "experimental",
    },
    {
      name: "CookieStore",
      origin_trial_feature_name: "CookieStore",
      status: "experimental",
    },
    {
      name: "CorsRFC1918",
    },
    {
      name: "CSS3Text",
      status: "experimental",
    },
    {
      name: "CSSAdditiveAnimations",
      depends_on: ["StackedCSSPropertyAnimations"],
      status: "experimental",
    },
    {
      name: "CSSBackdropFilter",
      status: "experimental",
    },
    {
      name: "CSSEnvironmentVariables",
      status: "stable",
    },
    {
      name: "CSSFocusVisible",
      status: "experimental",
    },
    {
      name: "CSSFontSizeAdjust",
      status: "experimental",
    },
    {
      name: "CSSFragmentIdentifiers"
    },
    {
      name: "CSSHexAlphaColor",
      status: "stable",
    },
    {
      name: "CSSInBodyDoesNotBlockPaint",
      status: "stable",
    },
    {
      name: "CSSIndependentTransformProperties",
      status: "experimental",
    },
    {
      name: "CSSLayoutAPI",
      status: "experimental",
    },
    {
      name: "CSSLogical",
      status: "experimental",
    },
    {
      name: "CSSMaskSourceType",
      status: "experimental",
    },
    {
      name: "CSSMatches",
      status: "experimental",
    },
    {
      name: "CSSOffsetPathRay",
      status: "experimental",
    },
    {
      name: "CSSOffsetPathRayContain",
      status: "experimental",
    },
    {
      name: "CSSOffsetPositionAnchor",
      status: "experimental",
    },
    {
      name: "CSSOMSmoothScroll",
      status: "stable",
    },
    // Do not ship CSSPaintAPIArguments without shipping CSSVariables2 first.
    //
    // CSSPaintAPIArguments depends on parts of the the 'CSS Properties and
    // Values API Level 1', specification (section 'Supported syntax strings').
    // That specification is implemented behind the runtime enabled feature
    // CSSVariables2.
    {
      name: "CSSPaintAPIArguments",
      status: "experimental",
    },
    {
      name: "CSSPartPseudoElement",
      status: "experimental",
    },
    {
      name: "CSSPseudoIS",
      status: "experimental",
    },
    {
      name: "CSSScrollSnapPoints",
      status: "stable",
    },
    {
      name: "CSSSnapSize",
      status: "experimental",
    },
    {
      name: "CSSVariables2",
      status: "experimental",
    },
    {
      name: "CSSViewport",
      status: "experimental",
    },
    {
      name: "CustomElementDefaultStyle",
      status: "experimental",
    },
    // Introduced this flag as stable so web developers can test their sites
    // without native Custom Elements v0 support.
    {
      name: "CustomElementsV0",
      status: "stable",
    },
    {
      name: "CustomUserTiming",
    },
    {
      name: "Database",
      status: "stable",
    },
    {
      name: "DecodeToYUV",
      status: "experimental",
    },
    {
      name: "DeprecationReporting",
      status: "stable",
    },
    {
      name: "DesktopCaptureDisableLocalEchoControl",
      status: "experimental",
    },
    {
      name: "DisableHardwareNoiseSuppression",
      origin_trial_feature_name: "DisableHardwareNoiseSuppression",
      status: "experimental",
    },
    {
      name: "DisplayCutoutAPI",
      settable_from_internals: true,
    },
    {
      name: "DisplayNoneIFrameCreatesNoLayoutObject",
      status: "stable",
    },
    {
      name: "DocumentCookie",
    },
    {
      name: "DocumentDomain",
    },
    {
      name: "DocumentWrite",
    },
    {
      // http://crbug.com/707656 content editable in LayoutNG.
      name: "EditingNG",
    },
    {
      name: "EmbedderCSPEnforcement",
      status: "stable",
    },
    {
      name: "EncryptedMediaEncryptionSchemeQuery",
      status: "test",
    },
    {
      name: "EncryptedMediaHdcpPolicyCheck",
      origin_trial_feature_name: "EncryptedMediaHdcpPolicyCheck",
      status: "experimental",
    },
    {
      name: "EventTiming",
      origin_trial_feature_name: "EventTiming",
      status: "experimental",
    },
    {
      name: "ExecCommandInJavaScript",
      status: "test",
    },
    {
      name: "ExpensiveBackgroundTimerThrottling",
      status: "stable",
    },
    {
      name: "ExperimentalContentSecurityPolicyFeatures",
      status: "experimental",
    },
    {
      name: "ExperimentalHardwareEchoCancellation",
      origin_trial_feature_name: "ExperimentalHardwareEchoCancellation2",
      status: "experimental",
    },
    // Enables a set of features intended to help improve web developer
    // productivity, by restricting the use of potentially problematic web-
    // platform behaviors, as well as adding new high-level APIs for common
    // development patterns.
    {
      name: "ExperimentalProductivityFeatures",
      status: "experimental"
    },
    {
      // Enables the attribute performance.shouldYield in windows. This
      // attribute indicates that the frame should pause its current task so
      // that the browser can perform some high priority work. See
      // https://crbug.com/836310.
      name: "ExperimentalShouldYield",
      status: "experimental"
    },
    {
      name: "ExperimentalV8Extras",
      status: "experimental",
    },
    {
      name: "ExtendedImageBitmapOptions",
      status: "experimental",
    },
    {
      name: "ExtendedTextMetrics",
      status: "experimental",
    },
    {
      name: "ExtraWebGLVideoTextureMetadata",
      status: "experimental",
    },
    {
      name: "FastMobileScrolling",
    },
    {
      name: "FeaturePolicyAutoplayFeature",
      status: "stable"
    },
    {
      name: "FeaturePolicyJavaScriptInterface",
      origin_trial_feature_name: "FeaturePolicyJSAPI",
      status: "experimental"
    },
    {
      name: "FeaturePolicyVibrateFeature"
    },
    {
      name: "FileSystem",
      status: "stable",
    },
    {
      name: "FontCacheScaling",
      status: "test",
    },
    {
      name: "FontSrcLocalMatching",
      status: "test",
    },
    // For simulating Android's overlay fullscreen video in layout tests on Linux.
    {
      name: "ForceOverlayFullscreenVideo",
    },
    {
      name: "ForceTallerSelectPopup",
    },
    {
      name: "FormDataEvent",
      status: "experimental",
    },
    {
      name: "FractionalMouseEvent",
    },
    {
      name: "FractionalMouseTypePointerEvent",
      status: "stable",
    },
    {
      name: "FractionalScrollOffsets",
    },
    {
      name: "FramebustingNeedsSameOriginOrUserGesture",
      settable_from_internals: true,
      status: "stable",
    },
    {
      name: "FramesTimingFunction",
      status: "experimental",
    },
    {
      name: "FullscreenOptions",
      status: "experimental",
    },
    {
      name: "FullscreenUnprefixed",
      settable_from_internals: true,
      status: "experimental",
    },
    {
      name: "GamepadButtonAxisEvents",
      status: "experimental",
    },
    {
      name: "GamepadExtensions",
      status: "experimental",
    },
    {
      name: "GamepadVibration",
      status: "experimental",
    },
    {
      name: "GetDisplayMedia",
      status: "experimental",
    },
    {
      name: "HeapCompaction",
      status: "stable",
    },
    {
      name: "HeapIncrementalMarking",
    },
    {
      name: "HeapIncrementalMarkingStress"
    },
    // https://crbug.com/766694 for testing disabling the feature.
    {
      name: "HTMLImports",
      status: "stable",
    },
    // https://crbug.com/523952 for testing disabling the feature.
    {
      name: "HTMLImportsStyleApplication",
      status: "stable",
    },
    {
      name: "IDBObserver",
      status: "experimental",
    },
    {
      name: "IdleTimeColdModeSpellChecking",
      status: "stable",
    },
    {
      name: "ImageOrientation",
      status: "test",
    },
    {
      name: "ImplicitRootScroller",
      status: "experimental",
      settable_from_internals: true,
    },
    {
      name: "IncrementalShadowDOM",
      status: "stable",
    },
    {
      name: "InertAttribute",
      status: "experimental",
    },
    {
      name: "InputMultipleFieldsUI",
      status: "stable",
    },
    {
      name: "InstalledApp",
      origin_trial_feature_name: "InstalledApp",
      status: "experimental",
    },
    {
      name: "IntersectionObserverV2",
      settable_from_internals: true,
    },
    {
      name: "InterventionReporting",
      status: "stable",
    },
    {
      name: "IsolatedCodeCache",
      status: "experimental",
    },
    {
      // Tracks "jank" from layout objects changing their visual location
      // between animation frames (see crbug.com/581518).
      name: "JankTracking",
      status: "experimental",
    },
    {
      name: "JSImageDecode",
      status: "stable",
    },
    {
      name: "KeyboardMap",
      status: "stable",
    },
    {
      name: "LangAttributeAwareFormControlUI",
    },
    {
      name: "LayeredAPI",
      implied_by: ["ExperimentalProductivityFeatures"],
    },
    {
      name: "LayoutNG",
      implied_by: ["LayoutNGBlockFragmentation", "LayoutNGFlexBox", "EditingNG"],
    },
    {
      name: "LayoutNGBlockFragmentation",
    },
    {
      name: "LayoutNGFlexBox",
    },
    {
      name: "LayoutNGFragmentCaching",
      implied_by: ["LayoutNG"],
    },
    {
      name: "LazyFrameLoading",
    },
    {
      name: "LazyFrameVisibleLoadTimeMetrics",
    },
    {
      name: "LazyInitializeMediaControls",
      // This is enabled by features::kLazyInitializeMediaControls.
    },
    {
      name: "LazyParseCSS",
      status: "experimental",
    },
    {
      name: "LongTaskObserver",
      status: "stable",
    },
    {
      name: "LongTaskV2",
    },
    {
      name: "LowLatencyCanvas",
      origin_trial_feature_name: "LowLatencyCanvas",
      status: "experimental",
    },
    {
      name: "MediaCapabilities",
      origin_trial_feature_name: "MediaCapabilities",
      status: "stable",
    },
    {
      name: "MediaCapabilitiesEncodingInfo",
      status: "experimental",
    },
    {
      name: "MediaCapture",
    },
    {
      name: "MediaCaptureDepth",
      status: "experimental",
    },
    {
      name: "MediaCaptureDepthVideoKind",
      status: "experimental",
    },
    // Set to reflect the MediaCastOverlayButton feature.
    {
      name: "MediaCastOverlayButton",
    },
    {
      name: "MediaControlsExpandGesture"
    },
    {
      name: "MediaControlsOverlayPlayButton",
      settable_from_internals: true,
    },
    {
      name: "MediaDocumentDownloadButton",
    },
    // Set to reflect the kMediaEngagementBypassAutoplayPolicies feature.
    {
      name: "MediaEngagementBypassAutoplayPolicies",
    },
    {
      name: "MediaQueryShape",
      status: "experimental",
    },
    // MediaSession is enabled by default on Android only.
    // TODO(rbyers): Add parameter to specify platform.
    {
      name: "MediaSession",
      status: "test",
    },
    {
      name: "MediaSourceChangeType",
      origin_trial_feature_name: "MediaSourceChangeType",
      status: "experimental",
    },
    {
      name: "MediaSourceExperimental",
      status: "experimental",
    },
    {
      name: "MediaSourceNewAbortAndDuration",
      status: "experimental",
    },
    {
      name: "MediaStreamTrackContentHint",
      status: "experimental",
    },
    // This is enabled by default on Windows only. The only part that's
    // "experimental" is the support on other platforms.
    {
      name: "MiddleClickAutoscroll",
      status: "test",
    },
    {
      name: "MobileLayoutTheme",
    },
    {
      name: "ModernMediaControls",
    },
    {
      name: "ModuleDedicatedWorker",
      status: "experimental",
    },
    {
      name: "ModulePreload",
      status: "stable",
    },
    {
      name: "ModuleScriptsDynamicImport",
    },
    {
      name: "ModuleScriptsImportMetaUrl",
    },
    {
      name: "MojoJS",
      status: "test",
    },
    // MojoJSTest is used exclusively in testing environments, whereas MojoJS
    // may also be used elsewhere.
    {
      name: "MojoJSTest",
      status: "test",
    },
    {
      name: "MultipleColorStopPositions",
      status: "experimental",
    },
    {
      name: "NavigatorContentUtils",
    },
    {
      name: "NavigatorDeviceMemory",
      status: "stable",
    },
    {
      name: "NestedWorkers",
      status: "stable",
    },
    {
      name: "NetInfoDownlink",
      status: "stable",
    },
    {
      name: "NetInfoDownlinkHeader",
      status: "stable",
    },
    {
      name: "NetInfoDownlinkMax",
      status: "stable",
    },
    {
      name: "NetInfoEffectiveType",
      status: "stable",
    },
    {
      name: "NetInfoEffectiveTypeHeader",
      status: "stable",
    },
    {
      name: "NetInfoRtt",
      status: "stable",
    },
    {
      name: "NetInfoRttHeader",
      status: "stable",
    },
    {
      name: "NetInfoSaveData",
      status: "stable",
    },
    {
      name: "NetworkService",
    },
    // Not a web exposed feature, enabled from the command line.
    {
      name: "NewRemotePlaybackPipeline",
    },
    {
      name: "NoIdleEncodingForLayoutTests",
      status: "test",
    },
    {
      name: "NotificationConstructor",
      status: "stable",
    },
    // NotificationContentImage is not available in all platforms
    {
      name: "NotificationContentImage",
      status: "test",
    },
    {
      name: "NotificationInlineReplies",
      status: "experimental",
    },
    {
      name: "Notifications",
      status: "stable",
    },
    {
      name: "NullableDocumentDomain",
      status: "experimental",
    },
    {
      name: "OffMainThreadWebSocket",
    },
    {
      name: "OffscreenCanvas",
      status: "stable",
    },
    {
      name: "OffscreenCanvasCommit",
      status: "experimental",
    },
    {
      name: "OffscreenCanvasText",
      status: "stable",
    },
    {
      name: "OnDeviceChange",
      status: "stable",
    },
    {
      name: "OrientationEvent",
    },
    {
      name: "OriginPolicy",
      status: "test",
    },
    {
      name: "OriginTrials",
      status: "stable",
    },
    // Define a sample API for testing integration with the Origin Trials
    // Framework. The sample API is used in both unit and layout tests for the
    // Origin Trials Framework. Do not change this flag to stable, as it exists
    // solely to generate code used by the sample API implementation.
    {
      name: "OriginTrialsSampleAPI",
      origin_trial_feature_name: "Frobulate",
    },
    // Define a sample API for testing integration with the Origin Trials
    // Framework. The sample API is used in both unit and layout tests for the
    // Origin Trials Framework. Do not change this flag to stable, as it exists
    // solely to generate code used by the sample API implementation.
    {
      name: "OriginTrialsSampleAPIImplied",
      origin_trial_feature_name: "FrobulateImplied",
      implied_by: ["OriginTrialsSampleAPI"],
    },
    {
      name: "OutOfBlinkCORS",
    },
    {
      name: "OverflowIconsForMediaControls",
    },
    {
      name: "OverlayScrollbars",
      settable_from_internals: true,
    },
    {
      name: "PageLifecycle",
      status: "stable",
    },
    {
      name: "PagePopup",
      status: "stable",
    },
    // Compute touch action rects in paint instead of ScrollingCoordinator.
    {
      name: "PaintTouchActionRects",
    },
    {
      name: "PaintUnderInvalidationChecking",
      settable_from_internals: true,
    },
    {
      name: "PassiveDocumentEventListeners",
      status: "stable",
    },
    {
      name: "PassPaintVisualRectToCompositor",
    },
    {
      name: "PaymentApp",
      status: "experimental",
    },
    // PaymentRequest is enabled by default on Android
    {
      name: "PaymentRequest",
      status: "experimental",
    },
    {
      name: "PaymentRequestBasicCard",
      status: "stable",
    },
    {
      name: "PaymentRetry",
      status: "experimental",
    },
    {
      name: "PerformanceNavigationTiming2",
      status: "stable",
    },
    {
      name: "PerformancePaintTiming",
      status: "stable",
    },
    {
      name: "PermissionDelegation",
      status: "test",
    },
    {
      name: "Permissions",
      status: "stable",
    },
    {
      name: "PermissionsRequestRevoke",
      status: "experimental",
    },
    {
      name: "PictureInPicture",
      settable_from_internals: true,
    },
    // Picture-in-Picture API is disabled by default on Android.
    {
      name: "PictureInPictureAPI",
      status: "stable",
    },
    {
      name: "PictureInPictureControl",
      status: "experimental",
    },
    {
      name: "PreciseMemoryInfo",
    },
    {
      name: "PreferredImageRasterBounds",
      settable_from_internals: true,
    },
    // This feature is deprecated and we are evangelizing affected sites.
    // See https://crbug.com/346236 for current status.
    {
      name: "PrefixedVideoFullscreen",
      status: "stable",
    },
    {
      name: "PreloadDefaultIsMetadata",
      status: "stable",
    },
    {
      name: "PreloadImageSrcSet",
      status: "experimental",
    },
    {
      name: "Presentation",
      status: "stable",
    },
    {
      name: "PrintBrowser",
    },
    {
      name: "PriorityHints",
      status: "experimental",
    },
    {
      name: "PushMessaging",
      status: "stable",
    },
    {
      name: "PWAFullCodeCache"
    },
    {
      name: "RasterInducingScroll",
      status: "experimental",
    },
    {
      name: "ReducedReferrerGranularity",
    },
    {
      name: "RemotePlayback",
      status: "stable",
    },
    // Whether or not the Remote Playback API backend is implemented.
    // Not web-exposed, set per platform. For LayoutTests, disabled by
    // default.
    {
      name: "RemotePlaybackBackend",
      settable_from_internals: true,
    },
    {
      name: "RenderingPipelineThrottling",
      status: "stable",
    },
    {
      name: "RenderingPipelineThrottlingLoadingIframes",
      status: "stable",
    },
    {
      name: "ReportingObserver",
      implied_by: ["DeprecationReporting", "InterventionReporting"],
      status: "stable",
    },
    {
      name: "RequireCSSExtensionForFile",
      status: "stable",
    },
    {
      name: "ResourceLoadScheduler",
      status: "experimental",
    },
    {
      name: "RestrictAppCacheToSecureContexts",
      status: "stable",
    },
    {
      name: "RestrictCanRequestURLCharacterSet",
      status: "stable",
    },
    {
      name: "RtcPeerConnectionId",
      origin_trial_feature_name: "RtcPeerConnectionId",
      status: "experimental",
    },
    {
      name: "RTCRtpSenderParameters",
      status: "stable",
    },
    // Enables the use of |RTCConfiguration::sdpSemantics| to override the
    // default SDP semantics at RTCPeerConnection construction.
    {
      name: "RTCUnifiedPlan",
      status: "stable",
    },
    // Overrides the default SDP semantics to be Unified Plan at
    // RTCPeerConnection construction (unless otherwise specified).
    {
      name: "RTCUnifiedPlanByDefault",
    },
    {
      name: "ScheduledScriptStreaming",
    },
    {
      name: "ScriptedSpeech",
      status: "stable",
    },
    // Serialize and restore scroll anchors.
    {
      name: "ScrollAnchorSerialization",
    },
    {
      name: "ScrollCustomization",
    },
    // Implements documentElement.scrollTop/Left and bodyElement.scrollTop/Left
    // as per the spec, matching other Web engines.
    {
      name: "ScrollTopLeftInterop",
      status: "stable",
    },
    {
      name: "SecMetadata",
      status: "experimental"
    },
    {
      name: "SendBeaconThrowForBlobWithNonSimpleType",
      status: "stable",
    },
    {
      name: "SendMouseEventsDisabledFormControls",
      status: "experimental",
    },
    {
      name: "Sensor",
      status: "stable",
    },
    {
      name: "SensorExtraClasses",
      depends_on: ["Sensor"],
      status: "experimental",
    },
    {
      name: "ServiceWorkerScriptFullCodeCache",
    },
    {
      name: "ServiceWorkerUpdateViaCache",
      status: "stable",
    },
    {
      name: "SetRootScroller",
      status: "experimental",
    },
    // Introduced this flag as stable so web developers can test their sites
    // without native Shadow DOM v0 support
    {
      name: "ShadowDOMV0",
      status: "stable",
    },
    {
      name: "ShadowPiercingDescendantCombinator",
      status: "experimental",
    },
    {
      name: "ShapeDetection",
      origin_trial_feature_name: "ShapeDetection",
      status: "experimental",
    },
    {
      name: "SharedArrayBuffer",
      status: "stable",
    },
    {
      name: "SharedWorker",
      status: "stable",
    },
    {
      name: "SignatureBasedIntegrity",
      origin_trial_feature_name: "SignatureBasedIntegrity",
      status: "experimental",
    },
    {
      name: "SlimmingPaintV2",
    },
    {
      name: "SlotInFlatTree",
      status: "stable",
    },
    {
      name: "SMIL",
      status: "stable",
    },
    {
      name: "SmoothScrollJSIntervention",
      status: "stable",
    },
    // Used as argument in attribute of stable-release functions/interfaces
    // where a runtime-enabled feature name is required for correct IDL syntax.
    // This is a global flag; do not change its status.
    {
      name: "StableBlinkFeatures",
      status: "stable",
    },
    {
      name: "StackedCSSPropertyAnimations",
      status: "experimental",
    },
    {
      name: "StaleWhileRevalidate",
      origin_trial_feature_name: "StaleWhileRevalidate",
      status: "experimental",
    },
    {
      name: "StopInBackground",
      status: "test",
    },
    {
      name: "TextUnderlinePositionLeftRight",
      status: "experimental",
    },
    {
      name: "TimerThrottlingForBackgroundTabs",
      status: "stable",
    },
    {
      name: "TimerThrottlingForHiddenFrames",
      status: "stable",
    },
    // Many websites disable mouse support when touch APIs are available.  We'd
    // like to enable this always but can't until more websites fix this bug.
    // Chromium sets this conditionally (eg. based on the presence of a
    // touchscreen) in ApplyWebPreferences. "Touch events" themselves are always
    // enabled since they're a feature always supported by Chrome.
    {
      name: "TouchEventFeatureDetection",
      origin_trial_feature_name: "ForceTouchEventFeatureDetectionForInspector",
      status: "stable",
    },
    // This is set conditionally in SetRuntimeFeaturesDefaultsAndUpdateFromArgs
    // and will eventually go away when the touchpad/wheel scroll latching is
    // enabled on all platforms (http://crbug.com/526463).
    {
      name: "TouchpadAndWheelScrollLatching",
    },
    // When enabled, tracks the number of times each LayoutBlock
    // goes through layout. For testing purposes only.
    {
      name: "TrackLayoutPassesPerBlock",
    },
    {
      name: "TrustedDOMTypes",
      status: "experimental",
    },
    {
      name: "TrustedEventsDefaultAction",
      status: "stable",
    },
    {
      name: "UnclosedFormControlIsInvalid",
      status: "experimental",
    },
    {
      name: "UnifiedTouchAdjustment",
      status: "stable",
    },
    {
      name: "UserActivationAPI",
      status: "experimental",
    },
    {
      name: "UserActivationV2",
    },
    {
      name: "V8ContextSnapshot",
      status: "test",
    },
    {
      name: "V8IdleTasks",
    },
    {
      name: "VideoFullscreenDetection",
    },
    {
      name: "VideoFullscreenOrientationLock",
    },
    {
      name: "VideoRotateToFullscreen",
    },
    {
      name: "VisibilityCollapseColumn",
      status: "experimental",
    },
    {
      name: "WakeLock",
      status: "experimental",
    },
    {
      name: "WebAnimationsAPI",
      status: "experimental",
    },
    {
      name: "WebAnimationsSVG",
      status: "experimental",
    },
    {
      name: "WebAssemblyStreaming",
      status: "experimental",
    },
    {
      name: "WebAuth",
      status: "experimental",
    },
    // WebBluetooth is enabled by default on Android, ChromeOS and Mac.
    {
      name: "WebBluetooth",
      status: "experimental",
    },
    {
      name: "WebFontsCacheAwareTimeoutAdaptation",
      status: "experimental",
    },
    {
      name: "WebGL2ComputeContext",
      status: "experimental",
    },
    {
      name: "WebGLDraftExtensions",
      status: "experimental",
    },
    {
      name: "WebGLImageChromium",
    },
    // WebGPU adds a large attack surface area to the GPU process and allows
    // running arbitrary programs on the GPU (compute shaders), which may
    // perform arbitrary read/writes of GPU memory if not properly sandboxed.
    // That's why it is marked as "test" and not enabled as part of the
    // --enable-experimental-web-platform-features flag.
    {
      name: "WebGPU",
      status: "test",
    },
    {
      name: "WebLocksAPI",
      status: "stable",
    },
    {
      name: "WebNFC",
      status: "experimental",
    },
    // WebShare is enabled by default on Android.
    {
      name: "WebShare",
      status: "experimental",
    },
    {
      name: "WebUSB",
      status: "stable",
    },
    {
      name: "WebUSBOnDedicatedWorkers",
      status: "stable",
      depends_on: ["WebUSB"],
    },
    {
      name: "WebVR",
      status: "experimental",
    },
    {
      name: "WebVTTRegions",
      status: "experimental",
    },
    {
      name: "WebXR",
      origin_trial_feature_name: "WebXRDeviceM69",
      status: "experimental",
    },
    // Subset of the GamepadExtensions wanted for WebXR, which expose VR controller
    // functionality as Gamepads.
    {
      name: "WebXRGamepadSupport",
      origin_trial_feature_name: "WebXRGamepadSupport",
      // This feature is a strict subset of GamepadExtensions.
      implied_by: ["GamepadExtensions"],
      status: "experimental",
    },
    {
      name: "WebXRHitTest",
      status: "experimental"
    },
    {
      name: "WindowPostMessageOptions",
      status: "experimental",
    },
    {
      name: "WorkerNosniffBlock",
      status: "test",
    },
    {
      name: "WorkerNosniffWarn",
      status: "test",
      implied_by: ["WorkerNosniffBlock"],
    },
    {
      name: "WorkStealingInScriptRunner",
      status: "experimental",
    },
    {
      name: "XSLT",
      status: "stable",
    },
  ],
}
