diff --git a/README.md b/README.md
--- a/README.md
+++ b/README.md
@@ -16,7 +16,7 @@
 ```
 extra-deps:
 - matrix-as-xyz-0.1.1.1
-- symmetry-operations-symbols-0.0.1.1
+- symmetry-operations-symbols-0.0.1.2
 ```
 
 Then start repl.
diff --git a/src/Data/Matrix/SymmetryOperationsSymbols.hs b/src/Data/Matrix/SymmetryOperationsSymbols.hs
--- a/src/Data/Matrix/SymmetryOperationsSymbols.hs
+++ b/src/Data/Matrix/SymmetryOperationsSymbols.hs
@@ -1,4 +1,4 @@
-{-# LANGUAGE FlexibleInstances #-}
+{-# LANGUAGE FlexibleInstances, CPP #-}
 
 {-|
 Module      : SymmetryOperationsSymbols
@@ -46,10 +46,16 @@
 -- for doctest
 import Data.Matrix.AsXYZ
 
+import Control.Monad.Fail (MonadFail)
+
+#if MIN_VERSION_base(4,11,0)
 import qualified Control.Monad.Fail as Fail
+#endif
 
+#if MIN_VERSION_base(4,11,0)
 instance Fail.MonadFail (Either String) where
   fail = Left
+#endif
 
 -- | Derivation of geometric representation of symmetry operations from given matrix of symmetry operations
 --
diff --git a/src/Data/Matrix/SymmetryOperationsSymbols/Common.hs b/src/Data/Matrix/SymmetryOperationsSymbols/Common.hs
--- a/src/Data/Matrix/SymmetryOperationsSymbols/Common.hs
+++ b/src/Data/Matrix/SymmetryOperationsSymbols/Common.hs
@@ -42,6 +42,8 @@
 
 import Data.Matrix.SymmetryOperationsSymbols.Symbol
 
+import Control.Monad.Fail (MonadFail)
+
 type ErrorMessage = String
 type SymbolSenseVectorOrientation = (Symbol,String,String,String)
 
diff --git a/src/Data/Matrix/SymmetryOperationsSymbols/GlideOrReflectionCase.hs b/src/Data/Matrix/SymmetryOperationsSymbols/GlideOrReflectionCase.hs
--- a/src/Data/Matrix/SymmetryOperationsSymbols/GlideOrReflectionCase.hs
+++ b/src/Data/Matrix/SymmetryOperationsSymbols/GlideOrReflectionCase.hs
@@ -27,6 +27,8 @@
 import Data.Matrix.AsXYZ
 import qualified Data.Matrix.SymmetryOperationsSymbols.SymmetryOperation as S
 
+import Control.Monad.Fail (MonadFail)
+
 -- | Case (ii) (c) W corresponds to a (glide) reflection
 glideOrReflectionCase :: (Monad m, MonadFail m, Integral a) => Matrix (Ratio a) -> m (S.SymmetryOperation a)
 glideOrReflectionCase m = arrange m <$> solvingEquation m
diff --git a/src/Data/Matrix/SymmetryOperationsSymbols/RotInversionCase.hs b/src/Data/Matrix/SymmetryOperationsSymbols/RotInversionCase.hs
--- a/src/Data/Matrix/SymmetryOperationsSymbols/RotInversionCase.hs
+++ b/src/Data/Matrix/SymmetryOperationsSymbols/RotInversionCase.hs
@@ -26,6 +26,8 @@
 import Data.Matrix.AsXYZ
 import Data.Matrix.SymmetryOperationsSymbols.SymmetryOperation
 
+import Control.Monad.Fail (MonadFail)
+
 -- | Case (ii) (b) W corresponds to an n-fold rotation
 rotInversionCase :: (Monad m, MonadFail m, Integral a) => Matrix (Ratio a) -> m (SymmetryOperation a)
 rotInversionCase m = arrange m <$> calc m
diff --git a/src/Data/Matrix/SymmetryOperationsSymbols/RotationCase.hs b/src/Data/Matrix/SymmetryOperationsSymbols/RotationCase.hs
--- a/src/Data/Matrix/SymmetryOperationsSymbols/RotationCase.hs
+++ b/src/Data/Matrix/SymmetryOperationsSymbols/RotationCase.hs
@@ -25,6 +25,8 @@
 import Data.Matrix.AsXYZ
 import Data.Matrix.SymmetryOperationsSymbols.SymmetryOperation
 
+import Control.Monad.Fail (MonadFail)
+
 -- | Case (ii) (a) W corresponds to a rotoinversion
 nFoldRotationCase :: (Monad m, MonadFail m, Integral a) => Matrix (Ratio a) -> m (SymmetryOperation a)
 nFoldRotationCase m = arrange m <$> solvingEquation m
diff --git a/symmetry-operations-symbols.cabal b/symmetry-operations-symbols.cabal
--- a/symmetry-operations-symbols.cabal
+++ b/symmetry-operations-symbols.cabal
@@ -4,10 +4,10 @@
 --
 -- see: https://github.com/sol/hpack
 --
--- hash: eeffc2b8d8d697ad118301d03222b4a08c17c39810fe01ee86e9abd9b3d67dbb
+-- hash: ad9aae34126c6880e0673941bf26f931a32589140d48d68735fe3519f77eb9b5
 
 name:           symmetry-operations-symbols
-version:        0.0.1.1
+version:        0.0.1.2
 description:    Please see the README on GitHub at <https://github.com/narumij/symmetry-operations-symbols#readme>
 homepage:       https://github.com/narumij/symmetry-operations-symbols#readme
 bug-reports:    https://github.com/narumij/symmetry-operations-symbols/issues
