#      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~ Safe-InferedDThe first part is the name, the second - a list of type parameters, J the third - a list of constructors. For each constructor we have a name , and a list describing constructor fields. Apply  to the name. NoneNone>  !"#$%&'()*+,-./0123456789:;<=>8  !"#$%&'()*+,-./0123456789:;<=>8 !"#$()* >23456789:;<=./01- ,+%&'+   !"#$%&'()*+,-./0123456789:;<=>None ?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\?A@HIJKEFGBDCQRSTMNOPL[\ZXYUVW?A@BDCEFGHIJKLMNOPQRSTUVWXYZ[\None4]^_`abcdefghijklmnopqrstuvwxyz{|}~.]^_`abcdefghijklmnopqrstuvwxyz{|}~.]`_^bcdefghijklmonpqrstuvwxyz{|}~a-]`_^abcdefghijklmnopqrstuvwxyz{|}~None+&&&      !!"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGGHIIJKLMMNOPPQRSTUVWXYZ[\]^_``abcdefghijklmSTUnopqrstuvwxyz{|}~\cfghijklSTUnopqrstuvwxy GTALib-0.0.4GTA.Util.TypeInfo)GTA.Util.GenericSemiringStructureTemplateGTA.CoreGTA.Data.BinTreeGTA.Data.JoinListGTA.Data.ConsListTypeInfotypeInfo simpleNamegenAlgebraDeclgenMapFunctionsDeclgenInstanceDecl genAllDeclRevOrd AddIdentityIdentityGenericSemiringStructure freeSemiringliftedSemiring pairSemiringshom makeAlgebra pairAlgebra freeAlgebrahomfoldingAlgebraGenericSemiringmonoidalgebraCommutativeMonoidoplusidentityBagitemsbag>==>=>>=<filterBy aggregateBy transformBy>##>#><.>result sumproductBy addIdentity maxMonoSumBymaxMonoSumsolutionXBy maxMonoSumKBymaxMonoSumsolutionXKBymaxsumBy maxsumKBymaxsumsolutionXKBymaxsumsolutionXBymaxsumsolutionBymaxsumsolutionKBy maxprodBy maxprodKBymaxprodsolutionXKBymaxprodsolutionXBymaxprodsolutionBymaxprodsolutionKByrevOrdLVTreeLeafLVNodeLVBinTreeBinLeafBinNode LVTreeMapFsleafLVF LVTreeAlgebranodeLVleafLVlvtrees BinTreeMapFsbinNodeFbinLeafFBinTreeAlgebrabinNodebinLeafcountmaxsummaxsumsolution assignTrans assignTreesselectssubtreeSelectsWithRootsubtreeSelectsJoinListNilSingleTimesSemiringJoinListAlgebratimessingleniljoinize dejoinizesegsinitstailssubsassigns assignsBypathsmapJ maxsumWith maxsumKWithmaxsumsolutionXKWithmaxsumsolutionXWithmaxsumsolutionWithmaxsumsolutionKWith maxprodWith maxprodKWithmaxprodsolutionXKWithmaxprodsolutionXWithmaxprodsolutionWithmaxprodsolutionKWithsegsPinitsPtailsPsubsPassignsP assignsByP crossConcatbagOfSingletonbagOfNilemptyBagbagUnionConsListCons ConsSemiringConsListAlgebraconsconsize deconsizefoldr'mapC crossConstemplate-haskellLanguage.Haskell.TH.SyntaxnameBase $fOrdRevOrd $fNumRevOrd$fNFDataAddIdentity$fOrdAddIdentity$fEqBag $fNFDataBag8$fGenericSemiringStructureLVTreeAlgebraLVTreeLVTreeMapFs;$fGenericSemiringStructureBinTreeAlgebraBinTreeBinTreeMapFs $fOrdJoinList $fEqJoinList$fReadJoinList$fShowJoinList$fNFDataJoinList>$fGenericSemiringStructureJoinListAlgebraJoinListJoinListMapFs $fOrdConsList $fEqConsList$fReadConsList$fShowConsList>$fGenericSemiringStructureConsListAlgebraConsListConsListMapFs