Data.Semigroup.Generic
gmappend
gmempty
data GenericSemigroupMonoid a
class GSemigroup f
class GMonoid f