diff --git a/deepseq-bounded.cabal b/deepseq-bounded.cabal
--- a/deepseq-bounded.cabal
+++ b/deepseq-bounded.cabal
@@ -1,6 +1,6 @@
 
 name:		deepseq-bounded
-version:        0.5.2
+version:        0.5.3
 synopsis:       Bounded deepseq, including support for generic deriving
 homepage:       http://fremissant.net/deepseq-bounded
 license:	BSD3
@@ -156,35 +156,32 @@
 --ghc-options:         -fenable-rewrite-rules -O2
 
   build-depends:
-      base < 5
---    base       >= 4.3 && < 4.8
---    base >= 4.5 && < 4.8
-    , array
---  , array      >= 0.3 && < 0.6
---  , sai-shape-syb
---- , ghc-syb-utils
-    -- for Data.Tree
---  , containers
-    , random
 
+      base >= 4 && < 5
+--- , base-4.7.0.1
+
+    , array <= 0.5.0.0
+
+    , random <= 1.1
+
   if ! flag(HASKELL98_FRAGMENT)
      build-depends:
-         syb
+         syb <= 0.4.2
 
   -- deepseq not used for any legitimate reason, unless USE_WW_DEEPSEQ;
   -- but it's used in some debugging and testing code (although probably
   -- shouldn't be), so the dep stays for now:
   build-depends:
-      deepseq
+      deepseq <= 1.3.0.2
 --    deepseq >= 1.2.0.1 && < 1.4
 
   if flag(USE_WW_DEEPSEQ)
      build-depends:
-         deepseq
+         deepseq <= 1.3.0.2
 --       deepseq >= 1.2.0.1 && < 1.4
      if ! flag(HASKELL98_FRAGMENT)
         build-depends:
-            deepseq-generics
+            deepseq-generics <= 0.1.1.2
      cpp-options: -DUSE_WW_DEEPSEQ=1
   else
      cpp-options: -DUSE_WW_DEEPSEQ=0
@@ -197,7 +194,7 @@
   if ! flag(HASKELL98_FRAGMENT)
       if flag(USE_SOP)
          build-depends:
-             generics-sop
+             generics-sop <= 0.1.0.4
          cpp-options: -DUSE_SOP=1
       else
          cpp-options: -DUSE_SOP=0
@@ -216,12 +213,12 @@
 
   if flag(PARALLELISM_EXPERIMENT)
      build-depends:
-         parallel
+         parallel <= 3.2.0.5
 
 --if flag(SEQUENTIALISM_EXPERIMENT)
 --   build-depends:
 --       -- yes, really
---       parallel
+--       parallel <= 3.2.0.5
 
   if flag(PARALLELISM_EXPERIMENT)
      cpp-options: -DPARALLELISM_EXPERIMENT=1
@@ -265,35 +262,37 @@
   ghc-options:         -fenable-rewrite-rules -O2
 
   build-depends:
-      base
-    , deepseq-bounded
-    , HUnit
-    , random
+      base > 4 && <= 5
+    , deepseq-bounded == 0.5.3
+    , HUnit <= 1.2.5.2
+    , random <= 1.1
 
-    , template-haskell
+--  , template-haskell
+    , template-haskell <= 2.9.0.0
 
   if ! flag(HASKELL98_FRAGMENT)
      build-depends:
          ghc-prim
+--       ghc-prim <= 0.3.1.0
 
   if ! flag(HASKELL98_FRAGMENT)
      build-depends:
-         syb
+         syb <= 0.4.2
 
   -- deepseq not used for any legitimate reason, unless USE_WW_DEEPSEQ;
   -- but it's used in some debugging and testing code (although probably
   -- shouldn't be), so the dep stays for now:
   build-depends:
-      deepseq
+      deepseq <= 1.3.0.2
 --    deepseq >= 1.2.0.1 && < 1.4
 
   if flag(USE_WW_DEEPSEQ)
      build-depends:
-         deepseq
+         deepseq <= 1.3.0.2
 --       deepseq >= 1.2.0.1 && < 1.4
      if ! flag(HASKELL98_FRAGMENT)
          build-depends:
-             deepseq-generics
+             deepseq-generics <= 0.1.1.2
      cpp-options: -DUSE_WW_DEEPSEQ=1
   else
      cpp-options: -DUSE_WW_DEEPSEQ=0
@@ -301,7 +300,7 @@
   if ! flag(HASKELL98_FRAGMENT)
       if flag(USE_SOP)
          build-depends:
-             generics-sop
+             generics-sop <= 0.1.0.4
          cpp-options: -DUSE_SOP=1
       else
          cpp-options: -DUSE_SOP=0
@@ -315,12 +314,12 @@
 
   if flag(PARALLELISM_EXPERIMENT)
      build-depends:
-         parallel
+         parallel <= 3.2.0.5
 
 --if flag(SEQUENTIALISM_EXPERIMENT)
 --   build-depends:
 --       -- yes, really
---       parallel
+--       parallel <= 3.2.0.5
 
   if flag(PARALLELISM_EXPERIMENT)
      cpp-options: -DPARALLELISM_EXPERIMENT=1
@@ -338,4 +337,5 @@
      cpp-options: -DJUST_ALIAS_GSEQABLE=0
 
 }
+
 
diff --git a/src/Control/DeepSeq/Bounded.hs b/src/Control/DeepSeq/Bounded.hs
--- a/src/Control/DeepSeq/Bounded.hs
+++ b/src/Control/DeepSeq/Bounded.hs
@@ -68,6 +68,10 @@
 
      , Rose(..)
 
+     -- * Forced evaluation "molecular style"
+
+     , module Control.DeepSeq.Bounded.Seqable
+
      -- * Generic deriving support via "Generics.SOP"
 
 #if USE_SOP
@@ -79,11 +83,6 @@
      , module Control.DeepSeq.Bounded.Generics.GNFDataP
 #endif
 
-     -- * Forced evaluation "molecular style"
-
-     , module Control.DeepSeq.Bounded.Seqable
-
-
 #if USE_WW_DEEPSEQ
      -- * Re-exported
 
@@ -95,6 +94,7 @@
 -------------------------------------------------------------------------------
 
   import Control.DeepSeq.Bounded.Seqable
+
   import Control.DeepSeq.Bounded.NFDataN
 
   import Control.DeepSeq.Bounded.Pattern
diff --git a/src/Control/DeepSeq/Bounded/Generics.hs b/src/Control/DeepSeq/Bounded/Generics.hs
--- a/src/Control/DeepSeq/Bounded/Generics.hs
+++ b/src/Control/DeepSeq/Bounded/Generics.hs
@@ -10,7 +10,7 @@
 -- Stability   :  provisional
 -- Portability :  GHC
 --
--- Support for generic deriving (via "Generics.SOP") of 'NFDataN' and 'NFDataP' instances.
+-- Support for generic deriving (via "Generics.SOP") of 'NFDataN' and 'NFDataP' instances.  Also, "SOP" generic functions implementing "Seqable" without a class and instances.
 --
 -- This metaboilerplate is standard for using the generic deriving
 -- facilities of GHC.Generics and Generics.SOP.  Consider
