[started towards bitsets documentation ekmett@gmail.com**20090327081628] { hunk ./dist/doc/html/monoids/Data-Group-Sugar.html 22 ->monoids-0.1.1: Lots of Monoidsmonoids-0.1.2: Lots of Monoidsmonoids-0.1.1: Lots of Monoidsmonoids-0.1.2: Lots of Monoids (Number (FromNummonoids-0.1.1: Lots of Monoidsmonoids-0.1.2: Lots of Monoidsmonoids-0.1.1: Lots of Monoidsmonoids-0.1.2: Lots of Monoidsmonoids-0.1.1: Lots of Monoidsmonoids-0.1.2: Lots of Monoidsmonoids-0.1.1: Lots of Monoidsmonoids-0.1.2: Lots of Monoidsmonoids-0.1.1: Lots of Monoidsmonoids-0.1.2: Lots of Monoidsmonoids-0.1.1: Lots of Monoidsmonoids-0.1.2: Lots of Monoidsmonoids-0.1.1: Lots of Monoidsmonoids-0.1.2: Lots of Monoidsmonoids-0.1.1: Lots of Monoidsmonoids-0.1.2: Lots of Monoidsmonoids-0.1.1: Lots of Monoidsmonoids-0.1.2: Lots of Monoidsmonoids-0.1.1: Lots of Monoidsmonoids-0.1.2: Lots of Monoidsmonoids-0.1.1: Lots of Monoidsmonoids-0.1.2: Lots of Monoidsmonoids-0.1.1: Lots of Monoidsmonoids-0.1.2: Lots of Monoidsmonoids-0.1.1: Lots of Monoidsmonoids-0.1.2: Lots of Monoidsmonoids-0.1.1: Lots of Monoidsmonoids-0.1.2: Lots of Monoidsmonoids-0.1.1: Lots of Monoidsmonoids-0.1.2: Lots of Monoidsmonoids-0.1.1: Lots of Monoidsmonoids-0.1.2: Lots of Monoidsmonoids-0.1.1: Lots of Monoidsmonoids-0.1.2: Lots of Monoidsmonoids-0.1.1: Lots of Monoidsmonoids-0.1.2: Lots of Monoidsmonoids-0.1.1: Lots of Monoidsmonoids-0.1.2: Lots of Monoidsmonoids-0.1.1: Lots of Monoidsmonoids-0.1.2: Lots of Monoidsmonoids-0.1.1: Lots of Monoidsmonoids-0.1.2: Lots of Monoidsmonoids-0.1.1: Lots of Monoidsmonoids-0.1.2: Lots of Monoidsmonoids-0.1.1: Lots of Monoidsmonoids-0.1.2: Lots of Monoidsmonoids-0.1.1: Lots of Monoidsmonoids-0.1.2: Lots of Monoidsmonoids-0.1.1: Lots of Monoidsmonoids-0.1.2: Lots of Monoidsmonoids-0.1.1: Lots of Monoidsmonoids-0.1.2: Lots of Monoidsmonoids-0.1.1: Lots of Monoidsmonoids-0.1.2: Lots of Monoidsmonoids-0.1.1: Lots of Monoidsmonoids-0.1.2: Lots of Monoidsmonoids-0.1.1: Lots of Monoidsmonoids-0.1.2: Lots of Monoidsmonoids-0.1.1: Lots of Monoidsmonoids-0.1.2: Lots of Monoids (Number (FromNummonoids-0.1.1: Lots of Monoidsmonoids-0.1.2: Lots of Monoidsmonoids-0.1.1: Lots of Monoidsmonoids-0.1.2: Lots of Monoidsmonoids-0.1.1: Lots of Monoidsmonoids-0.1.2: Lots of Monoidsmonoids-0.1.1: Lots of Monoidsmonoids-0.1.2: Lots of Monoidsmonoids-0.1.1: Lots of Monoidsmonoids-0.1.2: Lots of Monoids Integer (Number Integer (FromNum Integer (Number Integer (FromNummonoids-0.1.1: Lots of Monoidsmonoids-0.1.2: Lots of Monoidsmonoids-0.1.1: Lots of Monoidsmonoids-0.1.2: Lots of Monoidsmonoids-0.1.1: Lots of Monoidsmonoids-0.1.2: Lots of Monoidsmonoids-0.1.1: Lots of Monoidsmonoids-0.1.2: Lots of Monoidsmonoids-0.1.1: Lots of Monoidsmonoids-0.1.2: Lots of Monoids (Number (FromNummonoids-0.1.1: Lots of Monoids (Index)monoids-0.1.2: Lots of Monoids (Index)monoids-0.1.1: Lots of Monoidsmonoids-0.1.2: Lots of MonoidsData.Monoid.Reducer, Data.Monoid.Reducer.Char, Data.Monoid.Reducer.With, Data.Monoid.Unit, Data.Monoid.Monad.Writer.Strict, Data.Monoid.Monad.Writer.Lazy, Data.Monoid.Monad.ST.Strict, Data.Monoid.Monad.STM, Data.Monoid.Monad.ST.Lazy, Data.Monoid.Monad.State.Strict, Data.Monoid.Monad.State.Lazy, Data.Monoid.Monad.RWS.Strict, Data.Monoid.Monad.RWS.Lazy, Data.Monoid.Monad.Reader, Data.Monoid.Monad.IO, Data.Monoid.Monad.Identity, Data.Monoid.Monad.Either, Data.Monoid.Monad.Cont, Data.Monoid.Monad, Data.Monoid.Lexical.UTF8.Decoder, Data.Monoid.Lexical.SourcePosition, Data.Monoid.Generator, Data.Monoid.Lexical.Words, Data.Monoid.Reducer.Sugar, Data.Monoid.Applicative, Data.Monoid.Generator.Combinators, Data.Monoid.Additive, Data.Monoid.Additive.Sugar, Data.Monoid.Multiplicative, Data.Monoid.Multiplicative.Sugar, Data.Monoid.Multiplicative.Transformer, Data.Seminearring, Data.Seminearring.Sugar, Data.Group, Data.Group.Sugar, Data.Ring, Data.Ring.Bool, Data.Ring.Number, Data.Ring.SugarData.Monoid.Reducer, Data.Monoid.Reducer.Char, Data.Monoid.Reducer.With, Data.Monoid.Unit, Data.Monoid.Monad.Writer.Strict, Data.Monoid.Monad.Writer.Lazy, Data.Monoid.Monad.ST.Strict, Data.Monoid.Monad.STM, Data.Monoid.Monad.ST.Lazy, Data.Monoid.Monad.State.Strict, Data.Monoid.Monad.State.Lazy, Data.Monoid.Monad.RWS.Strict, Data.Monoid.Monad.RWS.Lazy, Data.Monoid.Monad.Reader, Data.Monoid.Monad.IO, Data.Monoid.Monad.Identity, Data.Monoid.Monad.Either, Data.Monoid.Monad.Cont, Data.Monoid.Monad, Data.Monoid.Lexical.UTF8.Decoder, Data.Monoid.Lexical.SourcePosition, Data.Monoid.Generator, Data.Monoid.Lexical.Words, Data.Monoid.Reducer.Sugar, Data.Monoid.Applicative, Data.Monoid.Generator.Combinators, Data.Monoid.Additive, Data.Monoid.Additive.Sugar, Data.Monoid.Multiplicative, Data.Monoid.Multiplicative.Sugar, Data.Monoid.Multiplicative.Transformer, Data.Seminearring, Data.Seminearring.Sugar, Data.Group, Data.Group.Sugar, Data.Ring, Data.Ring.FromNum, Data.Ring.SugarData.Monoid.Reducer, Data.Monoid.Reducer.Char, Data.Monoid.Reducer.With, Data.Monoid.Unit, Data.Monoid.Monad.Writer.Strict, Data.Monoid.Monad.Writer.Lazy, Data.Monoid.Monad.ST.Strict, Data.Monoid.Monad.STM, Data.Monoid.Monad.ST.Lazy, Data.Monoid.Monad.State.Strict, Data.Monoid.Monad.State.Lazy, Data.Monoid.Monad.RWS.Strict, Data.Monoid.Monad.RWS.Lazy, Data.Monoid.Monad.Reader, Data.Monoid.Monad.IO, Data.Monoid.Monad.Identity, Data.Monoid.Monad.Either, Data.Monoid.Monad.Cont, Data.Monoid.Monad, Data.Monoid.Lexical.UTF8.Decoder, Data.Monoid.Lexical.SourcePosition, Data.Monoid.Generator, Data.Monoid.Lexical.Words, Data.Monoid.Reducer.Sugar, Data.Monoid.Applicative, Data.Monoid.Generator.Combinators, Data.Monoid.Additive, Data.Monoid.Additive.Sugar, Data.Monoid.Multiplicative, Data.Monoid.Multiplicative.Sugar, Data.Monoid.Multiplicative.Transformer, Data.Seminearring, Data.Seminearring.Sugar, Data.Group, Data.Group.Sugar, Data.Ring, Data.Ring.Bool, Data.Ring.Number, Data.Ring.SugarData.Monoid.Reducer, Data.Monoid.Reducer.Char, Data.Monoid.Reducer.With, Data.Monoid.Unit, Data.Monoid.Monad.Writer.Strict, Data.Monoid.Monad.Writer.Lazy, Data.Monoid.Monad.ST.Strict, Data.Monoid.Monad.STM, Data.Monoid.Monad.ST.Lazy, Data.Monoid.Monad.State.Strict, Data.Monoid.Monad.State.Lazy, Data.Monoid.Monad.RWS.Strict, Data.Monoid.Monad.RWS.Lazy, Data.Monoid.Monad.Reader, Data.Monoid.Monad.IO, Data.Monoid.Monad.Identity, Data.Monoid.Monad.Either, Data.Monoid.Monad.Cont, Data.Monoid.Monad, Data.Monoid.Lexical.UTF8.Decoder, Data.Monoid.Lexical.SourcePosition, Data.Monoid.Generator, Data.Monoid.Lexical.Words, Data.Monoid.Reducer.Sugar, Data.Monoid.Applicative, Data.Monoid.Generator.Combinators, Data.Monoid.Additive, Data.Monoid.Additive.Sugar, Data.Monoid.Multiplicative, Data.Monoid.Multiplicative.Sugar, Data.Monoid.Multiplicative.Transformer, Data.Seminearring, Data.Seminearring.Sugar, Data.Group, Data.Group.Sugar, Data.Ring, Data.Ring.FromNum, Data.Ring.SugarData.Monoid.Reducer, Data.Monoid.Reducer.Char, Data.Monoid.Reducer.With, Data.Monoid.Unit, Data.Monoid.Monad.Writer.Strict, Data.Monoid.Monad.Writer.Lazy, Data.Monoid.Monad.ST.Strict, Data.Monoid.Monad.STM, Data.Monoid.Monad.ST.Lazy, Data.Monoid.Monad.State.Strict, Data.Monoid.Monad.State.Lazy, Data.Monoid.Monad.RWS.Strict, Data.Monoid.Monad.RWS.Lazy, Data.Monoid.Monad.Reader, Data.Monoid.Monad.IO, Data.Monoid.Monad.Identity, Data.Monoid.Monad.Either, Data.Monoid.Monad.Cont, Data.Monoid.Monad, Data.Monoid.Lexical.UTF8.Decoder, Data.Monoid.Lexical.SourcePosition, Data.Monoid.Generator, Data.Monoid.Lexical.Words, Data.Monoid.Reducer.Sugar, Data.Monoid.Applicative, Data.Monoid.Generator.Combinators, Data.Monoid.Additive, Data.Monoid.Additive.Sugar, Data.Monoid.Multiplicative, Data.Monoid.Multiplicative.Sugar, Data.Monoid.Multiplicative.Transformer, Data.Seminearring, Data.Seminearring.Sugar, Data.Group, Data.Group.Sugar, Data.Ring, Data.Ring.Bool, Data.Ring.Number, Data.Ring.SugarData.Monoid.Reducer, Data.Monoid.Reducer.Char, Data.Monoid.Reducer.With, Data.Monoid.Unit, Data.Monoid.Monad.Writer.Strict, Data.Monoid.Monad.Writer.Lazy, Data.Monoid.Monad.ST.Strict, Data.Monoid.Monad.STM, Data.Monoid.Monad.ST.Lazy, Data.Monoid.Monad.State.Strict, Data.Monoid.Monad.State.Lazy, Data.Monoid.Monad.RWS.Strict, Data.Monoid.Monad.RWS.Lazy, Data.Monoid.Monad.Reader, Data.Monoid.Monad.IO, Data.Monoid.Monad.Identity, Data.Monoid.Monad.Either, Data.Monoid.Monad.Cont, Data.Monoid.Monad, Data.Monoid.Lexical.UTF8.Decoder, Data.Monoid.Lexical.SourcePosition, Data.Monoid.Generator, Data.Monoid.Lexical.Words, Data.Monoid.Reducer.Sugar, Data.Monoid.Applicative, Data.Monoid.Generator.Combinators, Data.Monoid.Additive, Data.Monoid.Additive.Sugar, Data.Monoid.Multiplicative, Data.Monoid.Multiplicative.Sugar, Data.Monoid.Multiplicative.Transformer, Data.Seminearring, Data.Seminearring.Sugar, Data.Group, Data.Group.Sugar, Data.Ring, Data.Ring.FromNum, Data.Ring.SugarData.Monoid.Reducer, Data.Monoid.Reducer.Char, Data.Monoid.Reducer.With, Data.Monoid.Unit, Data.Monoid.Monad.Writer.Strict, Data.Monoid.Monad.Writer.Lazy, Data.Monoid.Monad.ST.Strict, Data.Monoid.Monad.STM, Data.Monoid.Monad.ST.Lazy, Data.Monoid.Monad.State.Strict, Data.Monoid.Monad.State.Lazy, Data.Monoid.Monad.RWS.Strict, Data.Monoid.Monad.RWS.Lazy, Data.Monoid.Monad.Reader, Data.Monoid.Monad.IO, Data.Monoid.Monad.Identity, Data.Monoid.Monad.Either, Data.Monoid.Monad.Cont, Data.Monoid.Monad, Data.Monoid.Lexical.UTF8.Decoder, Data.Monoid.Lexical.SourcePosition, Data.Monoid.Generator, Data.Monoid.Lexical.Words, Data.Monoid.Reducer.Sugar, Data.Monoid.Applicative, Data.Monoid.Generator.Combinators, Data.Monoid.Additive, Data.Monoid.Additive.Sugar, Data.Monoid.Multiplicative, Data.Monoid.Multiplicative.Sugar, Data.Monoid.Multiplicative.Transformer, Data.Seminearring, Data.Seminearring.Sugar, Data.Group, Data.Group.Sugar, Data.Ring, Data.Ring.Bool, Data.Ring.Number, Data.Ring.SugarData.Monoid.Reducer, Data.Monoid.Reducer.Char, Data.Monoid.Reducer.With, Data.Monoid.Unit, Data.Monoid.Monad.Writer.Strict, Data.Monoid.Monad.Writer.Lazy, Data.Monoid.Monad.ST.Strict, Data.Monoid.Monad.STM, Data.Monoid.Monad.ST.Lazy, Data.Monoid.Monad.State.Strict, Data.Monoid.Monad.State.Lazy, Data.Monoid.Monad.RWS.Strict, Data.Monoid.Monad.RWS.Lazy, Data.Monoid.Monad.Reader, Data.Monoid.Monad.IO, Data.Monoid.Monad.Identity, Data.Monoid.Monad.Either, Data.Monoid.Monad.Cont, Data.Monoid.Monad, Data.Monoid.Lexical.UTF8.Decoder, Data.Monoid.Lexical.SourcePosition, Data.Monoid.Generator, Data.Monoid.Lexical.Words, Data.Monoid.Reducer.Sugar, Data.Monoid.Applicative, Data.Monoid.Generator.Combinators, Data.Monoid.Additive, Data.Monoid.Additive.Sugar, Data.Monoid.Multiplicative, Data.Monoid.Multiplicative.Sugar, Data.Monoid.Multiplicative.Transformer, Data.Seminearring, Data.Seminearring.Sugar, Data.Group, Data.Group.Sugar, Data.Ring, Data.Ring.FromNum, Data.Ring.SugarData.Monoid.Reducer, Data.Monoid.Reducer.Char, Data.Monoid.Reducer.With, Data.Monoid.Unit, Data.Monoid.Monad.Writer.Strict, Data.Monoid.Monad.Writer.Lazy, Data.Monoid.Monad.ST.Strict, Data.Monoid.Monad.STM, Data.Monoid.Monad.ST.Lazy, Data.Monoid.Monad.State.Strict, Data.Monoid.Monad.State.Lazy, Data.Monoid.Monad.RWS.Strict, Data.Monoid.Monad.RWS.Lazy, Data.Monoid.Monad.Reader, Data.Monoid.Monad.IO, Data.Monoid.Monad.Identity, Data.Monoid.Monad.Either, Data.Monoid.Monad.Cont, Data.Monoid.Monad, Data.Monoid.Lexical.UTF8.Decoder, Data.Monoid.Lexical.SourcePosition, Data.Monoid.Generator, Data.Monoid.Lexical.Words, Data.Monoid.Reducer.Sugar, Data.Monoid.Applicative, Data.Monoid.Generator.Combinators, Data.Monoid.Additive, Data.Monoid.Additive.Sugar, Data.Monoid.Multiplicative, Data.Monoid.Multiplicative.Sugar, Data.Monoid.Multiplicative.Transformer, Data.Seminearring, Data.Seminearring.Sugar, Data.Group, Data.Group.Sugar, Data.Ring, Data.Ring.Bool, Data.Ring.Number, Data.Ring.SugarData.Monoid.Reducer, Data.Monoid.Reducer.Char, Data.Monoid.Reducer.With, Data.Monoid.Unit, Data.Monoid.Monad.Writer.Strict, Data.Monoid.Monad.Writer.Lazy, Data.Monoid.Monad.ST.Strict, Data.Monoid.Monad.STM, Data.Monoid.Monad.ST.Lazy, Data.Monoid.Monad.State.Strict, Data.Monoid.Monad.State.Lazy, Data.Monoid.Monad.RWS.Strict, Data.Monoid.Monad.RWS.Lazy, Data.Monoid.Monad.Reader, Data.Monoid.Monad.IO, Data.Monoid.Monad.Identity, Data.Monoid.Monad.Either, Data.Monoid.Monad.Cont, Data.Monoid.Monad, Data.Monoid.Lexical.UTF8.Decoder, Data.Monoid.Lexical.SourcePosition, Data.Monoid.Generator, Data.Monoid.Lexical.Words, Data.Monoid.Reducer.Sugar, Data.Monoid.Applicative, Data.Monoid.Generator.Combinators, Data.Monoid.Additive, Data.Monoid.Additive.Sugar, Data.Monoid.Multiplicative, Data.Monoid.Multiplicative.Sugar, Data.Monoid.Multiplicative.Transformer, Data.Seminearring, Data.Seminearring.Sugar, Data.Group, Data.Group.Sugar, Data.Ring, Data.Ring.FromNum, Data.Ring.SugarData.Monoid.Reducer, Data.Monoid.Reducer.Char, Data.Monoid.Reducer.With, Data.Monoid.Unit, Data.Monoid.Monad.Writer.Strict, Data.Monoid.Monad.Writer.Lazy, Data.Monoid.Monad.ST.Strict, Data.Monoid.Monad.STM, Data.Monoid.Monad.ST.Lazy, Data.Monoid.Monad.State.Strict, Data.Monoid.Monad.State.Lazy, Data.Monoid.Monad.RWS.Strict, Data.Monoid.Monad.RWS.Lazy, Data.Monoid.Monad.Reader, Data.Monoid.Monad.IO, Data.Monoid.Monad.Identity, Data.Monoid.Monad.Either, Data.Monoid.Monad.Cont, Data.Monoid.Monad, Data.Monoid.Lexical.UTF8.Decoder, Data.Monoid.Lexical.SourcePosition, Data.Monoid.Generator, Data.Monoid.Lexical.Words, Data.Monoid.Reducer.Sugar, Data.Monoid.Applicative, Data.Monoid.Generator.Combinators, Data.Monoid.Additive, Data.Monoid.Additive.Sugar, Data.Monoid.Multiplicative, Data.Monoid.Multiplicative.Sugar, Data.Monoid.Multiplicative.Transformer, Data.Seminearring, Data.Seminearring.Sugar, Data.Group, Data.Group.Sugar, Data.Ring, Data.Ring.Bool, Data.Ring.Number, Data.Ring.SugarData.Monoid.Reducer, Data.Monoid.Reducer.Char, Data.Monoid.Reducer.With, Data.Monoid.Unit, Data.Monoid.Monad.Writer.Strict, Data.Monoid.Monad.Writer.Lazy, Data.Monoid.Monad.ST.Strict, Data.Monoid.Monad.STM, Data.Monoid.Monad.ST.Lazy, Data.Monoid.Monad.State.Strict, Data.Monoid.Monad.State.Lazy, Data.Monoid.Monad.RWS.Strict, Data.Monoid.Monad.RWS.Lazy, Data.Monoid.Monad.Reader, Data.Monoid.Monad.IO, Data.Monoid.Monad.Identity, Data.Monoid.Monad.Either, Data.Monoid.Monad.Cont, Data.Monoid.Monad, Data.Monoid.Lexical.UTF8.Decoder, Data.Monoid.Lexical.SourcePosition, Data.Monoid.Generator, Data.Monoid.Lexical.Words, Data.Monoid.Reducer.Sugar, Data.Monoid.Applicative, Data.Monoid.Generator.Combinators, Data.Monoid.Additive, Data.Monoid.Additive.Sugar, Data.Monoid.Multiplicative, Data.Monoid.Multiplicative.Sugar, Data.Monoid.Multiplicative.Transformer, Data.Seminearring, Data.Seminearring.Sugar, Data.Group, Data.Group.Sugar, Data.Ring, Data.Ring.FromNum, Data.Ring.SugarData.Monoid.Reducer, Data.Monoid.Reducer.Char, Data.Monoid.Reducer.With, Data.Monoid.Unit, Data.Monoid.Monad.Writer.Strict, Data.Monoid.Monad.Writer.Lazy, Data.Monoid.Monad.ST.Strict, Data.Monoid.Monad.STM, Data.Monoid.Monad.ST.Lazy, Data.Monoid.Monad.State.Strict, Data.Monoid.Monad.State.Lazy, Data.Monoid.Monad.RWS.Strict, Data.Monoid.Monad.RWS.Lazy, Data.Monoid.Monad.Reader, Data.Monoid.Monad.IO, Data.Monoid.Monad.Identity, Data.Monoid.Monad.Either, Data.Monoid.Monad.Cont, Data.Monoid.Monad, Data.Monoid.Lexical.UTF8.Decoder, Data.Monoid.Lexical.SourcePosition, Data.Monoid.Generator, Data.Monoid.Lexical.Words, Data.Monoid.Reducer.Sugar, Data.Monoid.Applicative, Data.Monoid.Generator.Combinators, Data.Monoid.Additive, Data.Monoid.Additive.Sugar, Data.Monoid.Multiplicative, Data.Monoid.Multiplicative.Sugar, Data.Monoid.Multiplicative.Transformer, Data.Seminearring, Data.Seminearring.Sugar, Data.Group, Data.Group.Sugar, Data.Ring, Data.Ring.Bool, Data.Ring.Number, Data.Ring.SugarData.Monoid.Reducer, Data.Monoid.Reducer.Char, Data.Monoid.Reducer.With, Data.Monoid.Unit, Data.Monoid.Monad.Writer.Strict, Data.Monoid.Monad.Writer.Lazy, Data.Monoid.Monad.ST.Strict, Data.Monoid.Monad.STM, Data.Monoid.Monad.ST.Lazy, Data.Monoid.Monad.State.Strict, Data.Monoid.Monad.State.Lazy, Data.Monoid.Monad.RWS.Strict, Data.Monoid.Monad.RWS.Lazy, Data.Monoid.Monad.Reader, Data.Monoid.Monad.IO, Data.Monoid.Monad.Identity, Data.Monoid.Monad.Either, Data.Monoid.Monad.Cont, Data.Monoid.Monad, Data.Monoid.Lexical.UTF8.Decoder, Data.Monoid.Lexical.SourcePosition, Data.Monoid.Generator, Data.Monoid.Lexical.Words, Data.Monoid.Reducer.Sugar, Data.Monoid.Applicative, Data.Monoid.Generator.Combinators, Data.Monoid.Additive, Data.Monoid.Additive.Sugar, Data.Monoid.Multiplicative, Data.Monoid.Multiplicative.Sugar, Data.Monoid.Multiplicative.Transformer, Data.Seminearring, Data.Seminearring.Sugar, Data.Group, Data.Group.Sugar, Data.Ring, Data.Ring.FromNum, Data.Ring.SugarData.Monoid.Reducer, Data.Monoid.Reducer.Char, Data.Monoid.Reducer.With, Data.Monoid.Unit, Data.Monoid.Monad.Writer.Strict, Data.Monoid.Monad.Writer.Lazy, Data.Monoid.Monad.ST.Strict, Data.Monoid.Monad.STM, Data.Monoid.Monad.ST.Lazy, Data.Monoid.Monad.State.Strict, Data.Monoid.Monad.State.Lazy, Data.Monoid.Monad.RWS.Strict, Data.Monoid.Monad.RWS.Lazy, Data.Monoid.Monad.Reader, Data.Monoid.Monad.IO, Data.Monoid.Monad.Identity, Data.Monoid.Monad.Either, Data.Monoid.Monad.Cont, Data.Monoid.Monad, Data.Monoid.Lexical.UTF8.Decoder, Data.Monoid.Lexical.SourcePosition, Data.Monoid.Generator, Data.Monoid.Lexical.Words, Data.Monoid.Reducer.Sugar, Data.Monoid.Applicative, Data.Monoid.Generator.Combinators, Data.Monoid.Additive, Data.Monoid.Additive.Sugar, Data.Monoid.Multiplicative, Data.Monoid.Multiplicative.Sugar, Data.Monoid.Multiplicative.Transformer, Data.Seminearring, Data.Seminearring.Sugar, Data.Group, Data.Group.Sugar, Data.Ring, Data.Ring.Bool, Data.Ring.Number, Data.Ring.SugarData.Monoid.Reducer, Data.Monoid.Reducer.Char, Data.Monoid.Reducer.With, Data.Monoid.Unit, Data.Monoid.Monad.Writer.Strict, Data.Monoid.Monad.Writer.Lazy, Data.Monoid.Monad.ST.Strict, Data.Monoid.Monad.STM, Data.Monoid.Monad.ST.Lazy, Data.Monoid.Monad.State.Strict, Data.Monoid.Monad.State.Lazy, Data.Monoid.Monad.RWS.Strict, Data.Monoid.Monad.RWS.Lazy, Data.Monoid.Monad.Reader, Data.Monoid.Monad.IO, Data.Monoid.Monad.Identity, Data.Monoid.Monad.Either, Data.Monoid.Monad.Cont, Data.Monoid.Monad, Data.Monoid.Lexical.UTF8.Decoder, Data.Monoid.Lexical.SourcePosition, Data.Monoid.Generator, Data.Monoid.Lexical.Words, Data.Monoid.Reducer.Sugar, Data.Monoid.Applicative, Data.Monoid.Generator.Combinators, Data.Monoid.Additive, Data.Monoid.Additive.Sugar, Data.Monoid.Multiplicative, Data.Monoid.Multiplicative.Sugar, Data.Monoid.Multiplicative.Transformer, Data.Seminearring, Data.Seminearring.Sugar, Data.Group, Data.Group.Sugar, Data.Ring, Data.Ring.FromNum, Data.Ring.SugarData.Monoid.Reducer, Data.Monoid.Reducer.Char, Data.Monoid.Reducer.With, Data.Monoid.Unit, Data.Monoid.Monad.Writer.Strict, Data.Monoid.Monad.Writer.Lazy, Data.Monoid.Monad.ST.Strict, Data.Monoid.Monad.STM, Data.Monoid.Monad.ST.Lazy, Data.Monoid.Monad.State.Strict, Data.Monoid.Monad.State.Lazy, Data.Monoid.Monad.RWS.Strict, Data.Monoid.Monad.RWS.Lazy, Data.Monoid.Monad.Reader, Data.Monoid.Monad.IO, Data.Monoid.Monad.Identity, Data.Monoid.Monad.Either, Data.Monoid.Monad.Cont, Data.Monoid.Monad, Data.Monoid.Lexical.UTF8.Decoder, Data.Monoid.Lexical.SourcePosition, Data.Monoid.Generator, Data.Monoid.Lexical.Words, Data.Monoid.Reducer.Sugar, Data.Monoid.Applicative, Data.Monoid.Generator.Combinators, Data.Monoid.Additive, Data.Monoid.Additive.Sugar, Data.Monoid.Multiplicative, Data.Monoid.Multiplicative.Sugar, Data.Monoid.Multiplicative.Transformer, Data.Seminearring, Data.Seminearring.Sugar, Data.Group, Data.Group.Sugar, Data.Ring, Data.Ring.Bool, Data.Ring.Number, Data.Ring.SugarData.Monoid.Reducer, Data.Monoid.Reducer.Char, Data.Monoid.Reducer.With, Data.Monoid.Unit, Data.Monoid.Monad.Writer.Strict, Data.Monoid.Monad.Writer.Lazy, Data.Monoid.Monad.ST.Strict, Data.Monoid.Monad.STM, Data.Monoid.Monad.ST.Lazy, Data.Monoid.Monad.State.Strict, Data.Monoid.Monad.State.Lazy, Data.Monoid.Monad.RWS.Strict, Data.Monoid.Monad.RWS.Lazy, Data.Monoid.Monad.Reader, Data.Monoid.Monad.IO, Data.Monoid.Monad.Identity, Data.Monoid.Monad.Either, Data.Monoid.Monad.Cont, Data.Monoid.Monad, Data.Monoid.Lexical.UTF8.Decoder, Data.Monoid.Lexical.SourcePosition, Data.Monoid.Generator, Data.Monoid.Lexical.Words, Data.Monoid.Reducer.Sugar, Data.Monoid.Applicative, Data.Monoid.Generator.Combinators, Data.Monoid.Additive, Data.Monoid.Additive.Sugar, Data.Monoid.Multiplicative, Data.Monoid.Multiplicative.Sugar, Data.Monoid.Multiplicative.Transformer, Data.Seminearring, Data.Seminearring.Sugar, Data.Group, Data.Group.Sugar, Data.Ring, Data.Ring.FromNum, Data.Ring.SugarData.Monoid.Reducer, Data.Monoid.Reducer.Char, Data.Monoid.Reducer.With, Data.Monoid.Unit, Data.Monoid.Monad.Writer.Strict, Data.Monoid.Monad.Writer.Lazy, Data.Monoid.Monad.ST.Strict, Data.Monoid.Monad.STM, Data.Monoid.Monad.ST.Lazy, Data.Monoid.Monad.State.Strict, Data.Monoid.Monad.State.Lazy, Data.Monoid.Monad.RWS.Strict, Data.Monoid.Monad.RWS.Lazy, Data.Monoid.Monad.Reader, Data.Monoid.Monad.IO, Data.Monoid.Monad.Identity, Data.Monoid.Monad.Either, Data.Monoid.Monad.Cont, Data.Monoid.Monad, Data.Monoid.Lexical.UTF8.Decoder, Data.Monoid.Lexical.SourcePosition, Data.Monoid.Generator, Data.Monoid.Lexical.Words, Data.Monoid.Reducer.Sugar, Data.Monoid.Applicative, Data.Monoid.Generator.Combinators, Data.Monoid.Additive, Data.Monoid.Additive.Sugar, Data.Monoid.Multiplicative, Data.Monoid.Multiplicative.Sugar, Data.Monoid.Multiplicative.Transformer, Data.Seminearring, Data.Seminearring.Sugar, Data.Group, Data.Group.Sugar, Data.Ring, Data.Ring.Bool, Data.Ring.Number, Data.Ring.SugarData.Monoid.Reducer, Data.Monoid.Reducer.Char, Data.Monoid.Reducer.With, Data.Monoid.Unit, Data.Monoid.Monad.Writer.Strict, Data.Monoid.Monad.Writer.Lazy, Data.Monoid.Monad.ST.Strict, Data.Monoid.Monad.STM, Data.Monoid.Monad.ST.Lazy, Data.Monoid.Monad.State.Strict, Data.Monoid.Monad.State.Lazy, Data.Monoid.Monad.RWS.Strict, Data.Monoid.Monad.RWS.Lazy, Data.Monoid.Monad.Reader, Data.Monoid.Monad.IO, Data.Monoid.Monad.Identity, Data.Monoid.Monad.Either, Data.Monoid.Monad.Cont, Data.Monoid.Monad, Data.Monoid.Lexical.UTF8.Decoder, Data.Monoid.Lexical.SourcePosition, Data.Monoid.Generator, Data.Monoid.Lexical.Words, Data.Monoid.Reducer.Sugar, Data.Monoid.Applicative, Data.Monoid.Generator.Combinators, Data.Monoid.Additive, Data.Monoid.Additive.Sugar, Data.Monoid.Multiplicative, Data.Monoid.Multiplicative.Sugar, Data.Monoid.Multiplicative.Transformer, Data.Seminearring, Data.Seminearring.Sugar, Data.Group, Data.Group.Sugar, Data.Ring, Data.Ring.FromNum, Data.Ring.SugarData.Monoid.Reducer, Data.Monoid.Reducer.Char, Data.Monoid.Reducer.With, Data.Monoid.Unit, Data.Monoid.Monad.Writer.Strict, Data.Monoid.Monad.Writer.Lazy, Data.Monoid.Monad.ST.Strict, Data.Monoid.Monad.STM, Data.Monoid.Monad.ST.Lazy, Data.Monoid.Monad.State.Strict, Data.Monoid.Monad.State.Lazy, Data.Monoid.Monad.RWS.Strict, Data.Monoid.Monad.RWS.Lazy, Data.Monoid.Monad.Reader, Data.Monoid.Monad.IO, Data.Monoid.Monad.Identity, Data.Monoid.Monad.Either, Data.Monoid.Monad.Cont, Data.Monoid.Monad, Data.Monoid.Lexical.UTF8.Decoder, Data.Monoid.Lexical.SourcePosition, Data.Monoid.Generator, Data.Monoid.Lexical.Words, Data.Monoid.Reducer.Sugar, Data.Monoid.Applicative, Data.Monoid.Generator.Combinators, Data.Monoid.Additive, Data.Monoid.Additive.Sugar, Data.Monoid.Multiplicative, Data.Monoid.Multiplicative.Sugar, Data.Monoid.Multiplicative.Transformer, Data.Seminearring, Data.Seminearring.Sugar, Data.Group, Data.Group.Sugar, Data.Ring, Data.Ring.Bool, Data.Ring.Number, Data.Ring.SugarData.Monoid.Reducer, Data.Monoid.Reducer.Char, Data.Monoid.Reducer.With, Data.Monoid.Unit, Data.Monoid.Monad.Writer.Strict, Data.Monoid.Monad.Writer.Lazy, Data.Monoid.Monad.ST.Strict, Data.Monoid.Monad.STM, Data.Monoid.Monad.ST.Lazy, Data.Monoid.Monad.State.Strict, Data.Monoid.Monad.State.Lazy, Data.Monoid.Monad.RWS.Strict, Data.Monoid.Monad.RWS.Lazy, Data.Monoid.Monad.Reader, Data.Monoid.Monad.IO, Data.Monoid.Monad.Identity, Data.Monoid.Monad.Either, Data.Monoid.Monad.Cont, Data.Monoid.Monad, Data.Monoid.Lexical.UTF8.Decoder, Data.Monoid.Lexical.SourcePosition, Data.Monoid.Generator, Data.Monoid.Lexical.Words, Data.Monoid.Reducer.Sugar, Data.Monoid.Applicative, Data.Monoid.Generator.Combinators, Data.Monoid.Additive, Data.Monoid.Additive.Sugar, Data.Monoid.Multiplicative, Data.Monoid.Multiplicative.Sugar, Data.Monoid.Multiplicative.Transformer, Data.Seminearring, Data.Seminearring.Sugar, Data.Group, Data.Group.Sugar, Data.Ring, Data.Ring.FromNum, Data.Ring.SugarFromNum1 (Type/Class)Data.Ring.FromNum2 (Data Constructor)Data.Ring.FromNumData.Monoid.Reducer, Data.Monoid.Reducer.Char, Data.Monoid.Reducer.With, Data.Monoid.Unit, Data.Monoid.Monad.Writer.Strict, Data.Monoid.Monad.Writer.Lazy, Data.Monoid.Monad.ST.Strict, Data.Monoid.Monad.STM, Data.Monoid.Monad.ST.Lazy, Data.Monoid.Monad.State.Strict, Data.Monoid.Monad.State.Lazy, Data.Monoid.Monad.RWS.Strict, Data.Monoid.Monad.RWS.Lazy, Data.Monoid.Monad.Reader, Data.Monoid.Monad.IO, Data.Monoid.Monad.Identity, Data.Monoid.Monad.Either, Data.Monoid.Monad.Cont, Data.Monoid.Monad, Data.Monoid.Lexical.UTF8.Decoder, Data.Monoid.Lexical.SourcePosition, Data.Monoid.Generator, Data.Monoid.Lexical.Words, Data.Monoid.Reducer.Sugar, Data.Monoid.Applicative, Data.Monoid.Generator.Combinators, Data.Monoid.Additive, Data.Monoid.Additive.Sugar, Data.Monoid.Multiplicative, Data.Monoid.Multiplicative.Sugar, Data.Monoid.Multiplicative.Transformer, Data.Seminearring, Data.Seminearring.Sugar, Data.Group, Data.Group.Sugar, Data.Ring, Data.Ring.Bool, Data.Ring.Number, Data.Ring.SugarData.Monoid.Reducer, Data.Monoid.Reducer.Char, Data.Monoid.Reducer.With, Data.Monoid.Unit, Data.Monoid.Monad.Writer.Strict, Data.Monoid.Monad.Writer.Lazy, Data.Monoid.Monad.ST.Strict, Data.Monoid.Monad.STM, Data.Monoid.Monad.ST.Lazy, Data.Monoid.Monad.State.Strict, Data.Monoid.Monad.State.Lazy, Data.Monoid.Monad.RWS.Strict, Data.Monoid.Monad.RWS.Lazy, Data.Monoid.Monad.Reader, Data.Monoid.Monad.IO, Data.Monoid.Monad.Identity, Data.Monoid.Monad.Either, Data.Monoid.Monad.Cont, Data.Monoid.Monad, Data.Monoid.Lexical.UTF8.Decoder, Data.Monoid.Lexical.SourcePosition, Data.Monoid.Generator, Data.Monoid.Lexical.Words, Data.Monoid.Reducer.Sugar, Data.Monoid.Applicative, Data.Monoid.Generator.Combinators, Data.Monoid.Additive, Data.Monoid.Additive.Sugar, Data.Monoid.Multiplicative, Data.Monoid.Multiplicative.Sugar, Data.Monoid.Multiplicative.Transformer, Data.Seminearring, Data.Seminearring.Sugar, Data.Group, Data.Group.Sugar, Data.Ring, Data.Ring.FromNum, Data.Ring.SugarData.Monoid.Reducer, Data.Monoid.Reducer.Char, Data.Monoid.Reducer.With, Data.Monoid.Unit, Data.Monoid.Monad.Writer.Strict, Data.Monoid.Monad.Writer.Lazy, Data.Monoid.Monad.ST.Strict, Data.Monoid.Monad.STM, Data.Monoid.Monad.ST.Lazy, Data.Monoid.Monad.State.Strict, Data.Monoid.Monad.State.Lazy, Data.Monoid.Monad.RWS.Strict, Data.Monoid.Monad.RWS.Lazy, Data.Monoid.Monad.Reader, Data.Monoid.Monad.IO, Data.Monoid.Monad.Identity, Data.Monoid.Monad.Either, Data.Monoid.Monad.Cont, Data.Monoid.Monad, Data.Monoid.Lexical.UTF8.Decoder, Data.Monoid.Lexical.SourcePosition, Data.Monoid.Generator, Data.Monoid.Lexical.Words, Data.Monoid.Reducer.Sugar, Data.Monoid.Applicative, Data.Monoid.Generator.Combinators, Data.Monoid.Additive, Data.Monoid.Additive.Sugar, Data.Monoid.Multiplicative, Data.Monoid.Multiplicative.Sugar, Data.Monoid.Multiplicative.Transformer, Data.Seminearring, Data.Seminearring.Sugar, Data.Group, Data.Group.Sugar, Data.Ring, Data.Ring.Bool, Data.Ring.Number, Data.Ring.SugarData.Monoid.Reducer, Data.Monoid.Reducer.Char, Data.Monoid.Reducer.With, Data.Monoid.Unit, Data.Monoid.Monad.Writer.Strict, Data.Monoid.Monad.Writer.Lazy, Data.Monoid.Monad.ST.Strict, Data.Monoid.Monad.STM, Data.Monoid.Monad.ST.Lazy, Data.Monoid.Monad.State.Strict, Data.Monoid.Monad.State.Lazy, Data.Monoid.Monad.RWS.Strict, Data.Monoid.Monad.RWS.Lazy, Data.Monoid.Monad.Reader, Data.Monoid.Monad.IO, Data.Monoid.Monad.Identity, Data.Monoid.Monad.Either, Data.Monoid.Monad.Cont, Data.Monoid.Monad, Data.Monoid.Lexical.UTF8.Decoder, Data.Monoid.Lexical.SourcePosition, Data.Monoid.Generator, Data.Monoid.Lexical.Words, Data.Monoid.Reducer.Sugar, Data.Monoid.Applicative, Data.Monoid.Generator.Combinators, Data.Monoid.Additive, Data.Monoid.Additive.Sugar, Data.Monoid.Multiplicative, Data.Monoid.Multiplicative.Sugar, Data.Monoid.Multiplicative.Transformer, Data.Seminearring, Data.Seminearring.Sugar, Data.Group, Data.Group.Sugar, Data.Ring, Data.Ring.FromNum, Data.Ring.SugarData.Monoid.Reducer, Data.Monoid.Reducer.Char, Data.Monoid.Reducer.With, Data.Monoid.Unit, Data.Monoid.Monad.Writer.Strict, Data.Monoid.Monad.Writer.Lazy, Data.Monoid.Monad.ST.Strict, Data.Monoid.Monad.STM, Data.Monoid.Monad.ST.Lazy, Data.Monoid.Monad.State.Strict, Data.Monoid.Monad.State.Lazy, Data.Monoid.Monad.RWS.Strict, Data.Monoid.Monad.RWS.Lazy, Data.Monoid.Monad.Reader, Data.Monoid.Monad.IO, Data.Monoid.Monad.Identity, Data.Monoid.Monad.Either, Data.Monoid.Monad.Cont, Data.Monoid.Monad, Data.Monoid.Lexical.UTF8.Decoder, Data.Monoid.Lexical.SourcePosition, Data.Monoid.Generator, Data.Monoid.Lexical.Words, Data.Monoid.Reducer.Sugar, Data.Monoid.Applicative, Data.Monoid.Generator.Combinators, Data.Monoid.Additive, Data.Monoid.Additive.Sugar, Data.Monoid.Multiplicative, Data.Monoid.Multiplicative.Sugar, Data.Monoid.Multiplicative.Transformer, Data.Seminearring, Data.Seminearring.Sugar, Data.Group, Data.Group.Sugar, Data.Ring, Data.Ring.Bool, Data.Ring.Number, Data.Ring.SugarData.Monoid.Reducer, Data.Monoid.Reducer.Char, Data.Monoid.Reducer.With, Data.Monoid.Unit, Data.Monoid.Monad.Writer.Strict, Data.Monoid.Monad.Writer.Lazy, Data.Monoid.Monad.ST.Strict, Data.Monoid.Monad.STM, Data.Monoid.Monad.ST.Lazy, Data.Monoid.Monad.State.Strict, Data.Monoid.Monad.State.Lazy, Data.Monoid.Monad.RWS.Strict, Data.Monoid.Monad.RWS.Lazy, Data.Monoid.Monad.Reader, Data.Monoid.Monad.IO, Data.Monoid.Monad.Identity, Data.Monoid.Monad.Either, Data.Monoid.Monad.Cont, Data.Monoid.Monad, Data.Monoid.Lexical.UTF8.Decoder, Data.Monoid.Lexical.SourcePosition, Data.Monoid.Generator, Data.Monoid.Lexical.Words, Data.Monoid.Reducer.Sugar, Data.Monoid.Applicative, Data.Monoid.Generator.Combinators, Data.Monoid.Additive, Data.Monoid.Additive.Sugar, Data.Monoid.Multiplicative, Data.Monoid.Multiplicative.Sugar, Data.Monoid.Multiplicative.Transformer, Data.Seminearring, Data.Seminearring.Sugar, Data.Group, Data.Group.Sugar, Data.Ring, Data.Ring.FromNum, Data.Ring.SugarData.Monoid.Reducer, Data.Monoid.Reducer.Char, Data.Monoid.Reducer.With, Data.Monoid.Unit, Data.Monoid.Monad.Writer.Strict, Data.Monoid.Monad.Writer.Lazy, Data.Monoid.Monad.ST.Strict, Data.Monoid.Monad.STM, Data.Monoid.Monad.ST.Lazy, Data.Monoid.Monad.State.Strict, Data.Monoid.Monad.State.Lazy, Data.Monoid.Monad.RWS.Strict, Data.Monoid.Monad.RWS.Lazy, Data.Monoid.Monad.Reader, Data.Monoid.Monad.IO, Data.Monoid.Monad.Identity, Data.Monoid.Monad.Either, Data.Monoid.Monad.Cont, Data.Monoid.Monad, Data.Monoid.Lexical.UTF8.Decoder, Data.Monoid.Lexical.SourcePosition, Data.Monoid.Generator, Data.Monoid.Lexical.Words, Data.Monoid.Reducer.Sugar, Data.Monoid.Applicative, Data.Monoid.Generator.Combinators, Data.Monoid.Additive, Data.Monoid.Additive.Sugar, Data.Monoid.Multiplicative, Data.Monoid.Multiplicative.Sugar, Data.Monoid.Multiplicative.Transformer, Data.Seminearring, Data.Seminearring.Sugar, Data.Group, Data.Group.Sugar, Data.Ring, Data.Ring.Bool, Data.Ring.Number, Data.Ring.SugarData.Monoid.Reducer, Data.Monoid.Reducer.Char, Data.Monoid.Reducer.With, Data.Monoid.Unit, Data.Monoid.Monad.Writer.Strict, Data.Monoid.Monad.Writer.Lazy, Data.Monoid.Monad.ST.Strict, Data.Monoid.Monad.STM, Data.Monoid.Monad.ST.Lazy, Data.Monoid.Monad.State.Strict, Data.Monoid.Monad.State.Lazy, Data.Monoid.Monad.RWS.Strict, Data.Monoid.Monad.RWS.Lazy, Data.Monoid.Monad.Reader, Data.Monoid.Monad.IO, Data.Monoid.Monad.Identity, Data.Monoid.Monad.Either, Data.Monoid.Monad.Cont, Data.Monoid.Monad, Data.Monoid.Lexical.UTF8.Decoder, Data.Monoid.Lexical.SourcePosition, Data.Monoid.Generator, Data.Monoid.Lexical.Words, Data.Monoid.Reducer.Sugar, Data.Monoid.Applicative, Data.Monoid.Generator.Combinators, Data.Monoid.Additive, Data.Monoid.Additive.Sugar, Data.Monoid.Multiplicative, Data.Monoid.Multiplicative.Sugar, Data.Monoid.Multiplicative.Transformer, Data.Seminearring, Data.Seminearring.Sugar, Data.Group, Data.Group.Sugar, Data.Ring, Data.Ring.FromNum, Data.Ring.SugargetFromNumData.Ring.FromNumData.Monoid.Reducer, Data.Monoid.Reducer.Char, Data.Monoid.Reducer.With, Data.Monoid.Unit, Data.Monoid.Monad.Writer.Strict, Data.Monoid.Monad.Writer.Lazy, Data.Monoid.Monad.ST.Strict, Data.Monoid.Monad.STM, Data.Monoid.Monad.ST.Lazy, Data.Monoid.Monad.State.Strict, Data.Monoid.Monad.State.Lazy, Data.Monoid.Monad.RWS.Strict, Data.Monoid.Monad.RWS.Lazy, Data.Monoid.Monad.Reader, Data.Monoid.Monad.IO, Data.Monoid.Monad.Identity, Data.Monoid.Monad.Either, Data.Monoid.Monad.Cont, Data.Monoid.Monad, Data.Monoid.Lexical.UTF8.Decoder, Data.Monoid.Lexical.SourcePosition, Data.Monoid.Generator, Data.Monoid.Lexical.Words, Data.Monoid.Reducer.Sugar, Data.Monoid.Applicative, Data.Monoid.Generator.Combinators, Data.Monoid.Additive, Data.Monoid.Additive.Sugar, Data.Monoid.Multiplicative, Data.Monoid.Multiplicative.Sugar, Data.Monoid.Multiplicative.Transformer, Data.Seminearring, Data.Seminearring.Sugar, Data.Group, Data.Group.Sugar, Data.Ring, Data.Ring.Bool, Data.Ring.Number, Data.Ring.SugarData.Monoid.Reducer, Data.Monoid.Reducer.Char, Data.Monoid.Reducer.With, Data.Monoid.Unit, Data.Monoid.Monad.Writer.Strict, Data.Monoid.Monad.Writer.Lazy, Data.Monoid.Monad.ST.Strict, Data.Monoid.Monad.STM, Data.Monoid.Monad.ST.Lazy, Data.Monoid.Monad.State.Strict, Data.Monoid.Monad.State.Lazy, Data.Monoid.Monad.RWS.Strict, Data.Monoid.Monad.RWS.Lazy, Data.Monoid.Monad.Reader, Data.Monoid.Monad.IO, Data.Monoid.Monad.Identity, Data.Monoid.Monad.Either, Data.Monoid.Monad.Cont, Data.Monoid.Monad, Data.Monoid.Lexical.UTF8.Decoder, Data.Monoid.Lexical.SourcePosition, Data.Monoid.Generator, Data.Monoid.Lexical.Words, Data.Monoid.Reducer.Sugar, Data.Monoid.Applicative, Data.Monoid.Generator.Combinators, Data.Monoid.Additive, Data.Monoid.Additive.Sugar, Data.Monoid.Multiplicative, Data.Monoid.Multiplicative.Sugar, Data.Monoid.Multiplicative.Transformer, Data.Seminearring, Data.Seminearring.Sugar, Data.Group, Data.Group.Sugar, Data.Ring, Data.Ring.FromNum, Data.Ring.SugargetNumberData.Ring.NumberData.Monoid.Reducer, Data.Monoid.Reducer.Char, Data.Monoid.Reducer.With, Data.Monoid.Unit, Data.Monoid.Monad.Writer.Strict, Data.Monoid.Monad.Writer.Lazy, Data.Monoid.Monad.ST.Strict, Data.Monoid.Monad.STM, Data.Monoid.Monad.ST.Lazy, Data.Monoid.Monad.State.Strict, Data.Monoid.Monad.State.Lazy, Data.Monoid.Monad.RWS.Strict, Data.Monoid.Monad.RWS.Lazy, Data.Monoid.Monad.Reader, Data.Monoid.Monad.IO, Data.Monoid.Monad.Identity, Data.Monoid.Monad.Either, Data.Monoid.Monad.Cont, Data.Monoid.Monad, Data.Monoid.Lexical.UTF8.Decoder, Data.Monoid.Lexical.SourcePosition, Data.Monoid.Generator, Data.Monoid.Lexical.Words, Data.Monoid.Reducer.Sugar, Data.Monoid.Applicative, Data.Monoid.Generator.Combinators, Data.Monoid.Additive, Data.Monoid.Additive.Sugar, Data.Monoid.Multiplicative, Data.Monoid.Multiplicative.Sugar, Data.Monoid.Multiplicative.Transformer, Data.Seminearring, Data.Seminearring.Sugar, Data.Group, Data.Group.Sugar, Data.Ring, Data.Ring.Bool, Data.Ring.Number, Data.Ring.SugarData.Monoid.Reducer, Data.Monoid.Reducer.Char, Data.Monoid.Reducer.With, Data.Monoid.Unit, Data.Monoid.Monad.Writer.Strict, Data.Monoid.Monad.Writer.Lazy, Data.Monoid.Monad.ST.Strict, Data.Monoid.Monad.STM, Data.Monoid.Monad.ST.Lazy, Data.Monoid.Monad.State.Strict, Data.Monoid.Monad.State.Lazy, Data.Monoid.Monad.RWS.Strict, Data.Monoid.Monad.RWS.Lazy, Data.Monoid.Monad.Reader, Data.Monoid.Monad.IO, Data.Monoid.Monad.Identity, Data.Monoid.Monad.Either, Data.Monoid.Monad.Cont, Data.Monoid.Monad, Data.Monoid.Lexical.UTF8.Decoder, Data.Monoid.Lexical.SourcePosition, Data.Monoid.Generator, Data.Monoid.Lexical.Words, Data.Monoid.Reducer.Sugar, Data.Monoid.Applicative, Data.Monoid.Generator.Combinators, Data.Monoid.Additive, Data.Monoid.Additive.Sugar, Data.Monoid.Multiplicative, Data.Monoid.Multiplicative.Sugar, Data.Monoid.Multiplicative.Transformer, Data.Seminearring, Data.Seminearring.Sugar, Data.Group, Data.Group.Sugar, Data.Ring, Data.Ring.FromNum, Data.Ring.SugarData.Monoid.Reducer, Data.Monoid.Reducer.Char, Data.Monoid.Reducer.With, Data.Monoid.Unit, Data.Monoid.Monad.Writer.Strict, Data.Monoid.Monad.Writer.Lazy, Data.Monoid.Monad.ST.Strict, Data.Monoid.Monad.STM, Data.Monoid.Monad.ST.Lazy, Data.Monoid.Monad.State.Strict, Data.Monoid.Monad.State.Lazy, Data.Monoid.Monad.RWS.Strict, Data.Monoid.Monad.RWS.Lazy, Data.Monoid.Monad.Reader, Data.Monoid.Monad.IO, Data.Monoid.Monad.Identity, Data.Monoid.Monad.Either, Data.Monoid.Monad.Cont, Data.Monoid.Monad, Data.Monoid.Lexical.UTF8.Decoder, Data.Monoid.Lexical.SourcePosition, Data.Monoid.Generator, Data.Monoid.Lexical.Words, Data.Monoid.Reducer.Sugar, Data.Monoid.Applicative, Data.Monoid.Generator.Combinators, Data.Monoid.Additive, Data.Monoid.Additive.Sugar, Data.Monoid.Multiplicative, Data.Monoid.Multiplicative.Sugar, Data.Monoid.Multiplicative.Transformer, Data.Seminearring, Data.Seminearring.Sugar, Data.Group, Data.Group.Sugar, Data.Ring, Data.Ring.Bool, Data.Ring.Number, Data.Ring.SugarData.Monoid.Reducer, Data.Monoid.Reducer.Char, Data.Monoid.Reducer.With, Data.Monoid.Unit, Data.Monoid.Monad.Writer.Strict, Data.Monoid.Monad.Writer.Lazy, Data.Monoid.Monad.ST.Strict, Data.Monoid.Monad.STM, Data.Monoid.Monad.ST.Lazy, Data.Monoid.Monad.State.Strict, Data.Monoid.Monad.State.Lazy, Data.Monoid.Monad.RWS.Strict, Data.Monoid.Monad.RWS.Lazy, Data.Monoid.Monad.Reader, Data.Monoid.Monad.IO, Data.Monoid.Monad.Identity, Data.Monoid.Monad.Either, Data.Monoid.Monad.Cont, Data.Monoid.Monad, Data.Monoid.Lexical.UTF8.Decoder, Data.Monoid.Lexical.SourcePosition, Data.Monoid.Generator, Data.Monoid.Lexical.Words, Data.Monoid.Reducer.Sugar, Data.Monoid.Applicative, Data.Monoid.Generator.Combinators, Data.Monoid.Additive, Data.Monoid.Additive.Sugar, Data.Monoid.Multiplicative, Data.Monoid.Multiplicative.Sugar, Data.Monoid.Multiplicative.Transformer, Data.Seminearring, Data.Seminearring.Sugar, Data.Group, Data.Group.Sugar, Data.Ring, Data.Ring.FromNum, Data.Ring.Sugar, Data.Group.Sugar, Data.Ring, Data.Ring.Bool, Data.Ring.Number, Data.Ring.Sugar, Data.Group.Sugar, Data.Ring, Data.Ring.FromNum, Data.Ring.Sugar, Data.Group.Sugar, Data.Ring, Data.Ring.Bool, Data.Ring.Number, Data.Ring.Sugar, Data.Group.Sugar, Data.Ring, Data.Ring.FromNum, Data.Ring.SugarData.Monoid.Reducer, Data.Monoid.Reducer.Char, Data.Monoid.Reducer.With, Data.Monoid.Unit, Data.Monoid.Monad.Writer.Strict, Data.Monoid.Monad.Writer.Lazy, Data.Monoid.Monad.ST.Strict, Data.Monoid.Monad.STM, Data.Monoid.Monad.ST.Lazy, Data.Monoid.Monad.State.Strict, Data.Monoid.Monad.State.Lazy, Data.Monoid.Monad.RWS.Strict, Data.Monoid.Monad.RWS.Lazy, Data.Monoid.Monad.Reader, Data.Monoid.Monad.IO, Data.Monoid.Monad.Identity, Data.Monoid.Monad.Either, Data.Monoid.Monad.Cont, Data.Monoid.Monad, Data.Monoid.Lexical.UTF8.Decoder, Data.Monoid.Lexical.SourcePosition, Data.Monoid.Generator, Data.Monoid.Lexical.Words, Data.Monoid.Reducer.Sugar, Data.Monoid.Applicative, Data.Monoid.Generator.Combinators, Data.Monoid.Additive, Data.Monoid.Additive.Sugar, Data.Monoid.Multiplicative, Data.Monoid.Multiplicative.Sugar, Data.Monoid.Multiplicative.Transformer, Data.Seminearring, Data.Seminearring.Sugar, Data.Group, Data.Group.Sugar, Data.Ring, Data.Ring.Bool, Data.Ring.Number, Data.Ring.SugarData.Monoid.Reducer, Data.Monoid.Reducer.Char, Data.Monoid.Reducer.With, Data.Monoid.Unit, Data.Monoid.Monad.Writer.Strict, Data.Monoid.Monad.Writer.Lazy, Data.Monoid.Monad.ST.Strict, Data.Monoid.Monad.STM, Data.Monoid.Monad.ST.Lazy, Data.Monoid.Monad.State.Strict, Data.Monoid.Monad.State.Lazy, Data.Monoid.Monad.RWS.Strict, Data.Monoid.Monad.RWS.Lazy, Data.Monoid.Monad.Reader, Data.Monoid.Monad.IO, Data.Monoid.Monad.Identity, Data.Monoid.Monad.Either, Data.Monoid.Monad.Cont, Data.Monoid.Monad, Data.Monoid.Lexical.UTF8.Decoder, Data.Monoid.Lexical.SourcePosition, Data.Monoid.Generator, Data.Monoid.Lexical.Words, Data.Monoid.Reducer.Sugar, Data.Monoid.Applicative, Data.Monoid.Generator.Combinators, Data.Monoid.Additive, Data.Monoid.Additive.Sugar, Data.Monoid.Multiplicative, Data.Monoid.Multiplicative.Sugar, Data.Monoid.Multiplicative.Transformer, Data.Seminearring, Data.Seminearring.Sugar, Data.Group, Data.Group.Sugar, Data.Ring, Data.Ring.FromNum, Data.Ring.SugarData.Monoid.Reducer, Data.Monoid.Reducer.Char, Data.Monoid.Reducer.With, Data.Monoid.Unit, Data.Monoid.Monad.Writer.Strict, Data.Monoid.Monad.Writer.Lazy, Data.Monoid.Monad.ST.Strict, Data.Monoid.Monad.STM, Data.Monoid.Monad.ST.Lazy, Data.Monoid.Monad.State.Strict, Data.Monoid.Monad.State.Lazy, Data.Monoid.Monad.RWS.Strict, Data.Monoid.Monad.RWS.Lazy, Data.Monoid.Monad.Reader, Data.Monoid.Monad.IO, Data.Monoid.Monad.Identity, Data.Monoid.Monad.Either, Data.Monoid.Monad.Cont, Data.Monoid.Monad, Data.Monoid.Lexical.UTF8.Decoder, Data.Monoid.Lexical.SourcePosition, Data.Monoid.Generator, Data.Monoid.Lexical.Words, Data.Monoid.Reducer.Sugar, Data.Monoid.Applicative, Data.Monoid.Generator.Combinators, Data.Monoid.Additive, Data.Monoid.Additive.Sugar, Data.Monoid.Multiplicative, Data.Monoid.Multiplicative.Sugar, Data.Monoid.Multiplicative.Transformer, Data.Seminearring, Data.Seminearring.Sugar, Data.Group, Data.Group.Sugar, Data.Ring, Data.Ring.Bool, Data.Ring.Number, Data.Ring.SugarData.Monoid.Reducer, Data.Monoid.Reducer.Char, Data.Monoid.Reducer.With, Data.Monoid.Unit, Data.Monoid.Monad.Writer.Strict, Data.Monoid.Monad.Writer.Lazy, Data.Monoid.Monad.ST.Strict, Data.Monoid.Monad.STM, Data.Monoid.Monad.ST.Lazy, Data.Monoid.Monad.State.Strict, Data.Monoid.Monad.State.Lazy, Data.Monoid.Monad.RWS.Strict, Data.Monoid.Monad.RWS.Lazy, Data.Monoid.Monad.Reader, Data.Monoid.Monad.IO, Data.Monoid.Monad.Identity, Data.Monoid.Monad.Either, Data.Monoid.Monad.Cont, Data.Monoid.Monad, Data.Monoid.Lexical.UTF8.Decoder, Data.Monoid.Lexical.SourcePosition, Data.Monoid.Generator, Data.Monoid.Lexical.Words, Data.Monoid.Reducer.Sugar, Data.Monoid.Applicative, Data.Monoid.Generator.Combinators, Data.Monoid.Additive, Data.Monoid.Additive.Sugar, Data.Monoid.Multiplicative, Data.Monoid.Multiplicative.Sugar, Data.Monoid.Multiplicative.Transformer, Data.Seminearring, Data.Seminearring.Sugar, Data.Group, Data.Group.Sugar, Data.Ring, Data.Ring.FromNum, Data.Ring.SugarData.Monoid.Reducer, Data.Monoid.Reducer.Char, Data.Monoid.Reducer.With, Data.Monoid.Unit, Data.Monoid.Ord, Data.Monoid.Monad.Writer.Strict, Data.Monoid.Monad.Writer.Lazy, Data.Monoid.Monad.ST.Strict, Data.Monoid.Monad.STM, Data.Monoid.Monad.ST.Lazy, Data.Monoid.Monad.State.Strict, Data.Monoid.Monad.State.Lazy, Data.Monoid.Monad.RWS.Strict, Data.Monoid.Monad.RWS.Lazy, Data.Monoid.Monad.Reader, Data.Monoid.Monad.IO, Data.Monoid.Monad.Identity, Data.Monoid.Monad.Either, Data.Monoid.Monad.Cont, Data.Monoid.Monad, Data.Monoid.Map, Data.Monoid.Lexical.UTF8.Decoder, Data.Monoid.Lexical.SourcePosition, Data.Monoid.IntMap, Data.Monoid.Generator, Data.Monoid.Lexical.Words, Data.Monoid.Reducer.Sugar, Data.Monoid.Categorical, Data.Monoid.Applicative, Data.Monoid.Generator.Combinators, Data.Monoid.Additive, Data.Monoid.Additive.Sugar, Data.Monoid.Multiplicative, Data.Monoid.Multiplicative.Sugar, Data.Monoid.Multiplicative.Transformer, Data.Seminearring, Data.Seminearring.Sugar, Data.Group, Data.Group.Sugar, Data.Ring, Data.Ring.Bool, Data.Ring.Number, Data.Ring.SugarData.Monoid.Reducer, Data.Monoid.Reducer.Char, Data.Monoid.Reducer.With, Data.Monoid.Unit, Data.Monoid.Ord, Data.Monoid.Monad.Writer.Strict, Data.Monoid.Monad.Writer.Lazy, Data.Monoid.Monad.ST.Strict, Data.Monoid.Monad.STM, Data.Monoid.Monad.ST.Lazy, Data.Monoid.Monad.State.Strict, Data.Monoid.Monad.State.Lazy, Data.Monoid.Monad.RWS.Strict, Data.Monoid.Monad.RWS.Lazy, Data.Monoid.Monad.Reader, Data.Monoid.Monad.IO, Data.Monoid.Monad.Identity, Data.Monoid.Monad.Either, Data.Monoid.Monad.Cont, Data.Monoid.Monad, Data.Monoid.Map, Data.Monoid.Lexical.UTF8.Decoder, Data.Monoid.Lexical.SourcePosition, Data.Monoid.IntMap, Data.Monoid.Generator, Data.Monoid.Lexical.Words, Data.Monoid.Reducer.Sugar, Data.Monoid.Categorical, Data.Monoid.Applicative, Data.Monoid.Generator.Combinators, Data.Monoid.Additive, Data.Monoid.Additive.Sugar, Data.Monoid.Multiplicative, Data.Monoid.Multiplicative.Sugar, Data.Monoid.Multiplicative.Transformer, Data.Seminearring, Data.Seminearring.Sugar, Data.Group, Data.Group.Sugar, Data.Ring, Data.Ring.FromNum, Data.Ring.SugarData.Monoid.Reducer, Data.Monoid.Reducer.Char, Data.Monoid.Reducer.With, Data.Monoid.Unit, Data.Monoid.Monad.Writer.Strict, Data.Monoid.Monad.Writer.Lazy, Data.Monoid.Monad.ST.Strict, Data.Monoid.Monad.STM, Data.Monoid.Monad.ST.Lazy, Data.Monoid.Monad.State.Strict, Data.Monoid.Monad.State.Lazy, Data.Monoid.Monad.RWS.Strict, Data.Monoid.Monad.RWS.Lazy, Data.Monoid.Monad.Reader, Data.Monoid.Monad.IO, Data.Monoid.Monad.Identity, Data.Monoid.Monad.Either, Data.Monoid.Monad.Cont, Data.Monoid.Monad, Data.Monoid.Lexical.UTF8.Decoder, Data.Monoid.Lexical.SourcePosition, Data.Monoid.Generator, Data.Monoid.Lexical.Words, Data.Monoid.Reducer.Sugar, Data.Monoid.Applicative, Data.Monoid.Generator.Combinators, Data.Monoid.Additive, Data.Monoid.Additive.Sugar, Data.Monoid.Multiplicative, Data.Monoid.Multiplicative.Sugar, Data.Monoid.Multiplicative.Transformer, Data.Seminearring, Data.Seminearring.Sugar, Data.Group, Data.Group.Sugar, Data.Ring, Data.Ring.Bool, Data.Ring.Number, Data.Ring.SugarData.Monoid.Reducer, Data.Monoid.Reducer.Char, Data.Monoid.Reducer.With, Data.Monoid.Unit, Data.Monoid.Monad.Writer.Strict, Data.Monoid.Monad.Writer.Lazy, Data.Monoid.Monad.ST.Strict, Data.Monoid.Monad.STM, Data.Monoid.Monad.ST.Lazy, Data.Monoid.Monad.State.Strict, Data.Monoid.Monad.State.Lazy, Data.Monoid.Monad.RWS.Strict, Data.Monoid.Monad.RWS.Lazy, Data.Monoid.Monad.Reader, Data.Monoid.Monad.IO, Data.Monoid.Monad.Identity, Data.Monoid.Monad.Either, Data.Monoid.Monad.Cont, Data.Monoid.Monad, Data.Monoid.Lexical.UTF8.Decoder, Data.Monoid.Lexical.SourcePosition, Data.Monoid.Generator, Data.Monoid.Lexical.Words, Data.Monoid.Reducer.Sugar, Data.Monoid.Applicative, Data.Monoid.Generator.Combinators, Data.Monoid.Additive, Data.Monoid.Additive.Sugar, Data.Monoid.Multiplicative, Data.Monoid.Multiplicative.Sugar, Data.Monoid.Multiplicative.Transformer, Data.Seminearring, Data.Seminearring.Sugar, Data.Group, Data.Group.Sugar, Data.Ring, Data.Ring.FromNum, Data.Ring.SugarData.Monoid.Reducer, Data.Monoid.Reducer.Char, Data.Monoid.Reducer.With, Data.Monoid.Unit, Data.Monoid.Ord, Data.Monoid.Monad.Writer.Strict, Data.Monoid.Monad.Writer.Lazy, Data.Monoid.Monad.ST.Strict, Data.Monoid.Monad.STM, Data.Monoid.Monad.ST.Lazy, Data.Monoid.Monad.State.Strict, Data.Monoid.Monad.State.Lazy, Data.Monoid.Monad.RWS.Strict, Data.Monoid.Monad.RWS.Lazy, Data.Monoid.Monad.Reader, Data.Monoid.Monad.IO, Data.Monoid.Monad.Identity, Data.Monoid.Monad.Either, Data.Monoid.Monad.Cont, Data.Monoid.Monad, Data.Monoid.Map, Data.Monoid.Lexical.UTF8.Decoder, Data.Monoid.Lexical.SourcePosition, Data.Monoid.IntMap, Data.Monoid.Generator, Data.Monoid.Lexical.Words, Data.Monoid.Reducer.Sugar, Data.Monoid.Categorical, Data.Monoid.Applicative, Data.Monoid.Generator.Combinators, Data.Monoid.Additive, Data.Monoid.Additive.Sugar, Data.Monoid.Multiplicative, Data.Monoid.Multiplicative.Sugar, Data.Monoid.Multiplicative.Transformer, Data.Seminearring, Data.Seminearring.Sugar, Data.Group, Data.Group.Sugar, Data.Ring, Data.Ring.Bool, Data.Ring.Number, Data.Ring.SugarData.Monoid.Reducer, Data.Monoid.Reducer.Char, Data.Monoid.Reducer.With, Data.Monoid.Unit, Data.Monoid.Ord, Data.Monoid.Monad.Writer.Strict, Data.Monoid.Monad.Writer.Lazy, Data.Monoid.Monad.ST.Strict, Data.Monoid.Monad.STM, Data.Monoid.Monad.ST.Lazy, Data.Monoid.Monad.State.Strict, Data.Monoid.Monad.State.Lazy, Data.Monoid.Monad.RWS.Strict, Data.Monoid.Monad.RWS.Lazy, Data.Monoid.Monad.Reader, Data.Monoid.Monad.IO, Data.Monoid.Monad.Identity, Data.Monoid.Monad.Either, Data.Monoid.Monad.Cont, Data.Monoid.Monad, Data.Monoid.Map, Data.Monoid.Lexical.UTF8.Decoder, Data.Monoid.Lexical.SourcePosition, Data.Monoid.IntMap, Data.Monoid.Generator, Data.Monoid.Lexical.Words, Data.Monoid.Reducer.Sugar, Data.Monoid.Categorical, Data.Monoid.Applicative, Data.Monoid.Generator.Combinators, Data.Monoid.Additive, Data.Monoid.Additive.Sugar, Data.Monoid.Multiplicative, Data.Monoid.Multiplicative.Sugar, Data.Monoid.Multiplicative.Transformer, Data.Seminearring, Data.Seminearring.Sugar, Data.Group, Data.Group.Sugar, Data.Ring, Data.Ring.FromNum, Data.Ring.Sugar, Data.Group.Sugar, Data.Ring, Data.Ring.Bool, Data.Ring.Number, Data.Ring.Sugar, Data.Group.Sugar, Data.Ring, Data.Ring.FromNum, Data.Ring.SugarData.Monoid.Reducer, Data.Monoid.Reducer.Char, Data.Monoid.Reducer.With, Data.Monoid.Unit, Data.Monoid.Ord, Data.Monoid.Monad.Writer.Strict, Data.Monoid.Monad.Writer.Lazy, Data.Monoid.Monad.ST.Strict, Data.Monoid.Monad.STM, Data.Monoid.Monad.ST.Lazy, Data.Monoid.Monad.State.Strict, Data.Monoid.Monad.State.Lazy, Data.Monoid.Monad.RWS.Strict, Data.Monoid.Monad.RWS.Lazy, Data.Monoid.Monad.Reader, Data.Monoid.Monad.IO, Data.Monoid.Monad.Identity, Data.Monoid.Monad.Either, Data.Monoid.Monad.Cont, Data.Monoid.Monad, Data.Monoid.Map, Data.Monoid.Lexical.UTF8.Decoder, Data.Monoid.Lexical.SourcePosition, Data.Monoid.IntMap, Data.Monoid.Generator, Data.Monoid.Lexical.Words, Data.Monoid.Reducer.Sugar, Data.Monoid.Categorical, Data.Monoid.Applicative, Data.Monoid.Generator.Combinators, Data.Monoid.Additive, Data.Monoid.Additive.Sugar, Data.Monoid.Multiplicative, Data.Monoid.Multiplicative.Sugar, Data.Monoid.Multiplicative.Transformer, Data.Seminearring, Data.Seminearring.Sugar, Data.Group, Data.Group.Sugar, Data.Ring, Data.Ring.Bool, Data.Ring.Number, Data.Ring.SugarData.Monoid.Reducer, Data.Monoid.Reducer.Char, Data.Monoid.Reducer.With, Data.Monoid.Unit, Data.Monoid.Ord, Data.Monoid.Monad.Writer.Strict, Data.Monoid.Monad.Writer.Lazy, Data.Monoid.Monad.ST.Strict, Data.Monoid.Monad.STM, Data.Monoid.Monad.ST.Lazy, Data.Monoid.Monad.State.Strict, Data.Monoid.Monad.State.Lazy, Data.Monoid.Monad.RWS.Strict, Data.Monoid.Monad.RWS.Lazy, Data.Monoid.Monad.Reader, Data.Monoid.Monad.IO, Data.Monoid.Monad.Identity, Data.Monoid.Monad.Either, Data.Monoid.Monad.Cont, Data.Monoid.Monad, Data.Monoid.Map, Data.Monoid.Lexical.UTF8.Decoder, Data.Monoid.Lexical.SourcePosition, Data.Monoid.IntMap, Data.Monoid.Generator, Data.Monoid.Lexical.Words, Data.Monoid.Reducer.Sugar, Data.Monoid.Categorical, Data.Monoid.Applicative, Data.Monoid.Generator.Combinators, Data.Monoid.Additive, Data.Monoid.Additive.Sugar, Data.Monoid.Multiplicative, Data.Monoid.Multiplicative.Sugar, Data.Monoid.Multiplicative.Transformer, Data.Seminearring, Data.Seminearring.Sugar, Data.Group, Data.Group.Sugar, Data.Ring, Data.Ring.FromNum, Data.Ring.Sugar, Data.Monoid.Multiplicative.Sugar, Data.Monoid.Multiplicative.Transformer, Data.Seminearring, Data.Seminearring.Sugar, Data.Ring, Data.Ring.Bool, Data.Ring.Number, Data.Ring.Sugar, Data.Monoid.Multiplicative.Sugar, Data.Monoid.Multiplicative.Transformer, Data.Seminearring, Data.Seminearring.Sugar, Data.Ring, Data.Ring.FromNum, Data.Ring.SugarNumber1 (Type/Class)Data.Ring.Number2 (Data Constructor)Data.Ring.Number, Data.Monoid.Multiplicative.Sugar, Data.Monoid.Multiplicative.Transformer, Data.Seminearring, Data.Seminearring.Sugar, Data.Ring, Data.Ring.Bool, Data.Ring.Number, Data.Ring.Sugar, Data.Monoid.Multiplicative.Sugar, Data.Monoid.Multiplicative.Transformer, Data.Seminearring, Data.Seminearring.Sugar, Data.Ring, Data.Ring.FromNum, Data.Ring.Sugar, Data.Monoid.Additive.Sugar, Data.Monoid.Multiplicative, Data.Monoid.Multiplicative.Sugar, Data.Monoid.Multiplicative.Transformer, Data.Seminearring, Data.Seminearring.Sugar, Data.Group, Data.Group.Sugar, Data.Ring, Data.Ring.Bool, Data.Ring.Number, Data.Ring.Sugar, Data.Monoid.Additive.Sugar, Data.Monoid.Multiplicative, Data.Monoid.Multiplicative.Sugar, Data.Monoid.Multiplicative.Transformer, Data.Seminearring, Data.Seminearring.Sugar, Data.Group, Data.Group.Sugar, Data.Ring, Data.Ring.FromNum, Data.Ring.SugarData.Monoid.Reducer, Data.Monoid.Reducer.Char, Data.Monoid.Reducer.With, Data.Monoid.Unit, Data.Monoid.Monad.Writer.Strict, Data.Monoid.Monad.Writer.Lazy, Data.Monoid.Monad.ST.Strict, Data.Monoid.Monad.STM, Data.Monoid.Monad.ST.Lazy, Data.Monoid.Monad.State.Strict, Data.Monoid.Monad.State.Lazy, Data.Monoid.Monad.RWS.Strict, Data.Monoid.Monad.RWS.Lazy, Data.Monoid.Monad.Reader, Data.Monoid.Monad.IO, Data.Monoid.Monad.Identity, Data.Monoid.Monad.Either, Data.Monoid.Monad.Cont, Data.Monoid.Monad, Data.Monoid.Lexical.UTF8.Decoder, Data.Monoid.Lexical.SourcePosition, Data.Monoid.Generator, Data.Monoid.Lexical.Words, Data.Monoid.Reducer.Sugar, Data.Monoid.Applicative, Data.Monoid.Generator.Combinators, Data.Monoid.Additive, Data.Monoid.Additive.Sugar, Data.Monoid.Multiplicative, Data.Monoid.Multiplicative.Sugar, Data.Monoid.Multiplicative.Transformer, Data.Seminearring, Data.Seminearring.Sugar, Data.Group, Data.Group.Sugar, Data.Ring, Data.Ring.Bool, Data.Ring.Number, Data.Ring.SugarData.Monoid.Reducer, Data.Monoid.Reducer.Char, Data.Monoid.Reducer.With, Data.Monoid.Unit, Data.Monoid.Monad.Writer.Strict, Data.Monoid.Monad.Writer.Lazy, Data.Monoid.Monad.ST.Strict, Data.Monoid.Monad.STM, Data.Monoid.Monad.ST.Lazy, Data.Monoid.Monad.State.Strict, Data.Monoid.Monad.State.Lazy, Data.Monoid.Monad.RWS.Strict, Data.Monoid.Monad.RWS.Lazy, Data.Monoid.Monad.Reader, Data.Monoid.Monad.IO, Data.Monoid.Monad.Identity, Data.Monoid.Monad.Either, Data.Monoid.Monad.Cont, Data.Monoid.Monad, Data.Monoid.Lexical.UTF8.Decoder, Data.Monoid.Lexical.SourcePosition, Data.Monoid.Generator, Data.Monoid.Lexical.Words, Data.Monoid.Reducer.Sugar, Data.Monoid.Applicative, Data.Monoid.Generator.Combinators, Data.Monoid.Additive, Data.Monoid.Additive.Sugar, Data.Monoid.Multiplicative, Data.Monoid.Multiplicative.Sugar, Data.Monoid.Multiplicative.Transformer, Data.Seminearring, Data.Seminearring.Sugar, Data.Group, Data.Group.Sugar, Data.Ring, Data.Ring.FromNum, Data.Ring.SugarData.Monoid.Reducer, Data.Monoid.Reducer.Char, Data.Monoid.Reducer.With, Data.Monoid.Unit, Data.Monoid.Monad.Writer.Strict, Data.Monoid.Monad.Writer.Lazy, Data.Monoid.Monad.ST.Strict, Data.Monoid.Monad.STM, Data.Monoid.Monad.ST.Lazy, Data.Monoid.Monad.State.Strict, Data.Monoid.Monad.State.Lazy, Data.Monoid.Monad.RWS.Strict, Data.Monoid.Monad.RWS.Lazy, Data.Monoid.Monad.Reader, Data.Monoid.Monad.IO, Data.Monoid.Monad.Identity, Data.Monoid.Monad.Either, Data.Monoid.Monad.Cont, Data.Monoid.Monad, Data.Monoid.Lexical.UTF8.Decoder, Data.Monoid.Lexical.SourcePosition, Data.Monoid.Generator, Data.Monoid.Lexical.Words, Data.Monoid.Reducer.Sugar, Data.Monoid.Applicative, Data.Monoid.Generator.Combinators, Data.Monoid.Additive, Data.Monoid.Additive.Sugar, Data.Monoid.Multiplicative, Data.Monoid.Multiplicative.Sugar, Data.Monoid.Multiplicative.Transformer, Data.Seminearring, Data.Seminearring.Sugar, Data.Group, Data.Group.Sugar, Data.Ring, Data.Ring.Bool, Data.Ring.Number, Data.Ring.SugarData.Monoid.Reducer, Data.Monoid.Reducer.Char, Data.Monoid.Reducer.With, Data.Monoid.Unit, Data.Monoid.Monad.Writer.Strict, Data.Monoid.Monad.Writer.Lazy, Data.Monoid.Monad.ST.Strict, Data.Monoid.Monad.STM, Data.Monoid.Monad.ST.Lazy, Data.Monoid.Monad.State.Strict, Data.Monoid.Monad.State.Lazy, Data.Monoid.Monad.RWS.Strict, Data.Monoid.Monad.RWS.Lazy, Data.Monoid.Monad.Reader, Data.Monoid.Monad.IO, Data.Monoid.Monad.Identity, Data.Monoid.Monad.Either, Data.Monoid.Monad.Cont, Data.Monoid.Monad, Data.Monoid.Lexical.UTF8.Decoder, Data.Monoid.Lexical.SourcePosition, Data.Monoid.Generator, Data.Monoid.Lexical.Words, Data.Monoid.Reducer.Sugar, Data.Monoid.Applicative, Data.Monoid.Generator.Combinators, Data.Monoid.Additive, Data.Monoid.Additive.Sugar, Data.Monoid.Multiplicative, Data.Monoid.Multiplicative.Sugar, Data.Monoid.Multiplicative.Transformer, Data.Seminearring, Data.Seminearring.Sugar, Data.Group, Data.Group.Sugar, Data.Ring, Data.Ring.FromNum, Data.Ring.Sugar, Data.Seminearring.Sugar, Data.Ring, Data.Ring.Bool, Data.Ring.Number, Data.Ring.Sugar, Data.Seminearring.Sugar, Data.Ring, Data.Ring.FromNum, Data.Ring.SugarData.Monoid.Reducer, Data.Monoid.Reducer.Char, Data.Monoid.Reducer.With, Data.Monoid.Unit, Data.Monoid.Monad.Writer.Strict, Data.Monoid.Monad.Writer.Lazy, Data.Monoid.Monad.ST.Strict, Data.Monoid.Monad.STM, Data.Monoid.Monad.ST.Lazy, Data.Monoid.Monad.State.Strict, Data.Monoid.Monad.State.Lazy, Data.Monoid.Monad.RWS.Strict, Data.Monoid.Monad.RWS.Lazy, Data.Monoid.Monad.Reader, Data.Monoid.Monad.IO, Data.Monoid.Monad.Identity, Data.Monoid.Monad.Either, Data.Monoid.Monad.Cont, Data.Monoid.Monad, Data.Monoid.Lexical.UTF8.Decoder, Data.Monoid.Lexical.SourcePosition, Data.Monoid.Generator, Data.Monoid.Lexical.Words, Data.Monoid.Reducer.Sugar, Data.Monoid.Applicative, Data.Monoid.Generator.Combinators, Data.Monoid.Additive, Data.Monoid.Additive.Sugar, Data.Monoid.Multiplicative, Data.Monoid.Multiplicative.Sugar, Data.Monoid.Multiplicative.Transformer, Data.Seminearring, Data.Seminearring.Sugar, Data.Group, Data.Group.Sugar, Data.Ring, Data.Ring.Bool, Data.Ring.Number, Data.Ring.SugarData.Monoid.Reducer, Data.Monoid.Reducer.Char, Data.Monoid.Reducer.With, Data.Monoid.Unit, Data.Monoid.Monad.Writer.Strict, Data.Monoid.Monad.Writer.Lazy, Data.Monoid.Monad.ST.Strict, Data.Monoid.Monad.STM, Data.Monoid.Monad.ST.Lazy, Data.Monoid.Monad.State.Strict, Data.Monoid.Monad.State.Lazy, Data.Monoid.Monad.RWS.Strict, Data.Monoid.Monad.RWS.Lazy, Data.Monoid.Monad.Reader, Data.Monoid.Monad.IO, Data.Monoid.Monad.Identity, Data.Monoid.Monad.Either, Data.Monoid.Monad.Cont, Data.Monoid.Monad, Data.Monoid.Lexical.UTF8.Decoder, Data.Monoid.Lexical.SourcePosition, Data.Monoid.Generator, Data.Monoid.Lexical.Words, Data.Monoid.Reducer.Sugar, Data.Monoid.Applicative, Data.Monoid.Generator.Combinators, Data.Monoid.Additive, Data.Monoid.Additive.Sugar, Data.Monoid.Multiplicative, Data.Monoid.Multiplicative.Sugar, Data.Monoid.Multiplicative.Transformer, Data.Seminearring, Data.Seminearring.Sugar, Data.Group, Data.Group.Sugar, Data.Ring, Data.Ring.FromNum, Data.Ring.SugarData.Monoid.Reducer, Data.Monoid.Reducer.Char, Data.Monoid.Reducer.With, Data.Monoid.Unit, Data.Monoid.Monad.Writer.Strict, Data.Monoid.Monad.Writer.Lazy, Data.Monoid.Monad.ST.Strict, Data.Monoid.Monad.STM, Data.Monoid.Monad.ST.Lazy, Data.Monoid.Monad.State.Strict, Data.Monoid.Monad.State.Lazy, Data.Monoid.Monad.RWS.Strict, Data.Monoid.Monad.RWS.Lazy, Data.Monoid.Monad.Reader, Data.Monoid.Monad.IO, Data.Monoid.Monad.Identity, Data.Monoid.Monad.Either, Data.Monoid.Monad.Cont, Data.Monoid.Monad, Data.Monoid.Lexical.UTF8.Decoder, Data.Monoid.Lexical.SourcePosition, Data.Monoid.Generator, Data.Monoid.Lexical.Words, Data.Monoid.Reducer.Sugar, Data.Monoid.Applicative, Data.Monoid.Generator.Combinators, Data.Monoid.Additive, Data.Monoid.Additive.Sugar, Data.Monoid.Multiplicative, Data.Monoid.Multiplicative.Sugar, Data.Monoid.Multiplicative.Transformer, Data.Seminearring, Data.Seminearring.Sugar, Data.Group, Data.Group.Sugar, Data.Ring, Data.Ring.Bool, Data.Ring.Number, Data.Ring.SugarData.Monoid.Reducer, Data.Monoid.Reducer.Char, Data.Monoid.Reducer.With, Data.Monoid.Unit, Data.Monoid.Monad.Writer.Strict, Data.Monoid.Monad.Writer.Lazy, Data.Monoid.Monad.ST.Strict, Data.Monoid.Monad.STM, Data.Monoid.Monad.ST.Lazy, Data.Monoid.Monad.State.Strict, Data.Monoid.Monad.State.Lazy, Data.Monoid.Monad.RWS.Strict, Data.Monoid.Monad.RWS.Lazy, Data.Monoid.Monad.Reader, Data.Monoid.Monad.IO, Data.Monoid.Monad.Identity, Data.Monoid.Monad.Either, Data.Monoid.Monad.Cont, Data.Monoid.Monad, Data.Monoid.Lexical.UTF8.Decoder, Data.Monoid.Lexical.SourcePosition, Data.Monoid.Generator, Data.Monoid.Lexical.Words, Data.Monoid.Reducer.Sugar, Data.Monoid.Applicative, Data.Monoid.Generator.Combinators, Data.Monoid.Additive, Data.Monoid.Additive.Sugar, Data.Monoid.Multiplicative, Data.Monoid.Multiplicative.Sugar, Data.Monoid.Multiplicative.Transformer, Data.Seminearring, Data.Seminearring.Sugar, Data.Group, Data.Group.Sugar, Data.Ring, Data.Ring.FromNum, Data.Ring.Sugar, Data.Monoid.Multiplicative.Sugar, Data.Monoid.Multiplicative.Transformer, Data.Seminearring, Data.Seminearring.Sugar, Data.Ring, Data.Ring.Bool, Data.Ring.Number, Data.Ring.Sugar, Data.Monoid.Multiplicative.Sugar, Data.Monoid.Multiplicative.Transformer, Data.Seminearring, Data.Seminearring.Sugar, Data.Ring, Data.Ring.FromNum, Data.Ring.Sugar, Data.Monoid.Additive.Sugar, Data.Monoid.Multiplicative, Data.Monoid.Multiplicative.Sugar, Data.Monoid.Multiplicative.Transformer, Data.Seminearring, Data.Seminearring.Sugar, Data.Group, Data.Group.Sugar, Data.Ring, Data.Ring.Bool, Data.Ring.Number, Data.Ring.Sugar, Data.Monoid.Additive.Sugar, Data.Monoid.Multiplicative, Data.Monoid.Multiplicative.Sugar, Data.Monoid.Multiplicative.Transformer, Data.Seminearring, Data.Seminearring.Sugar, Data.Group, Data.Group.Sugar, Data.Ring, Data.Ring.FromNum, Data.Ring.Sugarmonoids-0.1.1: Lots of Monoidsmonoids-0.1.2: Lots of Monoidsmonoids-0.1.1: Lots of Monoidsmonoids-0.1.2: Lots of Monoidsmonoids-0.1.1: Lots of Monoidsmonoids-0.1.2: Lots of MonoidsData.Ring.BoolData.Ring.NumberData.Ring.FromNum --- minimal definition unit or snoc -class Monoid m => Reducer c m where - unit :: c -> m - snoc :: m -> c -> m - cons :: c -> m -> m - - unit = snoc mempty - snoc m = mappend m . unit - cons = mappend . unit - -foldMapReduce :: (Foldable f, e `Reducer` m) => (a -> e) -> f a -> m -foldMapReduce f = foldMap (unit . f) - -foldReduce :: (Foldable f, e `Reducer` m) => f e -> m -foldReduce = foldMap unit - -instance (Reducer c m, Reducer c n) => Reducer c (m,n) where - unit x = (unit x,unit x) - (m,n) `snoc` x = (m `snoc` x, n `snoc` x) - x `cons` (m,n) = (x `cons` m, x `cons` n) - -instance (Reducer c m, Reducer c n, Reducer c o) => Reducer c (m,n,o) where - unit x = (unit x,unit x, unit x) - (m,n,o) `snoc` x = (m `snoc` x, n `snoc` x, o `snoc` x) - x `cons` (m,n,o) = (x `cons` m, x `cons` n, x `cons` o) - -instance (Reducer c m, Reducer c n, Reducer c o, Reducer c p) => Reducer c (m,n,o,p) where - unit x = (unit x,unit x, unit x, unit x) - (m,n,o,p) `snoc` x = (m `snoc` x, n `snoc` x, o `snoc` x, p `snoc` x) - x `cons` (m,n,o,p) = (x `cons` m, x `cons` n, x `cons` o, x `cons` p) - -instance Reducer c [c] where - unit = return - cons = (:) - xs `snoc` x = xs ++ [x] - -instance Reducer c () where - unit _ = () - _ `snoc` _ = () - _ `cons` _ = () - -instance Reducer Bool Any where - unit = Any - -instance Reducer Bool All where - unit = All - -instance Reducer (a -> a) (Endo a) where - unit = Endo - -instance Monoid a => Reducer a (Dual a) where - unit = Dual - -instance Num a => Reducer a (Sum a) where - unit = Sum - -instance Num a => Reducer a (Product a) where - unit = Product - -instance Reducer (Maybe a) (First a) where - unit = First - -instance Reducer a (First a) where - unit = First . Just - -instance Reducer (Maybe a) (Last a) where - unit = Last - -instance Reducer a (Last a) where - unit = Last . Just - --- orphan, which should be in Data.FingerTree -instance Measured v a => Monoid (FingerTree v a) where - mempty = empty - mappend = (><) - -instance Measured v a => Reducer a (FingerTree v a) where - unit = singleton - cons = (<|) - snoc = (|>) - -instance Reducer a (Seq a) where - unit = Seq.singleton - cons = (Seq.<|) - snoc = (Seq.|>) - -instance Reducer Int IntSet where - unit = IntSet.singleton - cons = IntSet.insert - snoc = flip IntSet.insert -- left bias irrelevant - -instance Ord a => Reducer a (Set a) where - unit = Set.singleton - cons = Set.insert - -- pedantic in case Eq doesn't implement structural equality - snoc s m | Set.member m s = s - | otherwise = Set.insert m s - -instance Reducer (Int,v) (IntMap v) where - unit = uncurry IntMap.singleton - cons = uncurry IntMap.insert - snoc = flip . uncurry . IntMap.insertWith $ const id - -instance Ord k => Reducer (k,v) (Map k v) where - unit = uncurry Map.singleton - cons = uncurry Map.insert - snoc = flip . uncurry . Map.insertWith $ const id +--import qualified Data.BitSet as BitSet +--import Data.BitSet (BitSet) + +-- minimal definition unit or snoc +class Monoid m => Reducer c m where + unit :: c -> m + snoc :: m -> c -> m + cons :: c -> m -> m + + unit = snoc mempty + snoc m = mappend m . unit + cons = mappend . unit + +foldMapReduce :: (Foldable f, e `Reducer` m) => (a -> e) -> f a -> m +foldMapReduce f = foldMap (unit . f) + +foldReduce :: (Foldable f, e `Reducer` m) => f e -> m +foldReduce = foldMap unit + +instance (Reducer c m, Reducer c n) => Reducer c (m,n) where + unit x = (unit x,unit x) + (m,n) `snoc` x = (m `snoc` x, n `snoc` x) + x `cons` (m,n) = (x `cons` m, x `cons` n) + +instance (Reducer c m, Reducer c n, Reducer c o) => Reducer c (m,n,o) where + unit x = (unit x,unit x, unit x) + (m,n,o) `snoc` x = (m `snoc` x, n `snoc` x, o `snoc` x) + x `cons` (m,n,o) = (x `cons` m, x `cons` n, x `cons` o) + +instance (Reducer c m, Reducer c n, Reducer c o, Reducer c p) => Reducer c (m,n,o,p) where + unit x = (unit x,unit x, unit x, unit x) + (m,n,o,p) `snoc` x = (m `snoc` x, n `snoc` x, o `snoc` x, p `snoc` x) + x `cons` (m,n,o,p) = (x `cons` m, x `cons` n, x `cons` o, x `cons` p) + +instance Reducer c [c] where + unit = return + cons = (:) + xs `snoc` x = xs ++ [x] + +instance Reducer c () where + unit _ = () + _ `snoc` _ = () + _ `cons` _ = () + +instance Reducer Bool Any where + unit = Any + +instance Reducer Bool All where + unit = All + +instance Reducer (a -> a) (Endo a) where + unit = Endo + +instance Monoid a => Reducer a (Dual a) where + unit = Dual + +instance Num a => Reducer a (Sum a) where + unit = Sum + +instance Num a => Reducer a (Product a) where + unit = Product + +instance Reducer (Maybe a) (First a) where + unit = First + +instance Reducer a (First a) where + unit = First . Just + +instance Reducer (Maybe a) (Last a) where + unit = Last + +instance Reducer a (Last a) where + unit = Last . Just + +-- orphan, which should be in Data.FingerTree +instance Measured v a => Monoid (FingerTree v a) where + mempty = empty + mappend = (><) + +instance Measured v a => Reducer a (FingerTree v a) where + unit = singleton + cons = (<|) + snoc = (|>) + +instance Reducer a (Seq a) where + unit = Seq.singleton + cons = (Seq.<|) + snoc = (Seq.|>) + +instance Reducer Int IntSet where + unit = IntSet.singleton + cons = IntSet.insert + snoc = flip IntSet.insert -- left bias irrelevant + +instance Ord a => Reducer a (Set a) where + unit = Set.singleton + cons = Set.insert + -- pedantic in case Eq doesn't implement structural equality + snoc s m | Set.member m s = s + | otherwise = Set.insert m s + +instance Reducer (Int,v) (IntMap v) where + unit = uncurry IntMap.singleton + cons = uncurry IntMap.insert + snoc = flip . uncurry . IntMap.insertWith $ const id + +instance Ord k => Reducer (k,v) (Map k v) where + unit = uncurry Map.singleton + cons = uncurry Map.insert + snoc = flip . uncurry . Map.insertWith $ const id + +{- +instance Enum a => Monoid (BitSet a) where + mempty = BitSet.empty + mappend = BitSet.union -- not yet present, contacted library author + +instance Enum a => Reducer a (BitSet a) where + unit m = BitSet.insert m BitSet.empty +-} }