?5/oQ      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLM N O P  Safe-Inferred  Safe-Inferred>QRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~ non-portable experimentalgenerics@haskell.org Safe-InferredGReturn the name of all the constructors of the type of the given term.  Safe-Inferred  Safe-Inferred?The list of values in the subrange defined by a bounding pair. -The position of a subscript in the subrange. Returns / the given subscript lies in the range defined  the bounding pair. GInterleave elements from two lists. Similar to (++), but swap left and 1 right arguments on every recursive application. From Mark Jones' talk at AFP2008 FDiagonalization of nested lists. Ensure that some elements from every 6 sublist will be included. Handles infinite sublists. From Mark Jones' talk at AFP2008         Safe-Inferred None non-portable experimentalgenerics@haskell.orgNone8 !"#$%&'()*+, !"#$%&'()*+,&'()*+, !"#$%, !"#$%&'()*+, Safe-Inferred&-./0123456789:;<=>?@ABCDEF-./0123456789:;<=>?@ABCDEF-./0123456789:;<=>?@ABCDEF-./0123456789:;<=>?@ABCDEF Safe-InferredGHIJKL     GHIJKLGHIJKL GHIJKL       non-portable experimentalgenerics@haskell.orgNone IGiven the names of a generic class, a type to instantiate, a function in J the class and the default implementation, generates the code for a basic  generic instance. @Given the type and the name (as string) for the type to derive,  generate the Data instance, the T instances, the U  instances, and the Representable0 instance. M@Given the type and the name (as string) for the type to derive,  generate the Data instance, the T instances, and the U  instances. N?Given a datatype name, derive a datatype and instance of class S. O-Given a datatype name, derive datatypes and  instances of class T. P?Given a datatype name, derive datatypes and instances of class U. DGiven the type and the name (as string) for the Representable0 type ! synonym to derive, generate the Representable0 instance. Derive only the Rep0 type synonym. Not needed if   is used. BVariant of foldr1 which returns a special element for empty lists )MNOP !"#$%&'()*+,-./012345MNOPMNOP)MNOP !"#$%&'()*+,-./012345 NonekQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~  !"#$%&'()*+,6  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXY 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^_{^_f^_|^_g^_}^_h^_~^_i^_^_j^_^_^_l^_^_^_^_^_^_^_^_^_^_^_^_^_^_^_^_^_^_^_^_^_^_            ! " # $ % & ' ( ) * + , - . / 0 1 2 3 4 5 6 7 8 9 : ; < = > ?@generic-deriving-1.4.0Generics.Deriving.ConNamesGenerics.Deriving.EqGenerics.Deriving.EnumGenerics.Deriving.FunctorGenerics.Deriving.ShowGenerics.Deriving.UniplateGenerics.Deriving.FoldableGenerics.Deriving.TraversableGenerics.Deriving.THGenerics.Deriving.InstancesGenerics.Deriving.BaseGenerics.DerivingConNames gconNamesconNamesGEqgeqGIxrangeindexinRangeGEnumgenum genumDefault toEnumDefaultfromEnumDefault rangeDefault indexDefaultinRangeDefaultGFunctorgmap gmapdefaultGShow gshowsPrecgshowsgshowgshowsPrecdefaultUniplatechildrencontextdescenddescendM transform transformMchildrendefaultcontextdefaultdescenddefaultdescendMdefaulttransformdefaulttransformMdefaultuniplateuniverserewriterewriteMcontextsholespara GFoldablegfoldMapgfoldgfoldrgfoldr'gfoldlgfoldl'gfoldr1gfoldl1gfoldMapdefaultgtoListgconcat gconcatMapgandgorganygallgsumgproductgmaximum gmaximumBygminimum gminimumBygelemgnotElemgfind GTraversable gtraverse gsequenceAgmapM gsequencegtraversedefault deriveMeta deriveDataderiveConstructorsderiveSelectorsbase GHC.GenericsGenericGeneric1Datatype ConstructorSelectorV1U1Par1Rec1K1M1:+::*::.:RPDCSRec0Par0D1C1S1 NoSelectorRepRep1precunPar1unRec1unK1unM1L1R1unComp1Comp1 moduleName datatypeNameselName conIsRecord conFixityconNameNoArityArityPrefixInfixFixityLeftAssociativeRightAssociativeNotAssociative Associativitytofromto1from1 $fConNamesM1 $fConNamesM10 $fConNames:+:GEq'geq'$fGEq[] $fGEqMaybe $fGEqFloat$fGEqInt $fGEqChar $fGEq':*: $fGEq':+:$fGEq'M1$fGEq'K1$fGEq'U1ghc-prim GHC.TypesTrue|||diagEnum'enum'skewcombine findIndex$fGIxInt$fGIx[] $fGIxMaybe $fGEnumInt $fGEnum[] $fGEnumMaybe $fEnum':*: $fEnum':+: $fEnum'M1 $fEnum'K1 $fEnum'U1 GFunctor'gmap' $fGFunctor[]$fGFunctorMaybe$fGFunctor':.:$fGFunctor':*:$fGFunctor':+: $fGFunctor'M1$fGFunctor'Rec1 $fGFunctor'K1$fGFunctor'Par1 $fGFunctor'U1GShow' gshowsPrec' isNullaryTypeInfPrefTupRecappPrec intersperse $fGShow[] $fGShowBool $fGShow[]0 $fGShowFloat $fGShowInt $fGShowChar $fGShowMaybe $fGShow':*: $fGShow':+: $fGShow'M1 $fGShow'M10 $fGShow'M11 $fGShow'K1 $fGShow'U1Context'context' Uniplate' children'descend' descendM' transform' transformM' $fUniplate[]$fUniplateEither$fUniplateMaybe$fUniplate(,,,,,,)$fUniplate(,,,,,)$fUniplate(,,,,)$fUniplate(,,,)$fUniplate(,,) $fUniplate(,) $fUniplate() $fUniplateInt$fUniplateFloat$fUniplateDouble$fUniplateChar$fUniplateBool$fContext':*:b$fContext':*:a$fContext':+:b $fContext'M1b $fContext'K1b $fContext'K1a $fContext'U1b$fUniplate':*:b$fUniplate':+:b$fUniplate'M1b$fUniplate'K1b$fUniplate'K1a$fUniplate'U1a GFoldable' gfoldMap' $fGFoldable[]$fGFoldableMaybe$fGFoldable':.:$fGFoldable':*:$fGFoldable':+:$fGFoldable'M1$fGFoldable'Rec1$fGFoldable'K1$fGFoldable'Par1$fGFoldable'U1 GTraversable' gtraverse'$fGTraversable[]$fGTraversableMaybe$fGTraversable':.:$fGTraversable':*:$fGTraversable':+:$fGTraversable'M1$fGTraversable'Rec1$fGTraversable'K1$fGTraversable'Par1$fGTraversable'U1 simplInstance deriveAllderiveRepresentable0 deriveRep0foldr1' deriveInst dataInstanceconstrInstanceselectInstance typeVariablestyVarBndrToNamestripRecordNamesgenName genRepName mkDataData mkConstrData mkSelectDatamkDataInstancemkConstrInstancemkConstrInstanceWithmkSelectInstancerep0Typerep0ConrepField repField'mkFrommkTofromCon fromFieldtoContoFieldfieldlrPlrEtrd$fLiftAssociativity $fLiftFixity