diff --git a/Network/DNS/StateBinary.hs b/Network/DNS/StateBinary.hs
--- a/Network/DNS/StateBinary.hs
+++ b/Network/DNS/StateBinary.hs
@@ -4,10 +4,9 @@
 import Blaze.ByteString.Builder
 import Control.Applicative
 import Control.Monad.State
-import Data.Monoid
-import Data.Attoparsec
+import Data.Attoparsec.ByteString
+import qualified Data.Attoparsec.ByteString.Lazy as AL
 import Data.Attoparsec.Enumerator
-import qualified Data.Attoparsec.Lazy as AL
 import Data.ByteString (ByteString)
 import qualified Data.ByteString as BS (unpack, length)
 import qualified Data.ByteString.Lazy as BL (ByteString)
@@ -17,10 +16,13 @@
 import qualified Data.IntMap as IM (insert, lookup, empty)
 import Data.Map (Map)
 import qualified Data.Map as M (insert, lookup, empty)
+import Data.Monoid
 import Data.Word
 import Network.DNS.Types
 import Prelude hiding (lookup, take)
 
+import qualified Data.Attoparsec.Types as T (Parser)
+
 ----------------------------------------------------------------
 
 type SPut = State WState Write
@@ -83,7 +85,7 @@
 
 ----------------------------------------------------------------
 
-type SGet = StateT PState Parser
+type SGet = StateT PState (T.Parser ByteString)
 
 data PState = PState {
     psDomain :: IntMap Domain
diff --git a/dns.cabal b/dns.cabal
--- a/dns.cabal
+++ b/dns.cabal
@@ -1,5 +1,5 @@
 Name:                   dns
-Version:                0.3.1
+Version:                0.3.2
 Author:                 Kazu Yamamoto <kazu@iij.ad.jp>
 Maintainer:             Kazu Yamamoto <kazu@iij.ad.jp>
 License:                BSD3
