diff --git a/pipes-cereal-plus.cabal b/pipes-cereal-plus.cabal
--- a/pipes-cereal-plus.cabal
+++ b/pipes-cereal-plus.cabal
@@ -1,7 +1,7 @@
 name:
   pipes-cereal-plus
 version:
-  0.3.1
+  0.3.2
 synopsis:
   A streaming serialization library on top of "pipes" and "cereal-plus"
 license:
@@ -41,45 +41,49 @@
   other-modules:
     PipesCerealPlus.Prelude
   build-depends:
-    cereal-plus >= 0.3.1 && < 0.4,
+    -- Serialization:
+    cereal-plus >= 0.3.3 && < 0.4,
+    -- Streaming:
     pipes-bytestring,
     pipes >= 4.0 && < 4.2,
-    errors,
+    -- Data:
     text,
     bytestring,
+    -- Control:
+    errors,
     mtl,
     base >= 4.5 && < 5
   default-extensions:
     Arrows
-    DeriveGeneric
-    ImpredicativeTypes
     BangPatterns
-    PatternGuards
+    ConstraintKinds
+    DataKinds
+    DefaultSignatures
+    DeriveDataTypeable
+    DeriveGeneric
+    EmptyDataDecls
+    FlexibleContexts
+    FlexibleInstances
+    FunctionalDependencies
     GADTs
-    StandaloneDeriving
+    GeneralizedNewtypeDeriving
+    ImpredicativeTypes
+    LambdaCase
+    LiberalTypeSynonyms
     MultiParamTypeClasses
-    ScopedTypeVariables
-    FlexibleInstances
-    TypeFamilies
-    TypeOperators
-    FlexibleContexts
+    MultiWayIf
     NoImplicitPrelude
-    EmptyDataDecls
-    DataKinds
     NoMonomorphismRestriction
-    RankNTypes
-    ConstraintKinds
-    DefaultSignatures
-    TupleSections
     OverloadedStrings
-    TemplateHaskell
+    PatternGuards
     QuasiQuotes
-    DeriveDataTypeable
-    GeneralizedNewtypeDeriving
+    RankNTypes
     RecordWildCards
-    MultiWayIf
-    LiberalTypeSynonyms
-    LambdaCase
+    ScopedTypeVariables
+    StandaloneDeriving
+    TemplateHaskell
+    TupleSections
+    TypeFamilies
+    TypeOperators
   default-language:
     Haskell2010
-
diff --git a/src/PipesCerealPlus/Prelude.hs b/src/PipesCerealPlus/Prelude.hs
--- a/src/PipesCerealPlus/Prelude.hs
+++ b/src/PipesCerealPlus/Prelude.hs
@@ -2,11 +2,7 @@
   ( 
     module Exports,
     LazyByteString,
-    (?:),
     traceM,
-    applyAll,
-    packText,
-    unpackText,
   )
   where
 
@@ -49,19 +45,20 @@
 
 -- mtl
 import Control.Monad.Identity as Exports hiding (mapM_, sequence_, forM_, msum, mapM, sequence, forM)
+import Control.Monad.State as Exports hiding (mapM_, sequence_, forM_, msum, mapM, sequence, forM)
 import Control.Monad.Reader as Exports hiding (mapM_, sequence_, forM_, msum, mapM, sequence, forM)
-import Control.Monad.Writer as Exports hiding (mapM_, sequence_, forM_, msum, mapM, sequence, forM)
+import Control.Monad.Writer as Exports hiding (mapM_, sequence_, forM_, msum, mapM, sequence, forM, Any)
 import Control.Monad.Trans as Exports
 
+-- errors
+import Control.Error as Exports
+
 -- bytestring
 import Data.ByteString as Exports (ByteString)
 
 -- text
 import Data.Text as Exports (Text)
 
--- errors
-import Control.Error as Exports
-
 -- pipes
 import Pipes as Exports
 
@@ -72,21 +69,10 @@
 
 
 import qualified Data.ByteString.Lazy
-import qualified Data.Text
 
 
 type LazyByteString = Data.ByteString.Lazy.ByteString
 
 
-(?:) :: Maybe a -> a -> a
-maybeA ?: b = fromMaybe b maybeA
-{-# INLINE (?:) #-}
-
 traceM :: (Monad m) => String -> m ()
 traceM s = trace s $ return ()
-
-applyAll :: Monad m => [a -> m b] -> a -> m [b]
-applyAll ops a = sequence $ map ($ a) ops
-
-packText = Data.Text.pack
-unpackText = Data.Text.unpack
