diff --git a/Control/Monad/Levels.hs b/Control/Monad/Levels.hs
--- a/Control/Monad/Levels.hs
+++ b/Control/Monad/Levels.hs
@@ -67,6 +67,8 @@
 
   Levels x >>= f = Levels (x `bind` (levels . f))
 
+  fail _ = Levels []
+
 bind :: [[a]] -> (a -> [[b]]) -> [[b]]
 bind x f = map concat (diagonals (map (foldr zipConc [] . map f) x))
 
diff --git a/level-monad.cabal b/level-monad.cabal
--- a/level-monad.cabal
+++ b/level-monad.cabal
@@ -1,5 +1,5 @@
 Name:          level-monad
-Version:       0.2.1
+Version:       0.2.2
 Cabal-Version: >= 1.6
 Synopsis:      Non-Determinism Monad for Level-Wise Search
 Description:   This Haskell library provides an implementation of the
