module Options.Language where import Types languageOptions :: [Flag] languageOptions = [ flag { flagName = "-fconstraint-solver-iterations=⟨n⟩" , flagDescription = "*default: 4.* Set the iteration limit for the type-constraint "++ "solver. Typically one iteration suffices; so please "++ "yell if you find you need to set it higher than the default. "++ "Zero means infinity." , flagType = DynamicFlag } , flag { flagName = "-freduction-depth=⟨n⟩" , flagDescription = "*default: 200.* Set the :ref:`limit for type simplification "++ "`. Zero means infinity." , flagType = DynamicFlag } , flag { flagName = "-fcontext-stack=⟨n⟩" , flagDescription = "Deprecated. Use ``-freduction-depth=⟨n⟩`` instead." , flagType = DynamicFlag } , flag { flagName = "-fglasgow-exts" , flagDescription = "Deprecated. Enable most language extensions; "++ "see :ref:`options-language` for exactly which ones." , flagType = DynamicFlag , flagReverse = "-fno-glasgow-exts" } , flag { flagName = "-firrefutable-tuples" , flagDescription = "Make tuple pattern matching irrefutable" , flagType = DynamicFlag , flagReverse = "-fno-irrefutable-tuples" } , flag { flagName = "-fpackage-trust" , flagDescription = "Enable :ref:`Safe Haskell ` trusted package "++ "requirement for trustworthy modules." , flagType = DynamicFlag } , flag { flagName = "-ftype-function-depth=⟨n⟩" , flagDescription = "Deprecated. Use ``-freduction-depth=⟨n⟩`` instead." , flagType = DynamicFlag } , flag { flagName = "-XAllowAmbiguousTypes" , flagDescription = "Allow the user to write :ref:`ambiguous types `, and "++ "the type inference engine to infer them." , flagType = DynamicFlag , flagReverse = "-XNoAllowAmbiguousTypes" , flagSince = "7.8.1" } , flag { flagName = "-XArrows" , flagDescription = "Enable :ref:`arrow notation ` extension" , flagType = DynamicFlag , flagReverse = "-XNoArrows" , flagSince = "6.8.1" } , flag { flagName = "-XApplicativeDo" , flagDescription = "Enable :ref:`Applicative do-notation desugaring `" , flagType = DynamicFlag , flagReverse = "-XNoApplicativeDo" , flagSince = "7.12.1" } , flag { flagName = "-XAutoDeriveTypeable" , flagDescription = "As of GHC 7.10, this option is not needed, and should not be "++ "used. Previously this would automatically :ref:`derive Typeable "++ "instances for every datatype and type class declaration "++ "`. Implies ``-XDeriveDataTypeable``." , flagType = DynamicFlag , flagReverse = "-XNoAutoDeriveTypeable" , flagSince = "7.8.1" } , flag { flagName = "-XBangPatterns" , flagDescription = "Enable :ref:`bang patterns `." , flagType = DynamicFlag , flagReverse = "-XNoBangPatterns" , flagSince = "6.8.1" } , flag { flagName = "-XBinaryLiterals" , flagDescription = "Enable support for :ref:`binary literals `." , flagType = DynamicFlag , flagReverse = "-XNoBinaryLiterals" , flagSince = "7.10.1" } , flag { flagName = "-XCApiFFI" , flagDescription = "Enable :ref:`the CAPI calling convention `." , flagType = DynamicFlag , flagReverse = "-XNoCAPIFFI" , flagSince = "7.10.1" } , flag { flagName = "-XConstrainedClassMethods" , flagDescription = "Enable :ref:`constrained class methods `." , flagType = DynamicFlag , flagReverse = "-XNoConstrainedClassMethods" , flagSince = "6.8.1" } , flag { flagName = "-XConstraintKinds" , flagDescription = "Enable a :ref:`kind of constraints `." , flagType = DynamicFlag , flagReverse = "-XNoConstraintKinds" , flagSince = "7.4.1" } , flag { flagName = "-XCPP" , flagDescription = "Enable the :ref:`C preprocessor `." , flagType = DynamicFlag , flagReverse = "-XNoCPP" , flagSince = "6.8.1" } , flag { flagName = "-XDataKinds" , flagDescription = "Enable :ref:`datatype promotion `." , flagType = DynamicFlag , flagReverse = "-XNoDataKinds" , flagSince = "7.4.1" } , flag { flagName = "-XDefaultSignatures" , flagDescription = "Enable :ref:`default signatures `." , flagType = DynamicFlag , flagReverse = "-XNoDefaultSignatures" , flagSince = "7.2.1" } , flag { flagName = "-XDeriveAnyClass" , flagDescription = "Enable :ref:`deriving for any class `." , flagType = DynamicFlag , flagReverse = "-XNoDeriveAnyClass" , flagSince = "7.10.1" } , flag { flagName = "-XDeriveDataTypeable" , flagDescription = "Enable ``deriving`` for the :ref:`Data class "++ "`. Implied by ``-XAutoDeriveTypeable``." , flagType = DynamicFlag , flagReverse = "-XNoDeriveDataTypeable" , flagSince = "6.8.1" } , flag { flagName = "-XDeriveFunctor" , flagDescription = "Enable :ref:`deriving for the Functor class `. "++ "Implied by ``-XDeriveTraversable``." , flagType = DynamicFlag , flagReverse = "-XNoDeriveFunctor" , flagSince = "7.10.1" } , flag { flagName = "-XDeriveFoldable" , flagDescription = "Enable :ref:`deriving for the Foldable class `. "++ "Implied by ``-XDeriveTraversable``." , flagType = DynamicFlag , flagReverse = "-XNoDeriveFoldable" , flagSince = "7.10.1" } , flag { flagName = "-XDeriveGeneric" , flagDescription = "Enable :ref:`deriving for the Generic class `." , flagType = DynamicFlag , flagReverse = "-XNoDeriveGeneric" , flagSince = "7.2.1" } , flag { flagName = "-XDeriveGeneric" , flagDescription = "Enable :ref:`deriving for the Generic class `." , flagType = DynamicFlag , flagReverse = "-XNoDeriveGeneric" , flagSince = "7.2.1" } , flag { flagName = "-XDeriveLift" , flagDescription = "Enable :ref:`deriving for the Lift class `" , flagType = DynamicFlag , flagReverse = "-XNoDeriveLift" , flagSince = "7.2.1" } , flag { flagName = "-XDeriveTraversable" , flagDescription = "Enable :ref:`deriving for the Traversable class `. "++ "Implies ``-XDeriveFunctor`` and ``-XDeriveFoldable``." , flagType = DynamicFlag , flagReverse = "-XNoDeriveTraversable" , flagSince = "7.10.1" } , flag { flagName = "-XDisambiguateRecordFields" , flagDescription = "Enable :ref:`record field disambiguation `. "++ "Implied by ``-XRecordWildCards``." , flagType = DynamicFlag , flagReverse = "-XNoDisambiguateRecordFields" , flagSince = "6.8.1" } , flag { flagName = "-XEmptyCase" , flagDescription = "Allow :ref:`empty case alternatives `." , flagType = DynamicFlag , flagReverse = "-XNoEmptyCase" , flagSince = "7.8.1" } , flag { flagName = "-XEmptyDataDecls" , flagDescription = "Enable empty data declarations." , flagType = DynamicFlag , flagReverse = "-XNoEmptyDataDecls" , flagSince = "6.8.1" } , flag { flagName = "-XExistentialQuantification" , flagDescription = "Enable :ref:`existential quantification `." , flagType = DynamicFlag , flagReverse = "-XNoExistentialQuantification" , flagSince = "6.8.1" } , flag { flagName = "-XExplicitForAll" , flagDescription = "Enable :ref:`explicit universal quantification `."++ " Implied by ``-XScopedTypeVariables``, ``-XLiberalTypeSynonyms``,"++ " ``-XRankNTypes`` and ``-XExistentialQuantification``." , flagType = DynamicFlag , flagReverse = "-XNoExplicitForAll" , flagSince = "6.12.1" } , flag { flagName = "-XExplicitNamespaces" , flagDescription = "Enable using the keyword ``type`` to specify the namespace of "++ "entries in imports and exports (:ref:`explicit-namespaces`). "++ "Implied by ``-XTypeOperators`` and ``-XTypeFamilies``." , flagType = DynamicFlag , flagReverse = "-XNoExplicitNamespaces" , flagSince = "7.6.1" } , flag { flagName = "-XExtendedDefaultRules" , flagDescription = "Use GHCi's :ref:`extended default rules ` "++ "in a normal module." , flagType = DynamicFlag , flagReverse = "-XNoExtendedDefaultRules" , flagSince = "6.8.1" } , flag { flagName = "-XFlexibleContexts" , flagDescription = "Enable :ref:`flexible contexts `. Implied by "++ "``-XImplicitParams``." , flagType = DynamicFlag , flagReverse = "-XNoFlexibleContexts" , flagSince = "6.8.1" } , flag { flagName = "-XFlexibleInstances" , flagDescription = "Enable :ref:`flexible instances `. "++ "Implies ``-XTypeSynonymInstances``. "++ "Implied by ``-XImplicitParams``." , flagType = DynamicFlag , flagReverse = "-XNoFlexibleInstances" , flagSince = "6.8.1" } , flag { flagName = "-XForeignFunctionInterface" , flagDescription = "Enable :ref:`foreign function interface `." , flagType = DynamicFlag , flagReverse = "-XNoForeignFunctionInterface" , flagSince = "6.8.1" } , flag { flagName = "-XFunctionalDependencies" , flagDescription = "Enable :ref:`functional dependencies `. "++ "Implies ``-XMultiParamTypeClasses``." , flagType = DynamicFlag , flagReverse = "-XNoFunctionalDependencies" , flagSince = "6.8.1" } , flag { flagName = "-XGADTs" , flagDescription = "Enable :ref:`generalised algebraic data types `. "++ "Implies ``-XGADTSyntax`` and ``-XMonoLocalBinds``." , flagType = DynamicFlag , flagReverse = "-XNoGADTs" , flagSince = "6.8.1" } , flag { flagName = "-XGADTSyntax" , flagDescription = "Enable :ref:`generalised algebraic data type syntax `." , flagType = DynamicFlag , flagReverse = "-XNoGADTSyntax" , flagSince = "7.2.1" } , flag { flagName = "-XGeneralizedNewtypeDeriving" , flagDescription = "Enable :ref:`newtype deriving `." , flagType = DynamicFlag , flagReverse = "-XNoGeneralizedNewtypeDeriving" , flagSince = "6.8.1" } , flag { flagName = "-XGenerics" , flagDescription = "Deprecated, does nothing. No longer enables "++ ":ref:`generic classes `. See also GHC's support "++ "for :ref:`generic programming `." , flagType = DynamicFlag , flagReverse = "-XNoGenerics" , flagSince = "6.8.1" } , flag { flagName = "-XImplicitParams" , flagDescription = "Enable :ref:`Implicit Parameters `. "++ "Implies ``-XFlexibleContexts`` and ``-XFlexibleInstances``." , flagType = DynamicFlag , flagReverse = "-XNoImplicitParams" , flagSince = "6.8.1" } , flag { flagName = "-XNoImplicitPrelude" , flagDescription = "Don't implicitly ``import Prelude``. "++ "Implied by ``-XRebindableSyntax``." , flagType = DynamicFlag , flagReverse = "-XImplicitPrelude" , flagSince = "6.8.1" } , flag { flagName = "-XImpredicativeTypes" , flagDescription = "Enable :ref:`impredicative types `. "++ "Implies ``-XRankNTypes``." , flagType = DynamicFlag , flagReverse = "-XNoImpredicativeTypes" , flagSince = "6.10.1" } , flag { flagName = "-XIncoherentInstances" , flagDescription = "Enable :ref:`incoherent instances `. "++ "Implies ``-XOverlappingInstances``." , flagType = DynamicFlag , flagReverse = "-XNoIncoherentInstances" , flagSince = "6.8.1" } , flag { flagName = "-XInstanceSigs" , flagDescription = "Enable :ref:`instance signatures `." , flagType = DynamicFlag , flagReverse = "-XNoInstanceSigs" , flagSince = "7.10.1" } , flag { flagName = "-XInterruptibleFFI" , flagDescription = "Enable interruptible FFI." , flagType = DynamicFlag , flagReverse = "-XNoInterruptibleFFI" , flagSince = "7.2.1" } , flag { flagName = "-XKindSignatures" , flagDescription = "Enable :ref:`kind signatures `. "++ "Implied by ``-XTypeFamilies`` and ``-XPolyKinds``." , flagType = DynamicFlag , flagReverse = "-XNoKindSignatures" , flagSince = "6.8.1" } , flag { flagName = "-XLambdaCase" , flagDescription = "Enable :ref:`lambda-case expressions `." , flagType = DynamicFlag , flagReverse = "-XNoLambdaCase" , flagSince = "7.6.1" } , flag { flagName = "-XLiberalTypeSynonyms" , flagDescription = "Enable :ref:`liberalised type synonyms `." , flagType = DynamicFlag , flagReverse = "-XNoLiberalTypeSynonyms" , flagSince = "6.8.1" } , flag { flagName = "-XMagicHash" , flagDescription = "Allow ``#`` as a :ref:`postfix modifier on identifiers `." , flagType = DynamicFlag , flagReverse = "-XNoMagicHash" , flagSince = "6.8.1" } , flag { flagName = "-XMonadComprehensions" , flagDescription = "Enable :ref:`monad comprehensions `." , flagType = DynamicFlag , flagReverse = "-XNoMonadComprehensions" , flagSince = "7.2.1" } , flag { flagName = "-XMonoLocalBinds" , flagDescription = "Enable :ref:`do not generalise local bindings `. "++ "Implied by ``-XTypeFamilies`` and ``-XGADTs``." , flagType = DynamicFlag , flagReverse = "-XNoMonoLocalBinds" , flagSince = "6.12.1" } , flag { flagName = "-XNoMonomorphismRestriction" , flagDescription = "Disable the :ref:`monomorphism restriction `." , flagType = DynamicFlag , flagReverse = "-XMonomorphismRestriction" , flagSince = "6.8.1" } , flag { flagName = "-XMultiParamTypeClasses" , flagDescription = "Enable :ref:`multi parameter type classes "++ "`. Implied by "++ "``-XFunctionalDependencies``." , flagType = DynamicFlag , flagReverse = "-XNoMultiParamTypeClasses" , flagSince = "6.8.1" } , flag { flagName = "-XMultiWayIf" , flagDescription = "Enable :ref:`multi-way if-expressions `." , flagType = DynamicFlag , flagReverse = "-XNoMultiWayIf" , flagSince = "7.6.1" } , flag { flagName = "-XNamedFieldPuns" , flagDescription = "Enable :ref:`record puns `." , flagType = DynamicFlag , flagReverse = "-XNoNamedFieldPuns" , flagSince = "6.10.1" } , flag { flagName = "-XNamedWildCards" , flagDescription = "Enable :ref:`named wildcards `." , flagType = DynamicFlag , flagReverse = "-XNoNamedWildCards" , flagSince = "7.10.1" } , flag { flagName = "-XNegativeLiterals" , flagDescription = "Enable support for :ref:`negative literals `." , flagType = DynamicFlag , flagReverse = "-XNoNegativeLiterals" , flagSince = "7.8.1" } , flag { flagName = "-XNoNPlusKPatterns" , flagDescription = "Disable support for ``n+k`` patterns." , flagType = DynamicFlag , flagReverse = "-XNPlusKPatterns" , flagSince = "6.12.1" } , flag { flagName = "-XNullaryTypeClasses" , flagDescription = "Deprecated, does nothing. :ref:`nullary (no parameter) type "++ "classes ` are now enabled using "++ "``-XMultiParamTypeClasses``." , flagType = DynamicFlag , flagReverse = "-XNoNullaryTypeClasses" , flagSince = "7.8.1" } , flag { flagName = "-XNumDecimals" , flagDescription = "Enable support for 'fractional' integer literals." , flagType = DynamicFlag , flagReverse = "-XNoNumDecimals" , flagSince = "7.8.1" } , flag { flagName = "-XOverlappingInstances" , flagDescription = "Enable :ref:`overlapping instances `." , flagType = DynamicFlag , flagReverse = "-XNoOverlappingInstances" , flagSince = "6.8.1" } , flag { flagName = "-XOverloadedLists" , flagDescription = "Enable :ref:`overloaded lists `." , flagType = DynamicFlag , flagReverse = "-XNoOverloadedLists" , flagSince = "7.8.1" } , flag { flagName = "-XOverloadedStrings" , flagDescription = "Enable :ref:`overloaded string literals `." , flagType = DynamicFlag , flagReverse = "-XNoOverloadedStrings" , flagSince = "6.8.1" } , flag { flagName = "-XPackageImports" , flagDescription = "Enable :ref:`package-qualified imports `." , flagType = DynamicFlag , flagReverse = "-XNoPackageImports" , flagSince = "6.10.1" } , flag { flagName = "-XParallelArrays" , flagDescription = "Enable parallel arrays. Implies ``-XParallelListComp``." , flagType = DynamicFlag , flagReverse = "-XNoParallelArrays" , flagSince = "7.4.1" } , flag { flagName = "-XParallelListComp" , flagDescription = "Enable :ref:`parallel list comprehensions "++ "`. "++ "Implied by ``-XParallelArrays``." , flagType = DynamicFlag , flagReverse = "-XNoParallelListComp" , flagSince = "6.8.1" } , flag { flagName = "-XPartialTypeSignatures" , flagDescription = "Enable :ref:`partial type signatures `." , flagType = DynamicFlag , flagReverse = "-XNoPartialTypeSignatures" , flagSince = "7.10.1" } , flag { flagName = "-XPatternGuards" , flagDescription = "Enable :ref:`pattern guards `." , flagType = DynamicFlag , flagReverse = "-XNoPatternGuards" , flagSince = "6.8.1" } , flag { flagName = "-XPatternSynonyms" , flagDescription = "Enable :ref:`pattern synonyms `." , flagType = DynamicFlag , flagReverse = "-XNoPatternSynonyms" , flagSince = "7.10.1" } , flag { flagName = "-XPolyKinds" , flagDescription = "Enable :ref:`kind polymorphism `. "++ "Implies ``-XKindSignatures``." , flagType = DynamicFlag , flagReverse = "-XNoPolyKinds" , flagSince = "7.4.1" } , flag { flagName = "-XPolymorphicComponents" , flagDescription = "Enable :ref:`polymorphic components for data constructors "++ "`. Synonym for ``-XRankNTypes``." , flagType = DynamicFlag , flagReverse = "-XNoPolymorphicComponents" , flagSince = "6.8.1" } , flag { flagName = "-XPostfixOperators" , flagDescription = "Enable :ref:`postfix operators `." , flagType = DynamicFlag , flagReverse = "-XNoPostfixOperators" , flagSince = "7.10.1" } , flag { flagName = "-XQuasiQuotes" , flagDescription = "Enable :ref:`quasiquotation `." , flagType = DynamicFlag , flagReverse = "-XNoQuasiQuotes" , flagSince = "6.10.1" } , flag { flagName = "-XRank2Types" , flagDescription = "Enable :ref:`rank-2 types `. "++ "Synonym for ``-XRankNTypes``." , flagType = DynamicFlag , flagReverse = "-XNoRank2Types" , flagSince = "6.8.1" } , flag { flagName = "-XRankNTypes" , flagDescription = "Enable :ref:`rank-N types `. "++ "Implied by ``-XImpredicativeTypes``." , flagType = DynamicFlag , flagReverse = "-XNoRankNTypes" , flagSince = "6.8.1" } , flag { flagName = "-XRebindableSyntax" , flagDescription = "Employ :ref:`rebindable syntax `. "++ "Implies ``-XNoImplicitPrelude``." , flagType = DynamicFlag , flagReverse = "-XNoRebindableSyntax" , flagSince = "7.0.1" } , flag { flagName = "-XRecordWildCards" , flagDescription = "Enable :ref:`record wildcards `. "++ "Implies ``-XDisambiguateRecordFields``." , flagType = DynamicFlag , flagReverse = "-XNoRecordWildCards" , flagSince = "6.8.1" } , flag { flagName = "-XRecursiveDo" , flagDescription = "Enable :ref:`recursive do (mdo) notation `." , flagType = DynamicFlag , flagReverse = "-XNoRecursiveDo" , flagSince = "6.8.1" } , flag { flagName = "-XRelaxedPolyRec" , flagDescription = "*(deprecated)* Relaxed checking for :ref:`mutually-recursive "++ "polymorphic functions `." , flagType = DynamicFlag , flagReverse = "-XNoRelaxedPolyRec" , flagSince = "6.8.1" } , flag { flagName = "-XRoleAnnotations" , flagDescription = "Enable :ref:`role annotations `." , flagType = DynamicFlag , flagReverse = "-XNoRoleAnnotations" , flagSince = "7.10.1" } , flag { flagName = "-XSafe" , flagDescription = "Enable the :ref:`Safe Haskell ` Safe mode." , flagType = DynamicFlag , flagSince = "7.2.1" } , flag { flagName = "-XScopedTypeVariables" , flagDescription = "Enable :ref:`lexically-scoped type variables "++ "`." , flagType = DynamicFlag , flagReverse = "-XNoScopedTypeVariables" , flagSince = "6.8.1" } , flag { flagName = "-XStandaloneDeriving" , flagDescription = "Enable :ref:`standalone deriving `." , flagType = DynamicFlag , flagReverse = "-XNoStandaloneDeriving" , flagSince = "6.8.1" } , flag { flagName = "-XStrictData" , flagDescription = "Enable :ref:`default strict datatype fields `." , flagType = DynamicFlag , flagReverse = "-XNoStrictData" } , flag { flagName = "-XTemplateHaskell" , flagDescription = "Enable :ref:`Template Haskell `." , flagType = DynamicFlag , flagReverse = "-XNoTemplateHaskell" , flagSince = "6.8.1" } , flag { flagName = "-XNoTraditionalRecordSyntax" , flagDescription = "Disable support for traditional record syntax "++ "(as supported by Haskell 98) ``C {f = x}``" , flagType = DynamicFlag , flagReverse = "-XTraditionalRecordSyntax" , flagSince = "7.4.1" } , flag { flagName = "-XTransformListComp" , flagDescription = "Enable :ref:`generalised list comprehensions "++ "`." , flagType = DynamicFlag , flagReverse = "-XNoTransformListComp" , flagSince = "6.10.1" } , flag { flagName = "-XTrustworthy" , flagDescription = "Enable the :ref:`Safe Haskell ` Trustworthy mode." , flagType = DynamicFlag , flagSince = "7.2.1" } , flag { flagName = "-XTupleSections" , flagDescription = "Enable :ref:`tuple sections `." , flagType = DynamicFlag , flagReverse = "-XNoTupleSections" , flagSince = "7.10.1" } , flag { flagName = "-XTypeFamilies" , flagDescription = "Enable :ref:`type families `. "++ "Implies ``-XExplicitNamespaces``, ``-XKindSignatures``, "++ "and ``-XMonoLocalBinds``." , flagType = DynamicFlag , flagReverse = "-XNoTypeFamilies" , flagSince = "6.8.1" } , flag { flagName = "-XTypeOperators" , flagDescription = "Enable :ref:`type operators `. "++ "Implies ``-XExplicitNamespaces``." , flagType = DynamicFlag , flagReverse = "-XNoTypeOperators" , flagSince = "6.8.1" } , flag { flagName = "-XTypeSynonymInstances" , flagDescription = "Enable :ref:`type synonyms in instance heads "++ "`. Implied by ``-XFlexibleInstances``." , flagType = DynamicFlag , flagReverse = "-XNoTypeSynonymInstances" , flagSince = "6.8.1" } , flag { flagName = "-XUnboxedTuples" , flagDescription = "Enable :ref:`unboxed tuples `." , flagType = DynamicFlag , flagReverse = "-XNoUnboxedTuples" , flagSince = "6.8.1" } , flag { flagName = "-XUndecidableInstances" , flagDescription = "Enable :ref:`undecidable instances `." , flagType = DynamicFlag , flagReverse = "-XNoUndecidableInstances" , flagSince = "6.8.1" } , flag { flagName = "-XUnicodeSyntax" , flagDescription = "Enable :ref:`unicode syntax `." , flagType = DynamicFlag , flagReverse = "-XNoUnicodeSyntax" , flagSince = "6.8.1" } , flag { flagName = "-XUnliftedFFITypes" , flagDescription = "Enable unlifted FFI types." , flagType = DynamicFlag , flagReverse = "-XNoUnliftedFFITypes" , flagSince = "6.8.1" } , flag { flagName = "-XUnsafe" , flagDescription = "Enable :ref:`Safe Haskell ` Unsafe mode." , flagType = DynamicFlag , flagSince = "7.4.1" } , flag { flagName = "-XViewPatterns" , flagDescription = "Enable :ref:`view patterns `." , flagType = DynamicFlag , flagReverse = "-XNoViewPatterns" , flagSince = "6.10.1" } ]