diff --git a/Data/Monoid/Self.hs b/Data/Monoid/Self.hs
--- a/Data/Monoid/Self.hs
+++ b/Data/Monoid/Self.hs
@@ -22,7 +22,7 @@
     ( Self(Self, getSelf)
     )  where
 
-import Data.Monoid (Monoid)
+import Data.Monoid (Monoid(..))
 import Data.Monoid.Reducer (Reducer, unit)
 
 newtype Self m = Self { getSelf :: m } deriving (Monoid)
@@ -32,3 +32,4 @@
 
 instance Functor Self where
     fmap f (Self x) = Self (f x)
+
diff --git a/Data/Monoid/Union.hs b/Data/Monoid/Union.hs
--- a/Data/Monoid/Union.hs
+++ b/Data/Monoid/Union.hs
@@ -31,14 +31,14 @@
 import Data.Monoid
 import Data.Monoid.Reducer
 
+{-# SPECIALIZE union :: IntMap a -> IntMap a -> IntMap a #-}
+{-# SPECIALIZE union :: Ord k => Map k a -> Map k a -> Map k a #-}
+{-# SPECIALIZE union :: Eq a => [a] -> [a] -> [a] #-}
+{-# SPECIALIZE union :: Ord a => Set a -> Set a -> Set a #-}
+{-# SPECIALIZE union :: IntSet -> IntSet -> IntSet #-}
 -- | A Container suitable for the 'Union' 'Monoid'
 class HasUnion f where
     empty :: f
-    {-# SPECIALIZE union :: IntMap a -> IntMap a -> IntMap a #-}
-    {-# SPECIALIZE union :: Ord k => Map k a -> Map k a -> Map k a #-}
-    {-# SPECIALIZE union :: Eq a => [a] -> [a] -> [a] #-}
-    {-# SPECIALIZE union :: Ord a => Set a -> Set a -> Set a #-}
-    {-# SPECIALIZE union :: IntSet -> IntSet -> IntSet #-}
     union :: f -> f -> f
 
 instance HasUnion (IntMap a) where
@@ -75,10 +75,10 @@
 instance Functor Union where
     fmap f (Union a) = Union (f a)
 
+{-# SPECIALIZE unionWith :: (a -> a -> a) -> IntMap a -> IntMap a -> IntMap a #-}
+{-# SPECIALIZE unionWith :: Ord k => (a -> a -> a) -> Map k a -> Map k a -> Map k a #-}
 -- | Polymorphic containers that we can supply an operation to handle unions with
 class Functor f => HasUnionWith f where
-    {-# SPECIALIZE unionWith :: (a -> a -> a) -> IntMap a -> IntMap a -> IntMap a #-}
-    {-# SPECIALIZE unionWith :: Ord k => (a -> a -> a) -> Map k a -> Map k a -> Map k a #-}
     unionWith :: (a -> a -> a) -> f a -> f a -> f a
     emptyWith :: f a 
 
diff --git a/monoids.cabal b/monoids.cabal
--- a/monoids.cabal
+++ b/monoids.cabal
@@ -1,5 +1,5 @@
 name:		monoids
-version:	0.2.0.4
+version:	0.3.2
 license:	BSD3
 license-file:   LICENSE
 author:		Edward A. Kmett
@@ -7,8 +7,8 @@
 stability:	experimental
 homepage:	http://github.com/ekmett/monoids
 category:	Data, Math, Numerical
-synopsis:	Monoids, specialized containers and a general map/reduce framework
-description:    Monoids, specialized containers and a general map/reduce framework
+synopsis:	Deprecated: Use 'reducers'
+description:    Deprecated: Use 'reducers'
 copyright:      (c) 2009 Edward A. Kmett
 build-type:     Simple
 cabal-version:  >=1.6
@@ -18,18 +18,18 @@
   location: git://github.com/ekmett/monoids.git
 
 flag optimize
-  description: Enable optimizations 
+  description: Enable optimizations
   default: False
 
 library
   build-depends: 
     base >= 4 && < 5,
-    array >= 0.2 && < 0.4,
+    array >= 0.2 && < 0.5,
     containers >= 0.2 && < 0.5,
     bytestring >= 0.9 && < 1.0,
     fingertree >= 0.0.1 && < 0.2,
     text >= 0.1 && < 0.12,
-    parallel >= 1.1 && < 3.2
+    parallel >= 1.1 && < 3.3
 
   exposed-modules:
     Data.Generator
