4L      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJK*None FMLXReturns the number of failing tests. Warning: Not multithread safe, but is reenterant MNOPQLRSTULRSTUMNOPQLRSTUNoneVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~VWXYZ[VWXYZ[None24?Return the variables, erring on the side of more free variables?Return the variables, erring on the side of more free variables*     %     None3V !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdV !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdV !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdNone 246eQfromNamed will return "" when it cannot be represented toNamed may crash on ""(efghijklmnopqrstuvwxyz{|}~efghijklmnopqrstuvwxyz{efghjikmlnpoqsrtvuwxyz{|}~NoneMData type representing the modules in scope within a module. Created with  and queried with  and . Note that the   is not equivalent to 6 on an empty module, due to the implicit import of Prelude. Create a 3 value from a module, based on the modules imports.hGiven a two names in scopes, could they possibly refer to the same thing. This property is reflexive.Given a name in a scope, and a new scope, create a name for the new scope that will refer to the same thing. If the resulting name is ambiguous, it picks a plausible candidate.  None  Safe-Inferred   None:FHMAn A represents how characters are stored in a file. Created with  or  and used with .The system default encoding.Apply an encoding to a .vCreate an encoding from a string, or throw an error if the encoding is not known. Accepts many encodings including locale, utf-8' and all those supported by the GHC mkTextEncoding function.220 None+Fa proof script to check against.which files to run it on, nothing = none givenwhere to generate reports)which settignsfiles were explicitly given(hints that are given on the command linecolor the resultthe hints to ignoredisplay all skipped items extensions#the extensions (may be prefixed by No)the text encodingRwork between source files, applies to hints such as duplicate code between modules!source files to look for hints inthe data directorydisplay hint data as JSONdo not show the summary infoWhen to colour terminal output.9Terminal output will be coloured if stdout is a terminal.(Terminal output will always be coloured.'Terminal output will never be coloured.$What C pre processor should be used. The cpphs library is used. Lines prefixed with # are stripped. No pre processing is done.(Determines whether to use colour or not.7 * .  None24FMIs this item lexically requiring no bracketing ever i.e. is totally atomicmIs the child safe free from brackets in the parent position. Err on the side of caution, True = don't know0Add a Paren around something if it is not atomicHDescend, and if something changes then add/remove brackets appropriately @Add/remove brackets as suggested needBracket at 1-level of depth                  None None A parse error from .Location of the error.%Message about the cause of the error.3Snippet of several lines (typically 5) including a >' character pointing at the faulty line. Created with  , used by .%How the file is read in (defaults to ).*How the file is preprocessed (defaults to  ).8How the file is parsed (defaults to all fixities in the base. package and most non-conflicting extensions).Default values for .Parse a Haskell module. Applies the C pre processor, and uses best-guess fixity resolution if there are ambiguities. The filename - is treated as stdin. Requires some flags (often :), the filename, and optionally the contents of that file.UGiven a line number, and some source code, put bird ticks around the appropriate bit.  \]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~VWXYZ[ !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{        None FGenerate a lambda, but prettier (if possible). Generally no lambda is good, but removing just some arguments isn't so useful.{Convert expressions which have redundant junk in them away. Mainly so that later stages can match on fewer alternatives.None FM,First string may have stars in it (the want)  !"#$%&'()*' !"#$%&'()*None FA  LHS ==> RHS style hint rule.Default severity for the hint.Name for the hint.(Module scope in which the hint operates.LHSRHS)Side condition, typically specified with  where _ = .... $Notes about application of the hint.!How to classify an Idea. If any matching field is "" then it matches everything.#Severity to set the Idea to.$ideaHint.% ideaModule.&ideaDecl.'0A note describing the impact of the replacement.(An arbitrary note.)IThe replacement assumes standard type class lemmas, a hint with the note ValidInstance "Eq" "x" might only be valid if the x variable has a reflexive Eq instance.*6The replacement removes errors, for example replacing  foldr1 (+) with sum removes an error on [], and might contain the text "on []".+=The replacement is decreases laziness, for example replacing (fst x, snd x) with x makes the code stricter.,=The replacement is increases laziness, for example replacing reverse (reverse x) with x makes the code lazier.-How severe an issue is..CErrors are suggestions that are nearly always a good idea to apply./QWarnings are things that some people may consider improvements, but some may not.0GThe issue has been explicitly ignored and will usually be hidden (pass --show+ on the command line to see ignored ideas).1@Given a module containing HLint settings information return the ! rules and the | expressions. Any fixity declarations will be discarded, but any other unrecognised elements will result in an exception.2$Given the data directory (where the hlint data files reside, see getHLintDataDir]), and a filename to read, and optionally that file's contents, produce a pair containing: Builtin hints to use, e.g. List!, which should be resolved using  builtinHints.AA list of modules containing hints, suitable for processing with 1./Any parse failures will result in an exception.2+,-./ !"#$%&'()*+,-./0012345617289:;<=>?@A&+,-./ !"#$%&'()*+,-./00245129>+/.-, !"#$%&',+*)(-0/.012345617289:;<=>?@ANone3FBGuess why a theorem is missing CDEFGHIBJKLMNH CDEFGHIBJKLMNNone FMO:Given a set of hints, do all the HintRule hints type checkPBGiven a set of hints, do all the HintRule hints satisfy QuickCheckQOPRSTUOPQOPRSTUNone 3An idea suggest by a Hint.5'The module the idea applies to, may be ""I if the module cannot be determined or is a result of cross-module hints.6YThe declaration the idea applies to, typically the function name, but may be a type name.7The severity of the idea, e.g. /.83The name of the hint that generated the idea, e.g.  "Use reverse".9$The source code the idea relates to.:4The contents of the source code the idea relates to.;The suggested replacement, or V+ for no replacement (e.g. on parse errors).<3Notes about the effect of applying the replacement.3456789:;<WXYZ[\]^_'()*+,-./043456789:;<WXYZ[\]^ 3 456789:;<WXYZ[\]^_None=0Functions to generate hints, combined using the ` instance.?DGiven a list of modules (and their scope information) generate some 3s.@>Given a single module and its scope information generate some 3s.A<Given a declaration (with a module and scope) generate some 3[s. This function will be partially applied with one module/scope, then used on multiple  values.BGiven a comment generate some 3s. =>?@ABabcdF\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~VWXYZ[ !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{      '()*+,-./043456789:;<WXYZ[\]^=>?@ABabc=>?@ABabcdNone 3FefghijklmnopqrstuvwxgefghijklmnopqrstuvwxNone 3Fyz{|}~yyz{|}~None FNone FNone FNone None3None NoneFM   None!None-Classes that don't work with newtype deriving0What is derived on newtype, and on data type  'deriving'J declarations may be on either, so we approximate as both newtype and data"NoneFMThe position to return if we match at this point, and the map of where to go next If two runs have the same vals, always use the first pos you find#None$NoneC=A list of builtin hints, currently including entries such as "List" and  "Bracket".DTransform a list of  into a =.CD =>?@ABbcCDCD%NoneDApply hints to a single file, you may have the contents of the file.AApply hints to multiple files, allowing cross-file hints to fire.E*Given a way of classifying results, and a =1, apply to a set of modules generating a list of 3 s. The 3& values will be ordered within a file.bGiven a list of settings (a way to classify) and a list of hints, run them over a list of modules.bReturn either an idea (a parse error) or the module. In IO because might call the C pre processor.,Find which hints a list of settings implies.IGiven some settings, make sure the severity field of the Idea is correct.EEENoneF0Get the Cabal configured data directory of HLintG'The function produces a tuple containg  (for ), and ! and = for EC. It approximates the normal HLint configuration steps, roughly: Use 2+ to find and load the HLint settings files.Use 1, to interpret the settings files, producing  values ( LHS ==> RHS replacements) and ! values to assign - ratings to hints.Use C and D to generate a = value.Take all fixities from the 2 modules and put them in the .ISnippet from the documentation, if this changes, update the documentationFGH  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHE3456789:;<-0/.',+*)(!"#$%&FG21=>?@ABC D  FG&None'None(None FM)None FM*NoneHA suggestion - the Show instance is of particular use.I:From a suggestion, extract the file location it refers to.J.From a suggestion, determine how severe it is.K|This function takes a list of command line arguments, and returns the given suggestions. To see a list of arguments type  hlint --helpN at the console. This function writes to the stdout/stderr streams, unless --quiet is specified.As an example: ldo hints <- hlint ["src", "--ignore=Use map","--quiet"] when (length hints > 3) $ error "Too many hints!" HIJK-./0HIJK HIJKNone-./0HIJKKHIJ-0/.+,-. / 0 1 2 3 4 5 67789:;;<=>?@AABCDEFGHIIJKLMNNOPQRSTUVWXYZ[\]^_`aabcde$f$g%hij*k*l*m*noppqrstuvwxyz{|}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~ ~ ~ ~ ~~~~~~~~~~~~~~~~~~~ ~!~"~#~$~%~&~'~(~)~*~+~,~-~.~/~0~1~2~3~4~5~6~7~8~9~:~;~<~=~>~?~@~A~B~C~D~E~F~G~H~I~J~K~L~M~N~O~PQ~PR~PS~PT~PU~PV~PW~PX~PY~PZ~P[~P\~P\~]^~]_~]`~]a~]b~]c~]c~de~df~dg~dh~ij~ik~il~im~in~io~ip~iq~ir~is~it~iu~iv~iw~ix~iy~iz~i{~i|~i}~i~~i~i~i~i~i~i~i~i~i~i~i~i~i~i~i~i~i~i~i~i~i~i~i~i~i~i~i~i~i~i~i~i~i~i~i~i~i~i~i~i~i~i~i~i~i~i~i~i~i~i~i~i~i~i~i~i~i~i~i~i~i~i~i~i~i~i~i~i~i~i~i~i~i~i~i~i~i~i~i~i~i~i~i~i~i~i~i~i~i~i~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~ ~ ~ ~ ~~~~~~~~~~~~~~~~~~~ ~!~"~#~$~%~&~'~(~)~*~+~,~-~.~/~0~1~2~34~35~36~37~38~39~3:~3;~3<~3=~3>~3?~3@~3A~3B~3C~3D~3E~3F~3G~3H~3I~3J~3K~3L~3M~3N~3O~3P~3Q~3R~3S~3T~3U~3V~3W~3X~3Y~3Z~3[~3\~3]~3^~3^~3_~3`~3a~3b~3c~3d~3e~3f~3g~3h~3i~3j~3k~3l~3m~3n~3o~3p~3q~3r~3s~3t~3u~3v~3w~3x~3y~3z~3{~3y~3|~3|~3}~3}~3~~3~3~3~3~3~3~3~3~3~3~3~3~3~3~3~3~3~3~3~3~3~3~3~3~3~3~3~3~3~3~3~3~3~3~3~3~3~3~3~3~3~3~3~3~3~3~3~3~3~3~3~3~3~3~3~3~3~3~3~3~3~3~3~3~3~3~3~3~3~3~3~3~3~3~3~3~3~3~3~3~3~3~3~3~3~3~3~3~3~3~3~3~3~3~3~3~3~3~3~3~3~3~3~3~3~3~3~3~3~3~3~3~3~3~3~3~3~3~3~3~3~3~3~3~3~3~3~3~3~3~3~3~3~3~3~3~3~3~3~3~3~3~3~3~3~3~3~3~3~3~3~3~3 ~3 ~3 ~3 ~3 ~3~3~3~3~3~3~3~3~3~3~3~3~3~3~3~3~3~3~3~3 ~3!~3"~3#~3$~3%~3&~3'~3(~3)~3*~3+~3,~3-~3.~3/~30~31~32~33~34~35~36~37~38~39~3:~3;~3<~3=~3>~3?~3@~3A~3B~3C~3D~3E~3F~3G~3H~3I~3J~3K~3L~3M~3N~3O~3P~3Q~3R~3S~3T~3U~3V~3W~3X~3Y~3Z~3[~3\~3]~3^~3_~3`~3a~3`~3b~3b~3c~3d~3e~3f~3g~3h~3i~3j~3k~3l~3m~3n~3o~3p~3q~3r~3s~3t~3u~3v~3w~3x~3y~3z~3{~3|~3}~3~~3~3~3~3~3~3~3~3~3~3~3~3~3~3~3~3~3~3~3~3~3~3~3~3~3~3~3~3~3~3~3~3~3~3~3~3~3~3~3~3~3~3~3~3~3~3~3~3~3~3~3~3~3~3~3~3~3~3~3~3~3~3~3~3~3~3~3~3~3~3~3~3~3~3~3~3~3~3~3~3~3~3~3~3      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyyz{{|}}~+                                                                                                                               !"#$%&'()*+,,2-./0123456789:;<=>?@ABCDEFGHIJKLMMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~F[     !!!!!!!!!!!!!!"""""""###%%%%%%&'''''((((())*k******** hlint-1.9.5Language.Haskell.HLint2Language.Haskell.HLint Test.UtilHSE.Type HSE.FreeVarsHSE.Util HSE.Match HSE.ScopeParallel Paths_hlintUtilCmdLine HSE.Bracket HSE.EvaluateHSE.All Hint.UtilTest.InputOutputSettings Test.ProofTest.TranslateIdea Hint.Type Hint.Match Hint.List Hint.ListRec Hint.Monad Hint.Lambda Hint.Bracket Hint.NamingHint.Structure Hint.Import Hint.PragmaHint.ExtensionsHint.Duplicate Hint.CommentHint.AllApplyGrepReportTest.AnnotationsTest.AllHLintScope scopeCreate scopeMatch scopeMoveEncodingdefaultEncoding useEncoding readEncodingCppFlagsCpphs CppSimpleNoCpp ParseErrorparseErrorLocationparseErrorMessageparseErrorContents ParseFlagsencodingcppFlagshseFlagsdefaultParseFlags parseModuleExHintRulehintRuleSeverity hintRuleName hintRuleScope hintRuleLHS hintRuleRHS hintRuleSide hintRuleNotesClassifyclassifySeverity classifyHintclassifyModule classifyDeclNote ValidInstance RemovesErrorDecreasesLazinessIncreasesLazinessSeverityErrorWarningIgnore readSettings findSettings ideaModuleideaDecl ideaSeverityideaHintideaSpanideaFromideaToideaNoteHint hintModules hintModulehintDecl hintComment builtinHints hintRules applyHintsgetHLintDataDir autoSettings SuggestionsuggestionLocationsuggestionSeverityhlint withTestsResultfailurestotalrefprogresspassedfailedtestedType_Pat_Exp_Decl_Module_Shaskell-src-exts-1.16.0Language.Haskell.Exts.AnnotatedreadExtensionsparseFileContentsWithCommentsparseFileContentsWithModeparseFileContentsWithExtsparseFileContentsparseFileWithCommentsparseFileWithModeparseFileWithExts parseFileLanguage.Haskell.Exts.ParserparseWithComments parseWithMode Parseable$Language.Haskell.Exts.InternalParserparseStmtWithCommentsparseStmtWithMode parseStmtparseTypeWithCommentsparseTypeWithMode parseTypeparseDeclWithCommentsparseDeclWithMode parseDeclparsePatWithCommentsparsePatWithModeparsePatparseExpWithCommentsparseExpWithModeparseExpparseModuleWithCommentsparseModuleWithMode parseModule&Language.Haskell.Exts.Annotated.Fixity applyFixities AppFixityLanguage.Haskell.Exts.Pretty prettyPrintprettyPrintWithModeprettyPrintStyleMode defaultMode PPOffsideRule PPSemiColonPPInLine PPNoLayoutPPLayoutIndent linePragmaslayoutspacing onsideIndent whereIndent letIndent caseIndent multiIfIndentdoIndent classIndentPPHsModePrettyLanguage.Haskell.Exts.LexerlexTokenStreamWithModelexTokenStream#Language.Haskell.Exts.InternalLexerVarIdQVarId IDupVarId ILinVarIdConIdQConIdDVarIdVarSymConSymQVarSymQConSymIntTokFloatTok Character StringTok IntTokHash WordTokHash FloatTokHash DoubleTokHash CharacterHash StringHash LeftParen RightParen LeftHashParenRightHashParen SemiColon LeftCurly RightCurly VRightCurly LeftSquare RightSquareParArrayLeftSquareParArrayRightSquareComma Underscore BackQuoteDotDotDotColon QuoteColon DoubleColonEquals BackslashBar LeftArrow RightArrowAtTilde DoubleArrowMinus ExclamationStar LeftArrowTailRightArrowTailLeftDblArrowTailRightDblArrowTail THExpQuote THPatQuote THDecQuote THTypQuote THCloseQuote THIdEscape THParenEscape THVarQuote THTyQuote THQuasiQuote RPGuardOpen RPGuardCloseRPCAt XCodeTagOpen XCodeTagClose XStdTagOpen XStdTagClose XCloseTagOpenXEmptyTagClose XChildTagOpenXPCDATA XRPatOpen XRPatClose PragmaEndRULESINLINEINLINE_CONLIKE SPECIALISESPECIALISE_INLINESOURCE DEPRECATEDWARNINGSCC GENERATEDCOREUNPACKOPTIONSLANGUAGEANNMINIMAL NO_OVERLAPOVERLAP INCOHERENTKW_AsKW_ByKW_CaseKW_ClassKW_Data KW_Default KW_DerivingKW_DoKW_MDoKW_Else KW_Family KW_ForallKW_Group KW_HidingKW_If KW_ImportKW_InKW_Infix KW_InfixL KW_InfixR KW_InstanceKW_Let KW_Module KW_NewTypeKW_OfKW_ProcKW_RecKW_ThenKW_TypeKW_UsingKW_Where KW_Qualified KW_Foreign KW_ExportKW_Safe KW_Unsafe KW_ThreadsafeKW_Interruptible KW_StdCallKW_CCall KW_CPlusPlus KW_DotNetKW_JvmKW_JsKW_CApiEOFToken Language.Haskell.Exts.ParseMonaddefaultParseModefromParseResultParseOk ParseFailed ParseResultfixitiesignoreLinePragmasignoreLanguagePragmas extensions baseLanguage parseFilename ParseModeLanguage.Haskell.Exts.Fixityinfix_infixl_infixr_ baseFixitiespreludeFixitiesFixityLanguage.Haskell.Exts.Syntax AssocNone AssocLeft AssocRightAssocLanguage.Haskell.Exts.ExtensiontoExtensionListprettyExtensionparseExtensionclassifyExtensiondeprecatedExtensionsknownExtensions ghcDefault glasgowExts impliesExtsprettyLanguageclassifyLanguageknownLanguages Haskell98 Haskell2010HaskellAllDisabledUnknownLanguageLanguageEnableExtensionDisableExtensionUnknownExtension ExtensionOverlappingInstancesUndecidableInstancesIncoherentInstances InstanceSigsDoRec RecursiveDoParallelListCompMultiParamTypeClassesMonomorphismRestrictionFunctionalDependencies Rank2Types RankNTypesPolymorphicComponentsExistentialQuantificationScopedTypeVariablesPatternSignaturesImplicitParamsFlexibleContextsFlexibleInstancesEmptyDataDeclsCPPKindSignatures BangPatternsTypeSynonymInstancesTemplateHaskellForeignFunctionInterfaceArrowsGenericsImplicitPreludeNamedFieldPuns PatternGuardsGeneralizedNewtypeDerivingExtensibleRecordsRestrictedTypeSynonyms HereDocuments MagicHashBinaryLiterals TypeFamiliesStandaloneDeriving UnicodeSyntaxUnliftedFFITypesLiberalTypeSynonyms TypeOperatorsParallelArraysRecordWildCards RecordPunsDisambiguateRecordFieldsOverloadedStringsGADTs MonoPatBindsRelaxedPolyRecExtendedDefaultRules UnboxedTuplesDeriveDataTypeableConstrainedClassMethodsPackageImports LambdaCaseImpredicativeTypesNewQualifiedOperatorsPostfixOperators QuasiQuotesTransformListComp ViewPatterns XmlSyntaxRegularPatterns TupleSectionsGHCForeignImportPrimNPlusKPatternsDoAndIfThenElseRebindableSyntaxExplicitForAllDatatypeContextsMonoLocalBinds DeriveFunctor DeriveGenericDeriveTraversableDeriveFoldableNondecreasingIndentationInterruptibleFFICApiFFIExplicitNamespaces DataKinds PolyKinds MultiWayIf SafeImportsSafe TrustworthyDefaultSignaturesConstraintKindsKnownExtension*Language.Haskell.Exts.Annotated.ExactPrint exactPrintExactPLanguage.Haskell.Exts.CommentsComment UnknownPragmaLanguage.Haskell.Exts.SrcLoc<^^><**<+?><++> combSpanInfoinfoSpan noInfoSpanspanSize isNullSpan mergeSrcSpan mkSrcSpan srcSpanEnd srcSpanStartnoLoc srcColumnsrcLine srcFilenameSrcLocsrcSpanEndColumnsrcSpanEndLinesrcSpanStartColumnsrcSpanStartLinesrcSpanFilenameSrcSpanunLocLoc srcInfoPoints srcInfoSpan SrcSpanInfo startColumn startLinefileName getPointLoc fromSrcInfo toSrcInfoSrcInfo%Language.Haskell.Exts.Annotated.Build metaConPat metaFunctionnameBind patBindWherepatBind simpleFunsfungenNameswildcardnoBindsbindsletStmtgenStmtqualStmtpParenpeListeListlistEaltGWaltcaseEletElamEdoEintPcharPstrPintEcharEstrEfunction pvarTuplevarTuplepTupletuplepAppappFuninfixAppapppvarqvaropvarsymname&Language.Haskell.Exts.Annotated.Syntax=~= tuple_tyconunboxed_singleton_tycon list_tycon fun_tycon unit_tycontuple_tycon_nameunboxed_singleton_tycon_namelist_tycon_namefun_tycon_nameunit_tycon_name family_name forall_name capi_namejs_namejvm_name dotnet_namecplusplus_name ccall_name stdcall_namethreadsafe_nameinterruptible_name unsafe_name safe_name export_name star_namedot_name bang_name minus_name hiding_namequalified_nameas_nameunboxed_singleton_con tuple_conunit_conunboxed_singleton_con_namelist_cons_nametuple_con_name unit_con_name main_namemain_mod prelude_mod ModuleNameUnitConListConFunConTupleConConsUnboxedSingleCon SpecialConQualUnQualSpecialQNameIdentSymbolNameIPDupIPLinIPNameQVarOpQConOpQOpVarOpConOpOpVarNameConNameCNameModuleXmlPage XmlHybrid ModuleHeadExportSpecListEVarEAbs EThingAll EThingWithEModuleContents ExportSpec NoNamespace TypeNamespace Namespace importSpecsimportAs importPkg importSafe importSrcimportQualified importModule importAnn ImportDeclImportSpecListIVarIAbs IThingAll IThingWith ImportSpecTypeDecl TypeFamDeclClosedTypeFamDeclDataDecl GDataDecl DataFamDecl TypeInsDecl DataInsDecl GDataInsDecl ClassDeclInstDecl DerivDecl InfixDecl DefaultDecl SpliceDeclTypeSigFunBindPatBindForImpForExpRulePragmaDeclDeprPragmaDeclWarnPragmaDecl InlineSigInlineConlikeSigSpecSig SpecInlineSigInstSig AnnPragma MinimalPragmaDeclTypeEqnAnnTypeAnn ModuleAnn Annotation VarFormula AndFormula OrFormula ParenFormulaBooleanFormulaDataTypeNewType DataOrNewDHeadDHInfixDHParenDHAppDeclHeadIRuleIParenInstRuleIHConIHInfixIHParenIHAppInstHeadDerivingBDeclsIPBindsBindsIPBindMatch InfixMatch QualConDeclConDecl InfixConDeclRecDecl FieldDeclGadtDeclClsDecl ClsDataFamClsTyFamClsTyDef ClsDefSigInsDeclInsTypeInsDataInsGDataBangedTy UnpackedTyBangType UnGuardedRhs GuardedRhssRhs GuardedRhsTyForallTyFunTyTupleTyList TyParArrayTyAppTyVarTyConTyParenTyInfixTyKind TyPromotedTyEqualsTySpliceTyBangTypePromotedIntegerPromotedString PromotedCon PromotedList PromotedTuple PromotedUnitPromotedBoxedUnboxed KindedVar UnkindedVar TyVarBindKindStarKindBangKindFn KindParenKindVarKindApp KindTupleKindListKindFunDepCxSingleCxTupleCxEmptyContextClassAVarAInfixAIParamEqualPParenAAsstCharStringIntFracPrimIntPrimWord PrimFloat PrimDoublePrimChar PrimStringLiteralSignlessNegativeSignVarIPVarConLitInfixAppAppNegAppLambdaLetIfMultiIfCaseDoMDoTuple TupleSectionListParArrayParen LeftSection RightSection RecConstr RecUpdateEnumFrom EnumFromTo EnumFromThenEnumFromThenToParArrayFromToParArrayFromThenToListCompParComp ParArrayComp ExpTypeSigVarQuoteTypQuote BracketExp SpliceExp QuasiQuoteXTagXETagXPcdataXExpTag XChildTag CorePragma SCCPragma GenPragmaProc LeftArrApp RightArrAppLeftArrHighAppRightArrHighAppLCaseExpXNameXDomNameXAttr ExpBracket PatBracket TypeBracket DeclBracketBracketIdSplice ParenSpliceSplice PlayRiskyPlaySafePlayInterruptibleSafetyStdCallCCall CPlusPlusDotNetJvmJsCApiCallConvLanguagePragma OptionsPragmaAnnModulePragma ModulePragmaGHCHUGSNHC98YHCHADDOCK UnknownToolTool NoOverlapOverlap Incoherent ActiveFrom ActiveUntil ActivationRuleRuleVar TypedRuleVarDeprTextWarnText WarningTextPVarPLitPNPlusK PInfixAppPAppPTuplePListPParenPRecPAsPat PWildCardPIrrPat PatTypeSigPViewPatPRPatPXTagPXETagPXPcdataPXPatTagPXRPats PQuasiQuotePBangPatPatPXAttrRPStarRPStarGRPPlusRPPlusGRPOptRPOptGRPatOpRPOpRPEitherRPSeqRPGuardRPCAsRPAsRPParenRPPatRPat PFieldPat PFieldPunPFieldWildcardPatField Generator QualifierLetStmtRecStmtStmtQualStmt ThenTransThenByGroupBy GroupUsing GroupByUsing FieldUpdateFieldPun FieldWildcardAltamapann Annotatedpretty-1.1.1.1Text.PrettyPrint.HughesPJMode OneLineModeLeftMode ZigZagModePageModeStylemode lineLengthribbonsPerLinestyleuniplate-1.6.12$Data.Generics.Uniplate.Internal.Data transformBis transformer Transformer!Data.Generics.Uniplate.OperationsholesBi contextsBi rewriteBiM rewriteBi transformBiM transformBi childrenBi universeBiparaholescontextsrewriteMrewrite transformM transformchildrenuniversedescendMdescenduniplateUniplate descendBiM descendBibiplateBiplatefreeVarsallVarsFreeVarsAllVarsVarsboundfreedeclBindvarsvarsspvars^+^- freeVars_inFreeinVars unqualNamesunqualOp$fFreeVarsIPBind $fFreeVars[]$fAllVarsMatch $fAllVars[] $fAllVarsDecl $fAllVars[]0$fAllVarsBinds$fAllVarsMaybe $fAllVarsStmt $fAllVars[]1 $fAllVars[]2$fAllVarsQualStmt$fFreeVarsGuardedRhs $fFreeVarsRhs $fFreeVars[]0 $fFreeVarsAlt $fAllVars[]3 $fAllVarsPat $fFreeVars[]1 $fFreeVarsExp $fAllVarsVars $fFreeVarsSet $fMonoidVarsopExpexpOp moduleDecls moduleName moduleImports modulePragmasfromModuleNameisCharfromCharisPChar fromPCharisString fromString isPString fromPString fromParen fromPParen fromTyParen fromDerivingisVarisConisApp isInfixAppisListisAnyAppisParenisIfisLambdaisMDoisBoxed isDerivDecl isPBangPat isPFieldPun isFieldPun isPWildCardisPFieldWildcardisFieldWildcard isPViewPat isParComp isPatTypeSig isQuasiQuote isSpliceDecl isNewType isSectionallowRightSectionallowLeftSectionunqualfromQual isSpecialisDolisDotisDotAppdotAppdotAppsisLexemeisWHNF getEquations toFunBindreplaceBranchesappsfromApps childrenApps descendApps descendAppsM universeApps transformAppstransformAppsM universeS childrenSuniverseParentExp showSrcLoctoSrcLoc toSrcSpan nullSrcLoc nullSrcSpanandropAnn/=~=elem_notElem_nub_ intersect_neqListeqListeqMaybe getFixityNamedtoNamed fromNamedVar_NoVar_PVar_NoPVar_PApp_NoPApp_App1NoApp1App2NoApp2Viewview~=isCtorisSym $fNamedDecl$fNamedDeclHead $fNamedMatch $fNamedQOp$fNamedTyVarBind $fNamedPat$fNamedModuleName $fNamedName $fNamedName0 $fNamedQName $fNamedQName0 $fNamedExp $fViewExpVar_$fViewPatPVar_$fViewPatPApp_ $fViewExpApp1 $fViewExpApp2base Data.Monoidmempty scopeImports possModules possImport $fMonoidScopeparallel parallel1 parallelNcatchIOversionbindirlibdirdatadir libexecdir sysconfdir getBinDir getLibDir getDataDir getLibexecDir getSysconfDirgetDataFileNameGHC.IO.Handle.TypesHandleBoxEncoding_InternalgetDirectoryContentsRecursive partitionM concatMapMconcatMconcatZipWithMlistM'notNullheadDefisLeft_isRight_ unzipEitherforlimittrimltrimrtrimtrimBy groupSortFstdisjointunsnocrevTake concatUnzipmergeByswapfst3snd3thd3concat3concat2replacereadFileEncoding exitMessagewithTemporaryFilewithTemporaryFiles captureOutput withBuffering readFile'gzip descendIndexuniverseParentuniverseParentBidefaultExtensions badExtensionscmdProofcmdFiles cmdReports cmdGivenHints cmdWithHintscmdColor cmdIgnore cmdShowAll cmdExtension cmdLanguage cmdEncodingcmdCross cmdFindHints cmdDataDircmdJson cmdNoSummary ColorModeAutoAlwaysNever cmdUseColourCmdCmdHSECmdTest cmdQuickCheck cmdTypeCheckCmdGrep cmdPatternCmdMaincmdUtf8cmdPath cmdCppDefine cmdCppInclude cmdCppFile cmdCppSimple cmdCppAnsigetCmd automatic exitWithHelp cmdHintFiles cmdExtensionscmdCpp<\> resolveFilegetFile getModule getHintFile getExtensions readExtension$fDefaultColorModeisAtom needBracketparendescendBracket rebracket1BracketsremParenaddParentransformBracket appsBracket $fBracketsPat$fBracketsType $fBracketsExpevaluate evaluate1contextparseFlagsNoLocationsparseFlagsAddFixitiesparseFlagsSetExtensionsrunCpp applyFixity cheapFixities askFixity niceLambda simplifyExp niceDotApp matchStar InputOutputfilesrunoutputexittestInputOutputparseInputOutputscheckInputOutput matchStarStarSettingInfixBuiltinSettingMatchExpSettingClassifydefaultHintName getSeverity isUnifyVaraddInfix showNotes readSettings2moduleSettings_ readHints readSetting readPragmareadSide readFuncsgetNameserrorOn findSettings2 findSettingfindExp $fShowNoteclassifyMissingTheoremoriginallocationlemmaproof missingFuncsisabelleTheoremsreparen hintTheorems $fShowTheorem $fEqTheorem testTypeChecktestQuickCheckrunMainswrap toTypeCheck toQuickCheckisRemovesError Data.MaybeNothing showIdeaJson showIdeasJsonshowANSIshowExrawIdeaideawarnerr $fShowIdeaMonoid CrossHintModuHintDeclHint $fMonoidHint NameMatchfmapAn readMatchreadRule dotVersion findIdeas matchIdeanmOpunifyunifyDefunifyExpunifyPatisOtherchecksubst checkSide checkDefine performEval unqualify addBracketlistHintlistDecllistExplistPatisAppendcheckspchecks usePStringusePList useStringuseListuseCons typeListChar typeString stringTypeBranchBListBConsBNilListCase listRecHint recursiveStr recursive matchListRecasDofindCasedelCons eliminateArgs findBranchfindPatreadPatbadFuncs monadHintmonadExp monadCall monadReturn monadJoinmonadLetfromRet lambdaHint lambdaDecl etaReduce lambdaExp fromLambda bracketHintbracket fieldDecldollar splitInfix namingHintnamingshorten suggestName replaceNamesPattern structureHinthintsasGuards asPatternpatHintexpHint importHintsimplify simplifyHeadreducereduce1newNames hierarchy desugarQual multiExport pragmaHint pragmaIdea languageDupes strToLanguage optToLanguagenoNewtypeDerivingderivesextensionsHintminimalExtensionswarningsusedExtused hasDeriveun&hasThasT2hasShasDupe duplicateHintdupesfindaddduplicateOrderedpragmas commentHintsuggest applyHintFileapplyHintFiles executeHintsparseModuleApplyallHintsclassify_docsresolveBuiltinrunGrep writeTemplate writeReportcode writeIdea escapeHTMLTesttestAnnotations parseTestFile parseTesttest testNamesfromSuggestionhlintHSE hlintTest hlintGrep hlintMainreadAllSettingsrunHints$fShowSuggestion