+C      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|} ~        !!""##$$%%&&''(')(*(+),*-+.+/,0,1-2.3/405161728393:4;4<5=5>6?7@7A7B8ANoneNone    None+Expand type synonyms in a data declaration CDEFCDEFNone2 !"#$%&'()*+,-./01234567GHIJKLMNOPQRSTUVWX  !"#$%&'()*+,-./01234567  !"#$%&'()*+,-./012345670 !"#$%&'()*+,-./01234567GHIJKLMNOPQRSTUVWXNone8AThis class is used to overload literal construction based on the  type of the literal. :?The class used to overload lifting operations. To reduce code C duplication, we overload the wrapped constructors (and everything  else, but that'4s irrelevant) to work in patterns, expressions, and  types. ;8Build an application node, with a name for a head and a  provided list of arguments. <Reference a named variable. = Lift a TH Y >Tupling ?Listing E*A simple clause, without where or guards. F#A default clause with N arguments. GA simple Val clause J,We provide 3 standard instance constructors ; instance_default requires C for each free type variable % instance_none requires no context - instance_context requires a given context MBBuild an instance of a class for a data type, using the heuristic 9 that the type is itself required on all type arguments. NQBuild an instance of a class for a data type, using the class at the given types O6Build a type signature declaration with a string name P#Build a fundecl with a string name Q/Build an application node without a given head S/Common pattern: list of a familiy of variables T$Variable based on a letter + number UAMake a list of variables, one for each argument to a constructor V,Make a simple pattern to bind a constructor W!Reference the constructor itself p;Build a chain of expressions, with an appropriate terminal Z sequence__ does not require a unit at the end (all others are optimised automatically) q;Build a chain of expressions, with an appropriate terminal Z sequence__ does not require a unit at the end (all others are optimised automatically) r;Build a chain of expressions, with an appropriate terminal Z sequence__ does not require a unit at the end (all others are optimised automatically) s;Build a chain of expressions, with an appropriate terminal Z sequence__ does not require a unit at the end (all others are optimised automatically) t;Build a chain of expressions, with an appropriate terminal Z sequence__ does not require a unit at the end (all others are optimised automatically) u K-way liftM I89:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuZ[\]^_`abcd>89:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstu>BDCEFGHIJKLMNOP@A:;<=>?Q89RSTUVWXYZ[]\_`^abcdefgmnlkjihopstrquB89:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuZ[\]^_`abcdNone evwxfghijvwxvxw evwxfghij Safe-Inferredyzyzyzyz9 Safe-Inferred klmnopqrstqrsklmnopqrs Safe-Inferred{|{|{|{|: Safe-Inferreduu None9}~hvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~}~9~}9}~ None,+ None~vwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~}~ None None None NoneNone;None<None=None                None$The type of ways to derive classes. ( Should not really be in this module! The derivation function proper The name of the derivation  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~Y      !"#$%&'()*+,-./012345  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxNone     None 67   67None        None    NoneNoneNoneNone89:89:None;<;<NoneNoneNoneNoneNone=>=> None ?@A   ?@A!None!B!!!B"None"C"""C#portable experimentalNone# for JSON #DEFGHIJKLMNOPQR###DEFGHIJKLMNOPQR$None$S$$$S%None%T%%%T&None&U&&&U'None'('('('((None)*)*)*)*)None+VWXYZ[\+++VWXYZ[\*None,],,,]+None-.-.-.-.,None/0/0/0/0-None1^111^.None2_`ab222_`ab/None3cde333cde0Nonefghijkl4mnopqrstuvwxyz44fglkjih4mnopqrstuvwxyz1None565656562None7{777{>None|"Information on argument positions }'Monad that collects required instances ~(What argument of the current data type? %What argument position of that type? (What kind of traversal are we deriving? $On what position are we traversing?  covariant? name of the traversal function Identity traversal  Traversal of a !Apply the sub-traversal function .Apply two non-identity traversals in sequence Traverse a function type *Construct a tuple from applied traversals .Construct a data type from applied traversals -Construct a clause of the traversal function @An expression representing a traversal of a subpart of the data ;Derivation for a Traversable like class with just 1 method 9Instance for a Traversable like class with just 1 method &Instance for a Traversable like class  Derive a traverse like function Derive a clause of a traverse! like function for a constructor Derive a traversal for a type BFind all arguments to a type application, then derive a traversal 7Lift a traversal to the argument of a type constructor )Position of an argument in the data type  In the type  data X a b c ) positions are: a -> 3, b -> 2, c -> 1 |}~|}~ 3None898989894None:;:;:;:;5None<=<=<=<=?None6None>6     !"#$%&'()*+,-./0123456789:;<=>>>7None?"Derive an instance of some class. derive only derives instances  for the type of the argument. A"Derive an instance of some class.  deriveFromDec only derives instances  for the type of the argument. ?@A9     !"#$%&'()*+,-./0123456789:;<=>?@A?@A?@A@None  ANoneBBB8NoneBBBCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~                   G K L N                           ! " # $ % & ' ' ( ) * + , - ./01234456784469:;<=>?@ABCDEFGHIJKLMNOPQRSTU V!W"X#Y$Z%[&\']'^(_(`)a*b+c+d,e,f-g.h/i0j1k1l2m3n3o4p4q5r5s6t7/7u7vAwxyz{|}~999999999:      !"#$%&'()*+,-.//01203456789:;<=>?@@AABBCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefgghijkkllmmnnopqprstuvwxyz{|}~"Y                         !"#$#%#&#'#(#)#*#+#,#-#-./.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.P.Q.R.S.T.U.V.W.X.Y.Z.[.\.].^._.`.a.b.c.d.e.f.g.h.i.j.k.l.m.n.o.p.q.r.s.t.u.v.w.x.y.z.{.|.}.~..................................................................      !"#$%&'()*)*)+)+,-,.,/,0,1,2,3,4,5,56789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^ _ ` a bcdefghijklmnopqrstu#v#wxyxz.{|}~                                          ;; ; ; ; ; ; ;;;;;;;;;;;;;;;<<<< <!<"<#<$=%=&= ='=(=)=*=+=,==-=.=/=0=1=2=3456789:;<=B>?.@AB;nCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~?;  B>n   F   !"#$%&'()*+,-./Tl0l10l023 4 5 6!7"8#l#1#9#:#;#<#=#>#?#@#A#B#C##D$E%F&G)l)H)I)1)J)K)L*M-N.l.1.O.P/Q/R/S0T0U0V0W0X0Y0Z0[0\0]0^0_0`0a0b0c0d0e0f0g0h2i>j>k>l>m>n>o>p>q>r>s>t>u>v>w>x>y>z>{>|>}>~>>>>>>>>n>>>34455????????7@@@@@@@@@AAAA derive-2.5.18Language.Haskell.TH.CompatLanguage.Haskell.TH.Data!Language.Haskell.TH.ExpandSynonymLanguage.Haskell.TH.FixedPprLanguage.Haskell.TH.HelperLanguage.Haskell.TH.PeepholeData.Derive.Class.DefaultData.Derive.Class.AritiesLanguage.HaskellLanguage.Haskell.ConvertData.Derive.DSL.HSEData.Derive.DSL.DSLData.Derive.DSL.ApplyData.Derive.DSL.DeriveData.Derive.DSL.SYBData.DeriveDSLLanguage.Haskell.TH.AllData.Derive.Internal.DerivationData.Derive.ArbitraryData.Derive.ArbitraryOldData.Derive.AritiesData.Derive.BinaryData.Derive.BinaryDeferData.Derive.BoundedData.Derive.DataData.Derive.DataAbstractData.Derive.DefaultData.Derive.EnumData.Derive.EnumCyclicData.Derive.EqData.Derive.FoldData.Derive.FromData.Derive.HasData.Derive.IsData.Derive.JSONData.Derive.LazySetData.Derive.LensData.Derive.MonoidData.Derive.NFDataData.Derive.OrdData.Derive.ReadData.Derive.RefData.Derive.SerialData.Derive.SerializeData.Derive.SetData.Derive.ShowData.Derive.TypeableData.Derive.UniplateDirectData.Derive.UniplateTypeableData.Derive.UpdateData.Derive.FoldableData.Derive.FunctorData.Derive.TraversableData.Derive.All Data.DeriveTHData.DeriveMainData.Derive.Internal.InstanceData.Derive.Instance.Arities Derive.UtilsDerive.Generate Derive.FlagsData.Derive.Internal.TraversalDerive.Derivation Derive.Test Derive.Main fromTyVardataDefinitionTypeArgs typeToPredCtorDefDataDefdataNamequalifiedDataName dataAritydataArgs dataCtorsctorNamequalifiedCtorName ctorArityctorStrictTypes ctorTypes ctorFields dropModule dropNumbernormDataunqualifiedNametypeAppeqConTisTupleT expandDataPprpprppr_list Precedence nestDepthappPrecopPrecnoPrecparensIf showNameRaw isPrefixNamepprName_pprintppr_sig pprFixity pprExpInfixpprExp pprFields pprMaybeExppprBodypprLitpprPat deQualLhsHead deQualNamepprVarStrictType pprStrictType pprParendTypepprTyAppsplitpprCxt where_clause showtextlLitClitValconlKvrraw_littuplstNameLiketoName applyWith foldl1With foldr1Withsclause defclausesvalcase'->: instance_noneinstance_defaultinstance_contextsimple_instancegeneric_instancesigNfunNappdataVarsvarsvrnctvctpctcl0l1l2truefalsenilunithNil'hZero'id'consboxreturn'const'hSucc'==:&&:++:>>=:>>:.:>:ap'hCons'&&::++::>>::.:: sequence__liftmkpeephole replaceVars replaceVarDefaultdefAritiesarities FullDataDecl FieldDeclCtorDeclDataDecl?forallstyApps fromTyApps fromTyTuple fromTyParen fromTyParenstyRootisTyFun isTyParen fromTyList~=appPsimplify isGuardFalserenameisAtomparenslnoSltitleqnamevarcontyVar tyVarBindtyConpVarqvop dataDeclTypedataDeclFields moduleName moduleDecls moduleImports modulePragmas showDeclstyApptyFunappsbindbinds isDataDecldataDeclSrcLocdataDeclContext dataDeclName dataDeclVars dataDeclArity dataDeclCtors ctorDeclName ctorDeclName'ctorDeclFields ctorDeclAritydeclNameConvertconvertOutputOCustomOIgnoreOListOAppOIntOStringOutCtorInputsampleoutEqshowOut ctorIndextoInputtoOutput fromOutputcoercereadConout fromStateDSL ApplicationInstanceTailHeadFold FieldIndex CtorArity CtorIndexCtorNameDataNameMapCtorMapFieldListIntShowIntStringReverseConcatAppappendfromOut simplifyDSL prettyTexEnvenvInputenvCtorenvFieldenvFoldapplyenvapplyEnvderivedslSYB deriveDSLapplyDSL dynamicDSL DerivationderivationDeriverderivationName derivation derivationQ derivationOpderivationParamsderivationCustom derivationDSLderivationCustomDSL customSplice customContext makeArbitrarymakeArbitraryOlddslArbitraryOld makeArities dslArities makeBinary dslBinarymakeBinaryDeferdslBinaryDefer makeBounded dslBoundedmakeDatamakeDataAbstract makeDefault dslDefaultmakeEnumdslEnummakeEnumCyclic dslEnumCyclicmakeEqdslEqmakeFoldmakeFrommakeHasmakeIsmakeJSON makeLazySetmakeLens makeMonoid makeNFData dslNFDatamakeOrddslOrdmakeReadmakeRef makeSerial dslSerial makeSerialize dslSerializemakeSetmakeShow makeTypeablemakeUniplateDirectmakeUniplateTypeablecustom makeUpdate makeFoldable makeFoldableN makeFunctor makeFunctorNmakeTraversablemakeTraversableN derivationsderives deriveFromDec deriveMain expandType expandType' expandSyn substitute $fPprPred$fPprTyVarBndr $fPprRange $fPprType$fPprCon $fPprClause $fPprForeign $fPprFunDep$fPprDec$fPprPat$fPprLit $fPprBody $fPprMatch $fPprStmt$fPprExp $fPprInfo $fPprName$fPpr[]template-haskellLanguage.Haskell.TH.SyntaxLit$fLitC() $fLitC(,,) $fLitC(,)$fLitC[] $fLitCChar $fLitCInteger $fValconType $fValconPat $fValconExp $fNameLike[]$fNameLikeName traceModepeeppeepPatpeepBinsimpleBoxctorTypectorRep d_ctorArity d_ctorValue d_dataCtorsbase Data.DataData$fAritiesd_typepretty-1.1.1.0Text.PrettyPrint.HughesPJstyleribbonsPerLine lineLengthmodeStylePageMode ZigZagModeLeftMode OneLineModeModehaskell-src-exts-1.16.0Language.Haskell.Exts.SyntaxXNameXDomNameXAttrWarnTextDeprText WarningTextTypeEqnTyVarTyTupleTySplice TyPromotedTyParen TyParArrayTyListTyKindTyInfixTyFunTyForallTyEqualsTyConTyBangTyAppType UnkindedVar KindedVar TyVarBindRecStmt QualifierLetStmt GeneratorStmt ParenSpliceIdSpliceSpliceUnitConUnboxedSingleConTupleConListConFunConCons SpecialConSignlessNegativeSignPlaySafe PlayRiskyPlayInterruptibleSafety TypedRuleVarRuleVarRule UnGuardedRhs GuardedRhssRhsRPStarGRPStarRPPlusGRPPlusRPOptGRPOptRPatOpRPSeqRPPatRPParenRPOpRPGuardRPEitherRPCAsRPAsRPat ThenTransThenByQualStmt GroupUsing GroupByUsingGroupBy QualConDeclQVarOpQConOpQOpUnQualSpecialQualQName PromotedUnit PromotedTuplePromotedString PromotedListPromotedInteger PromotedConPromotedPFieldWildcard PFieldPun PFieldPatPatField PatTypeSigPXTagPXRPatsPXPcdataPXPatTagPXETag PWildCardPViewPatPVarPTuplePRecPRPat PQuasiQuotePParenPNPlusKPLitPListPIrrPat PInfixAppPBangPatPAsPatPAppPatPXAttrOverlap NoOverlap IncoherentVarOpConOpOp TypeNamespace NoNamespace NamespaceSymbolIdentName OptionsPragmaLanguagePragmaAnnModulePragma ModulePragma ModuleNameModuleMatchPrimWord PrimStringPrimInt PrimFloat PrimDoublePrimCharFracCharLiteralKindVar KindTupleKindStar KindParenKindListKindFnKindBangKindAppKindInsTypeInsGDataInsDeclInsDataInstDeclIVar IThingWith IThingAllIAbs ImportSpec importSrc importSpecs importSafeimportQualified importPkg importModule importLocimportAs ImportDeclIPLinIPDupIPNameIPBind GuardedRhsGadtDeclFunDep FieldWildcard FieldUpdateFieldPunEVar EThingWith EThingAllEModuleContentsEAbs ExportSpecXTagXPcdataXExpTagXETag XChildTagVarQuoteVarTypQuote TupleSectionTuple SpliceExp SCCPragma RightSectionRightArrHighApp RightArrApp RecUpdate RecConstr QuasiQuoteProcParenParCompParArrayFromToParArrayFromThenTo ParArrayCompParArrayNegAppMultiIfMDoListCompLet LeftSectionLeftArrHighApp LeftArrAppLambdaLCaseInfixAppIfIPVar GenPragma ExpTypeSig EnumFromToEnumFromThenTo EnumFromThenEnumFromDo CorePragmaConCase BracketExpExpDerivingWarnPragmaDeclTypeSig TypeInsDecl TypeFamDeclTypeDecl SpliceDeclSpecSig SpecInlineSigRulePragmaDeclPatBind MinimalPragmaInstSig InlineSigInlineConlikeSig InfixDecl GDataInsDecl GDataDeclFunBindForImpForExp DerivDeclDeprPragmaDecl DefaultDecl DataInsDecl DataFamDeclClosedTypeFamDecl ClassDecl AnnPragmaDeclNewTypeDataType DataOrNewContextRecDecl InfixConDeclConDeclClsTyFamClsTyDef ClsDefSigClsDecl ClsDataFamStdCallJvmJsDotNet CPlusPlusCCallCApiCallConvVarNameConNameCName TypeBracket PatBracket ExpBracket DeclBracketBracket VarFormula ParenFormula OrFormula AndFormulaBooleanFormulaIPBindsBDeclsBinds UnpackedTyBangedTyBangTypeVarAParenAInfixAIParamEqualPClassAAsst AssocRight AssocNone AssocLeftAssocTypeAnn ModuleAnnAnn AnnotationAlt AlwaysActive ActiveUntil ActiveFrom ActivationLanguage.Haskell.Exts.SrcLocsrcLine srcFilename srcColumnSrcLocunLoclocLocLanguage.Haskell.Exts.PrettyPretty PPSemiColon PPOffsideRule PPNoLayoutPPInLinePPLayout whereIndentspacing onsideIndent multiIfIndent linePragmas letIndentlayoutdoIndent classIndent caseIndentPPHsModeIndentLanguage.Haskell.Exts.Parser parseWithModeparseWithCommentsparse Parseable Language.Haskell.Exts.ParseMonadParseOk ParseFailed ParseResult parseFilenameignoreLinePragmasignoreLanguagePragmasfixities extensions baseLanguage ParseMode#Language.Haskell.Exts.InternalLexer XStdTagOpen XStdTagClose XRPatOpen XRPatCloseXPCDATAXEmptyTagClose XCodeTagOpen XCodeTagClose XCloseTagOpen XChildTagOpen WordTokHashWARNINGVarSymVarId VRightCurly UnderscoreUNPACKTilde THVarQuote THTypQuote THTyQuote THQuasiQuote THPatQuote THParenEscape THIdEscape THExpQuote THDecQuote THCloseQuote StringTok StringHashStar SemiColonSPECIALISE_INLINE SPECIALISESOURCESCC RightSquare RightParenRightHashParenRightDblArrowTail RightCurlyRightArrowTail RightArrowRULES RPGuardOpen RPGuardCloseRPCAt QuoteColonQVarSymQVarIdQConSymQConId PragmaEndParArrayRightSquareParArrayLeftSquareOVERLAPOPTIONS NO_OVERLAPMinusMINIMAL LeftSquare LeftParen LeftHashParenLeftDblArrowTail LeftCurly LeftArrowTail LeftArrowLANGUAGEKW_WhereKW_Using KW_UnsafeKW_Type KW_ThreadsafeKW_Then KW_StdCallKW_SafeKW_Rec KW_QualifiedKW_ProcKW_Of KW_NewType KW_ModuleKW_MDoKW_LetKW_JvmKW_JsKW_Interruptible KW_Instance KW_InfixR KW_InfixLKW_InfixKW_In KW_ImportKW_If KW_HidingKW_Group KW_Foreign KW_Forall KW_Family KW_ExportKW_Else KW_DotNetKW_Do KW_Deriving KW_DefaultKW_DataKW_ClassKW_Case KW_CPlusPlusKW_CCallKW_CApiKW_ByKW_As IntTokHashIntTokINLINE_CONLIKEINLINE INCOHERENT ILinVarId IDupVarId GENERATED FloatTokHashFloatTok ExclamationEqualsEOF DoubleTokHash DoubleColon DoubleArrowDotDotDotDVarId DEPRECATEDConSymConIdCommaColon CharacterHash CharacterCOREBar Backslash BackQuoteAtANNTokenLanguage.Haskell.Exts.FixityFixity applyFixities AppFixityLanguage.Haskell.Exts.ExtensionUnknownLanguageHaskellAllDisabled Haskell98 Haskell2010Language XmlSyntax ViewPatternsUnliftedFFITypes UnicodeSyntaxUndecidableInstances UnboxedTuplesTypeSynonymInstances TypeOperators TypeFamilies TupleSections TrustworthyTransformListCompTemplateHaskellStandaloneDerivingScopedTypeVariables SafeImportsSafeRestrictedTypeSynonymsRelaxedPolyRecRegularPatterns RecursiveDoRecordWildCards RecordPunsRebindableSyntax RankNTypes Rank2Types QuasiQuotesPostfixOperatorsPolymorphicComponents PolyKindsPatternSignatures PatternGuardsParallelListCompParallelArraysPackageImportsOverloadedStringsOverlappingInstancesNondecreasingIndentationNewQualifiedOperatorsNamedFieldPunsNPlusKPatterns MultiWayIfMultiParamTypeClassesMonomorphismRestriction MonoPatBindsMonoLocalBinds MagicHashLiberalTypeSynonyms LambdaCaseKindSignaturesInterruptibleFFI InstanceSigsIncoherentInstancesImpredicativeTypesImplicitPreludeImplicitParams HereDocumentsGenericsGeneralizedNewtypeDerivingGHCForeignImportPrimGADTsFunctionalDependenciesForeignFunctionInterfaceFlexibleInstancesFlexibleContextsExtensibleRecordsExtendedDefaultRulesExplicitNamespacesExplicitForAllExistentialQuantificationEmptyDataDeclsDoRecDoAndIfThenElseDisambiguateRecordFieldsDeriveTraversable DeriveGeneric DeriveFunctorDeriveFoldableDeriveDataTypeableDefaultSignaturesDatatypeContexts DataKindsConstraintKindsConstrainedClassMethodsCPPCApiFFIBinaryLiterals BangPatternsArrowsKnownExtensionUnknownExtensionEnableExtensionDisableExtension ExtensionLanguage.Haskell.Exts.Comments UnknownPragmaComment&Language.Haskell.Exts.Annotated.SyntaxYHC UnknownToolNHC98HUGSHADDOCKGHCToolUnboxedBoxed unsafe_nameunit_tycon_name unit_tycon unit_con_nameunit_conunboxed_singleton_tycon_nameunboxed_singleton_tyconunboxed_singleton_con_nameunboxed_singleton_contuple_tycon_name tuple_tycontuple_con_name tuple_conthreadsafe_name stdcall_name star_name safe_namequalified_name prelude_mod minus_name main_namemain_modlist_tycon_name list_tyconlist_cons_namejvm_namejs_nameinterruptible_name hiding_namefun_tycon_name fun_tycon forall_name family_name export_name dotnet_namedot_namecplusplus_name ccall_name capi_name bang_nameas_nameprettyPrintWithModeprettyPrintStyleMode prettyPrint defaultModeparseTypeWithModeparseTypeWithComments parseTypeparseStmtWithModeparseStmtWithComments parseStmtparsePatWithModeparsePatWithCommentsparsePatparseModuleWithModeparseModuleWithComments parseModuleparseExpWithModeparseExpWithCommentsparseExpparseDeclWithModeparseDeclWithComments parseDecl getTopPragmasfromParseResultdefaultParseModeLanguage.Haskell.Exts.LexerlexTokenStreamWithModelexTokenStream showTokenpreludeFixitiesprefixMinusFixityinfixr_infixl_infix_ baseFixitiestoExtensionListprettyLanguageprettyExtensionparseExtensionknownLanguagesknownExtensions impliesExts glasgowExts ghcDefaultdeprecatedExtensionsclassifyLanguageclassifyExtensionLanguage.Haskell.Exts.BuildwildcardvarTupletuplesymstrPstrE simpleFunsfunqvarqualStmt pvarTuplepvarpeList patBindWherepatBindpTuplepParenpAppopnoBindsnameBindname metaFunction metaConPatlistEletStmtletElamEintPintEinfixAppgenStmtgenNamesfunctioneListdoEcharPcharEcaseEappFunaltGWaltLanguage.Haskell.ExtsreadExtensionsparseFileWithModeparseFileWithExtsparseFileWithCommentsAndPragmasparseFileWithCommentsparseFileContentsWithModeparseFileContentsWithExts'parseFileContentsWithCommentsAndPragmasparseFileContentsWithCommentsparseFileContents parseFileconvappTc$fConvertKindType$fConvertTyVarBindTyVarBndr$fConvertAsstPred$fConvertPredAsst$fConvertTypeKind$fConvertTyVarBndrTyVarBind$fConvertTyVarBindName$fConvertFieldUpdate(,)$fConvertQualStmtStmt$fConvertStmtStmt$fConvertAltMatch$fConvertQOpExp$fConvertPatField(,)$fConvertQNameName$fConvertLiteralLit$fConvertPatPat$fConvertBinds[]$fConvertGuardedRhs(,)$fConvertExpExp$fConvertRhsBody$fConvertMatchClause$fConvertNameName$fConvertTypeType$fConvertAsstType$fConvert(,)[]$fConvertType(,)$fConvertConDeclCon$fConvertQualConDeclCon$fConvertDeclDec$fConvertTypeAsst$fConvertTypeType0$fConvert(,)Type$fConvertConConDecl$fConvertConQualConDecl$fConvertNameQName$fConvertNameName0$fConvertNameTyVarBind$fConvertDecDecl $fConvert[][] GuessStateGuessGuessCtrGuessFldctrNamesguess guessListgssFoldgssApplift fromGuesstoGuessmaximsyb&dlistAnydlistdappdsimple dinstancedstringdmapctordsingle dapplicationvPragmaTestExampleSrcsrcName srcImport srcExamplesrcTest srcCustom srcImportStdnullSrcreadHSEasPragmareadSrcgeneratedStart generatedStopwriteGenerated readFile'writeBinaryFilereprepsevilgenerate generateFilepkgUrlinstUrlwraplexemeslexemeFlagGenerate PreprocessorNoOptsDeriveAppendModuImportHelpVersionoptionsflagInfogetFlagspickFileaddFlagsreturnQbindQ sequenceQnewNamemkName mkNameG_v mkNameG_d mkNameG_tcmkNameL liftStringClauseQDecFieldExpFieldPatPred TyVarBndrNoInlineInline InlinableConLikeFunLike AllPhases FromPhase BeforePhasethenCmpcmpEq defaultFixity maxPrecedencemk_unboxed_tup_nameunboxedTupleTypeNameunboxedTupleDataName mk_tup_name tupleTypeName tupleDataName showName'showNamemkNameGmkNameU nameModulenameBasety_NameFlavour con_NameG con_NameL con_NameU con_NameQ con_NameS occString mkOccName pkgString mkPkgName modString mkModName rightNameleftNamejustName nothingName falseNametrueNameaddDependentFilerunIOlocation isInstancereifyInstancesreifylookupValueNamelookupTypeName lookupNamerecover reportWarning reportErrorreportrunQcounterbadIOqAddDependentFileqRunIO qLocationqReifyInstancesqReify qLookupNameqRecoverqReportqNewNameQuasiunQLiftModNamePkgNameOccNameNameSNameQNameUNameLNameG NameFlavour TcClsName NameSpaceUniqAloneAppliedInfixNameIsloc_end loc_start loc_module loc_package loc_filenameCharPosClassIClassOpITyConIFamilyI PrimTyConIDataConIVarITyVarIInfo ParentNameArityUnlifted InstanceDecInfixLInfixRInfixNFixityDirectionCharLStringLIntegerL RationalLIntPrimL WordPrimL FloatPrimL DoublePrimL StringPrimLLitPVarPTupP UnboxedTupPConPInfixPUInfixPParensPTildePBangPAsPWildPRecPListPSigPViewPVarEConELitEAppEInfixEUInfixEParensELamELamCaseETupE UnboxedTupECondEMultiIfELetECaseEDoECompE ArithSeqEListESigERecConERecUpdEGuardedBNormalBBodyNormalGPatGGuardBindSLetSNoBindSParSFromR FromThenRFromToR FromThenToRRangeFunDValDDataDNewtypeDTySynDClassD InstanceDSigDForeignDInfixDPragmaDFamilyD DataInstD NewtypeInstD TySynInstDTypeFamDataFam FamFlavourImportFExportFForeignCallconvUnsafe InterruptibleInlineP SpecialisePSpecialiseInstPRuleP RuleMatchPhasesRuleBndrCxtClassPIsStrict NotStrictUnpackedStrictNormalCRecCInfixCForallC StrictType VarStrictTypeForallTAppTSigTVarTConT PromotedTTupleT UnboxedTupleTArrowTListTPromotedTupleT PromotedNilT PromotedConsTStarT ConstraintTLitTPlainTVKindedTVNumTyLitStrTyLitTyLitcontextsplicemkFoldfoldType makeFromCtortyTuplevalTuple makeHasField makeIsCtormkShowmkShowPlainFieldsmkShowRecordFieldsmkRead mkReadCtor mkReadRecordmkReadRecordField mkReadPlain mkReadTrailer mkJSObject mkJSArraypVarsmakeLazySetField makeLensField dslMonoidgetCtor hasFieldsreadCtor readFieldsmatchStr makeRefField makeSetField customPlain customFields mkTypeableinstshowNSAnsListTryListHitTryMissHitmakemake1ansListansJoinrunoperator operator2subst substData substType knownCtorslistCtor tupleDefn $fShowAnsmakeUpdateField ArgPositions WithInstances_requiredDataArg_requiredPosition TraveralType traversalArg traversalCo traversalName traversalIdtraversalDirect traversalFunc traversalPlus traverseArrow traverseTuple traverseCtor traverseFuncTravtraversalDerivation1traversalInstance1traversalInstancederiveTraversalderiveTraversalCtorderiveTraversalTypederiveTraversalApp traverseArg argPositionsRequiredInstancedefaultTraversalTypetraversalNameNfoldrTraversalfunctorTraversalfunctorForArrowTypetraverseTraversalliftAN wantDerivewantDeriveFlagwantDeriveAnnotation moduleDerives performDerivegetDecl getDerivation writeDerivetoFullDataDecloverlapsexcludeprioritylistTypetesttestFile detailedNeqautoTest isBuiltInmainFile uncommentdefaultExtensions badExtensions