diff --git a/fb.cabal b/fb.cabal
--- a/fb.cabal
+++ b/fb.cabal
@@ -1,5 +1,5 @@
 name:              fb
-version:           1.0.9
+version:           1.0.10
 license:           BSD3
 license-file:      LICENSE
 author:            Felipe Lessa
@@ -77,7 +77,7 @@
     , data-default
     , http-types
     , http-conduit         >= 2.0     && < 2.2
-    , attoparsec           >= 0.10.4  && < 0.13
+    , attoparsec           >= 0.10.4  && < 0.14
     , unordered-containers
     , aeson                >= 0.5     && < 0.9
     , base16-bytestring    >= 0.1
diff --git a/src/Facebook/Monad.hs b/src/Facebook/Monad.hs
--- a/src/Facebook/Monad.hs
+++ b/src/Facebook/Monad.hs
@@ -37,6 +37,9 @@
 import Control.Monad.Trans.Control ( MonadTransControl(..), MonadBaseControl(..)
                                    , ComposeSt, defaultLiftBaseWith
                                    , defaultRestoreM )
+#if MIN_VERSION_monad_control(1,0,0)
+import Control.Monad.Trans.Control (defaultLiftWith, defaultRestoreT)
+#endif
 import Control.Monad.Trans.Reader (ReaderT(..), ask, mapReaderT)
 import Data.Typeable (Typeable)
 import qualified Control.Monad.Trans.Resource as R
@@ -63,8 +66,8 @@
 instance MonadTransControl (FacebookT auth) where
 #if MIN_VERSION_monad_control(1,0,0)
     type StT (FacebookT auth) a = StT (ReaderT FbData) a
-    liftWith f = F $ liftWith (\run -> f (run . unF))
-    restoreT   = F . restoreT
+    liftWith = defaultLiftWith F unF
+    restoreT = defaultRestoreT F
 #else
     newtype StT (FacebookT auth) a = FbStT { unFbStT :: StT (ReaderT FbData) a }
     liftWith f = F $ liftWith (\run -> f (liftM FbStT . run . unF))
