cC      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|} ~        ! "!#"$#%$&%'&(&)'*'+(,)-*.*/+0+1,2-3.4/5060718292:3;3<4=4>5?6@6A6B7@ Safe-Infered Safe-Infered     Safe-Infered+Expand type synonyms in a data declaration None3 !"#$%&'()*+,-./01234567CDEFGHIJKLMNOPQRSTU  !"#$%&'()*+,-./01234567  !"#$%&'()*+,-./012345671 !"#$%&'()*+,-./01234567CDEFGHIJKLMNOPQRSTU Safe-Infered8AThis 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 V >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[\]^_`abcdefghijklmnopqrstuWXYZ[\]^_`a>89:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstu>BDCEFGHIJKLMNOP@A:;<=>?Q89RSTUVWXYZ[]\_`^abcdefgmnlkjihopstrquB89:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuWXYZ[\]^_`a Safe-Inferedvwxvwxvxwvwx Safe-Inferedyzyzyzyz8 Safe-Inferedbcdebcdbcd Safe-Infered{|{|{|{|9 Safe-Inferedff  Safe-Infered:}~mghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~}~:~}:}~  Safe-Infered++  Safe-Inferedghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~}~  Safe-Infered  Safe-Infered  Safe-Infered Safe-Infered Safe-Infered: Safe-Infered; Safe-Infered< Safe-Infered  Safe-Infered$The type of ways to derive classes. ( Should not really be in this module! The derivation function proper The name of the derivation b      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWVXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwx Safe-Infered          Safe-Infered     Safe-Infered         Safe-Infered Safe-Infered Safe-Infered Safe-Infered Safe-Infered Safe-Infered Safe-Infered Safe-Infered Safe-Infered Safe-Infered Safe-Infered     Safe-Infered!!!!! Safe-Infered""""" Safe-Infered#####portable experimental Safe-Infered$ for JSON $$$$$ Safe-Infered%%%%% Safe-Infered&&&&& Safe-Infered'('('('(' Safe-Infered)*)*)*)*( Safe-Infered++++) Safe-Infered,,,,* Safe-Infered-.-.-.-.+ Safe-Infered/0/0/0/0, Safe-Infered1111- Safe-Infered2222. Safe-Infered3333/ Safe-Infered44440 Safe-Infered565656561 Safe-Infered7777= Safe-Infered(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 ;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  2 Safe-Infered898989893 Safe-Infered:;:;:;:;4 Safe-Infered<=<=<=<=> Safe-Infered5 Safe-Infered>5    !"#$%&'()*+,-./0123456789:;<=>>>6 Safe-Infered?"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. ?@A8    !"#$%&'()*+,-./0123456789:;<=>?@A?@A?@A? Safe-Infered@ Safe-InferedBBB7 Safe-InferedBBABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~                   F J K M                           ! " # $ % & ' ' ( ) * + , - ./01234456784469:;<=>?@ABCDEFGHIJKLMNOPQRSTU V!W"X#Y$Z%[&\&]'^'_(`)a*b*c+d+e,f-g.h/i0j0k1l2m2n3o3p4q4r5s6/6t6u@vwxyz{|}~8889      !"#$%&'()*+,-./0123456789::;<=>?@ABCDEFGHIJKLMNOPQRSTUUVWXYZ[\]^_`abccdefghijklmnopqrstuvwxyz{|}~uv"      !"#$%&'()*+,-./01233456789:;<=>?@ABCDEFGHIJKLMNOPQRMSTUSVVWXXYYZ[Z\Z]Z^Z_Z`ZaZbZcZdZeZfZgZhZiZjZkZlZmZnZoZpZqZrZsZtZuZvZwZxZyZzZ{Z|Z}Z~ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZ                                         ::::::::::::::::::::::;<<<<<<<<<<<<<<<     2H !"#$%&'()*+,-./0123456789:;<=>?@AHBCDEFGRHIJKLMNOPQRSTTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~L  /==================>>>? derive-2.5.5Language.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.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 fromBangType 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 makeLazySet makeMonoid makeNFData dslNFDatamakeOrddslOrdmakeReadmakeRef makeSerial dslSerial makeSerialize dslSerializemakeSetmakeShow makeTypeablemakeUniplateDirectmakeUniplateTypeablecustom makeUpdate makeFoldable makeFoldableN makeFunctor makeFunctorNmakeTraversablemakeTraversableN derivationsderives deriveFromDec deriveMain $fPprPred $fPprKind$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 d_ctorArity d_ctorValue d_dataCtorsbase Data.DataData$fAritiesd_typehaskell-src-exts-1.11.1Language.Haskell.ExtsreadExtensionsparseFileContentsWithCommentsparseFileContentsWithModeparseFileContentsWithExtsparseFileContentsparseFileWithCommentsparseFileWithModeparseFileWithExts parseFileLanguage.Haskell.Exts.ParserparseStmtWithCommentsparseStmtWithMode parseStmtparseTypeWithCommentsparseTypeWithMode parseTypeparseDeclWithCommentsparseDeclWithMode parseDeclparsePatWithCommentsparsePatWithModeparsePatparseExpWithCommentsparseExpWithModeparseExpparseModuleWithCommentsparseModuleWithMode parseModule getTopPragmasparseWithComments parseWithModeparse ParseableLanguage.Haskell.Exts.Pretty prettyPrintprettyPrintWithModeprettyPrintStyleMode defaultMode PPOffsideRule PPSemiColonPPInLine PPNoLayoutPPLayoutIndent linePragmaslayoutspacing onsideIndent whereIndent letIndent caseIndentdoIndent classIndentPPHsModePretty Language.Haskell.Exts.ParseMonaddefaultParseModefromParseResultParseOk ParseFailed ParseResultfixitiesignoreLinePragmasignoreLanguagePragmas extensions parseFilename ParseModeLanguage.Haskell.Exts.Fixityinfix_infixl_infixr_ baseFixitiespreludeFixitiesFixity applyFixities AppFixityLanguage.Haskell.Exts.Build metaConPat metaFunctionnameBind patBindWherepatBind simpleFunsfungenNameswildcardnoBindsletStmtgenStmtqualStmtpParenpeListeListlistEaltGWaltcaseEletElamEdoEintPcharPstrPintEcharEstrEfunction pvarTuplevarTuplepTupletuplepAppappFuninfixApppvarqvaropsymnameLanguage.Haskell.Exts.Syntax tuple_tyconunboxed_singleton_tycon list_tycon fun_tycon unit_tycontuple_tycon_nameunboxed_singleton_tycon_namelist_tycon_namefun_tycon_nameunit_tycon_name ccall_name stdcall_namethreadsafe_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 SpecialConQualUnQualSpecialQNameIdentSymbolNameIPDupIPLinIPNameQVarOpQConOpQOpVarOpConOpOpVarNameConNameCNameModuleEVarEAbs EThingAll EThingWithEModuleContents ExportSpec importSpecsimportAs importPkg importSrcimportQualified importModule importLoc ImportDeclIVarIAbs IThingAll IThingWith ImportSpec AssocNone AssocLeft AssocRightAssocDerivingTypeDecl TypeFamDecl GDataDecl DataFamDecl TypeInsDecl DataInsDecl GDataInsDecl ClassDeclInstDecl DerivDecl InfixDecl DefaultDecl SpliceDeclTypeSigFunBindPatBindForImpForExpRulePragmaDeclDeprPragmaDeclWarnPragmaDecl InlineSigInlineConlikeSigSpecSig SpecInlineSigInstSig AnnPragmaDeclAnnTypeAnn ModuleAnn AnnotationDataTypeNewType DataOrNewBDeclsIPBindsBindsIPBindMatch QualConDeclConDecl InfixConDeclRecDeclGadtDeclClsDecl ClsDataFamClsTyFamClsTyDefInsDeclInsTypeInsDataInsGDataBangedTy UnBangedTy UnpackedTyBangType UnGuardedRhs GuardedRhssRhs GuardedRhsTyForallTyFunTyTupleTyListTyAppTyVarTyConTyParenTyInfixTyKindType KindedVar UnkindedVar TyVarBindKindStarKindBangKindFn KindParenKindVarKindFunDepContextClassAInfixAIParamEqualPAsstCharFracPrimIntPrimWord PrimFloat PrimDoublePrimChar PrimStringLiteralVarIPVarConInfixAppNegAppLambdaLetIfCaseDoMDoTuple TupleSectionParen LeftSection RightSection RecConstr RecUpdateEnumFrom EnumFromTo EnumFromThenEnumFromThenToListCompParComp ExpTypeSigVarQuoteTypQuote BracketExp SpliceExp QuasiQuoteXTagXETagXPcdataXExpTag XChildTag CorePragma SCCPragma GenPragmaProc LeftArrApp RightArrAppLeftArrHighAppRightArrHighAppExpXNameXDomNameXAttr ExpBracket PatBracket TypeBracket DeclBracketBracketIdSplice ParenSpliceSplice PlayRiskyPlaySafeSafetyStdCallCCallCallConvLanguagePragma OptionsPragmaAnnModulePragma ModulePragma AlwaysActive ActiveFrom ActiveUntil ActivationRuleRuleVar TypedRuleVarDeprTextWarnText WarningTextPVarPLitPNegPNPlusK PInfixAppPAppPTuplePListPParenPRecPAsPat PWildCardPIrrPat PatTypeSigPViewPatPRPatPXTagPXETagPXPcdataPXPatTagPXRPats PExplTypeArg PQuasiQuotePBangPatPatPXAttrRPStarRPStarGRPPlusRPPlusGRPOptRPOptGRPatOpRPOpRPEitherRPSeqRPGuardRPCAsRPAsRPParenRPPatRPat PFieldPat PFieldPunPFieldWildcardPatField Generator QualifierLetStmtRecStmtStmtQualStmt ThenTransThenByGroupBy GroupUsing GroupByUsing FieldUpdateFieldPun FieldWildcardAlt UnGuardedAlt GuardedAlts GuardedAltLanguage.Haskell.Exts.ExtensionclassifyExtensionknownExtensions glasgowExts impliesExtsOverlappingInstancesUndecidableInstancesIncoherentInstances RecursiveDoParallelListCompMultiParamTypeClassesNoMonomorphismRestrictionFunctionalDependenciesExplicitForall Rank2Types RankNTypesPolymorphicComponentsExistentialQuantificationScopedTypeVariablesImplicitParamsFlexibleContextsFlexibleInstancesEmptyDataDeclsCPPKindSignatures BangPatternsTypeSynonymInstancesTemplateHaskellForeignFunctionInterfaceArrowsGenericsNoImplicitPreludeNamedFieldPuns PatternGuardsGeneralizedNewtypeDerivingExtensibleRecordsRestrictedTypeSynonyms HereDocuments MagicHash TypeFamiliesStandaloneDeriving UnicodeSyntaxPatternSignaturesUnliftedFFITypesLiberalTypeSynonyms TypeOperatorsRecordWildCards RecordPunsDisambiguateRecordFieldsOverloadedStringsGADTs MonoPatBindsNoMonoPatBindsRelaxedPolyRecExtendedDefaultRules UnboxedTuplesDeriveDataTypeableConstrainedClassMethodsPackageImportsImpredicativeTypesNewQualifiedOperatorsPostfixOperators QuasiQuotesTransformListComp ViewPatterns XmlSyntaxRegularPatterns TupleSectionsUnknownExtension ExtensionLanguage.Haskell.Exts.CommentsComment&Language.Haskell.Exts.Annotated.SyntaxBoxedUnboxedGHCHUGSNHC98YHCHADDOCK UnknownToolToolLanguage.Haskell.Exts.SrcLoc srcColumnsrcLine srcFilenameSrcLocpretty-1.1.1.0Text.PrettyPrint.HughesPJMode OneLineModeLeftMode ZigZagModePageModeStylemode lineLengthribbonsPerLinestyle$fConvertKindKind$fConvertTyVarBindTyVarBndr$fConvertAsstPred$fConvertPredAsst$fConvertKindKind0$fConvertTyVarBndrTyVarBind$fConvertGuardedAlt(,)$fConvertGuardedAltsBody$fConvertTyVarBindName$fConvertFieldUpdate(,)$fConvertQualStmtStmt$fConvertStmtStmt$fConvertAltMatch$fConvertQOpExp$fConvertPatField(,)$fConvertQNameName$fConvertLiteralLit$fConvertPatPat$fConvertBinds[]$fConvertGuardedRhs(,)$fConvertExpExp$fConvertRhsBody$fConvertMatchClause$fConvertNameName$fConvertTypeType$fConvertAsstType$fConvert(,)[]$fConvertBangType(,)$fConvertConDeclCon$fConvertQualConDeclCon$fConvertDeclDec$fConvertTypeAsst$fConvertTypeType0$fConvert(,)BangType$fConvertConConDecl$fConvertConQualConDecl$fConvertNameQName$fConvertNameName0$fConvertNameTyVarBind$fConvertDecDecl $fConvert[][]PragmaTestExampleSrcsrcName srcImport srcExamplesrcTest srcCustom srcImportStdnullSrcreadHSEasPragmareadSrcgeneratedStart generatedStopwriteGenerated readFile'writeBinaryFilereprepsgenerateFlagGenerate PreprocessorNoOptsDeriveAppendModuImportHelpVersionflagInfogetFlagsaddFlagsreturnQbindQ sequenceQliftnewNamemkName mkNameG_v mkNameG_d mkNameG_tcmkNameL liftStringClauseQDecFieldExpFieldPatPred TyVarBndr defaultFixity maxPrecedenceunboxedTupleTypeNameunboxedTupleDataName tupleTypeName tupleDataName showName'showNamemkNameU nameModulenameBase occString mkOccName pkgString mkPkgName modString mkModNameaddDependentFilerunIOlocation isInstancereifyInstancesreifylookupValueNamelookupTypeNamerecoverreportrunQqAddDependentFileqRunIO qLocationqReifyInstancesqReify qLookupNameqRecoverqReportqNewNameQuasiLiftNameSNameQNameUNameLNameG NameFlavour TcClsName NameSpaceUniqAloneAppliedInfixNameIsloc_end loc_start loc_module loc_package loc_filenameLocCharPosClassIClassOpITyConIFamilyI PrimTyConIDataConIVarITyVarIInfoInfixLInfixRInfixNFixityDirectionCharLStringLIntegerL RationalLIntPrimL WordPrimL FloatPrimL DoublePrimL StringPrimLLitPVarPTupP UnboxedTupPConPInfixPUInfixPParensPTildePBangPAsPWildPRecPListPSigPViewPVarEConELitEAppEInfixEUInfixEParensELamETupE UnboxedTupECondELetECaseEDoECompE ArithSeqEListESigERecConERecUpdEGuardedBNormalBBodyNormalGPatGGuardBindSLetSNoBindSParSFromR FromThenRFromToR FromThenToRRangeFunDValDDataDNewtypeDTySynDClassD InstanceDSigDForeignDPragmaDFamilyD DataInstD NewtypeInstD TySynInstDTypeFamDataFam FamFlavourImportFExportFForeignCallconvUnsafeSafe InterruptibleInlineP SpecialiseP InlineSpecCxtClassPIsStrict NotStrictUnpackedStrictNormalCRecCInfixCForallC StrictType VarStrictTypeForallTVarTConTTupleT UnboxedTupleTArrowTListTAppTSigTPlainTVKindedTVStarKArrowK$Language.Haskell.TH.Syntax.InternalsModNamePkgNameOccName $fShowAns TraveralType traversalArg traversalCo traversalName traversalIdtraversalDirect traversalFunc traversalPlus traverseArrow traverseTuple traverseCtor traverseFunctraversalDerivation1traversalInstance1traversalInstancederiveTraversaldefaultTraversalType wantDerive performDerive writeDerivetest