diff --git a/Adelie/QUse.hs b/Adelie/QUse.hs
--- a/Adelie/QUse.hs
+++ b/Adelie/QUse.hs
@@ -4,7 +4,7 @@
 
 module Adelie.QUse (qUse) where
 
-import Data.HashTable as HashTable
+import qualified Data.HashTable.IO as HT
 import Control.Monad (unless)
 
 import Adelie.Colour
@@ -65,7 +65,7 @@
         unless end' (putStrLn "<< no description >>"))
 
     desc' descs = do
-      r <- HashTable.lookup descs iUse 
+      r <- HT.lookup descs iUse
       case r of
         Just d  -> puts d >> return True
         Nothing -> return False
diff --git a/Adelie/UseDesc.hs b/Adelie/UseDesc.hs
--- a/Adelie/UseDesc.hs
+++ b/Adelie/UseDesc.hs
@@ -9,26 +9,26 @@
 ) where
 
 import Data.Char (isSpace)
-import Data.HashTable as HashTable
+import qualified Data.HashTable.IO as HT
 import Control.Monad (when)
 
 import Adelie.ListEx
 import Adelie.Portage
 
-type UseDescriptions = HashTable String String
+type UseDescriptions = HT.BasicHashTable String String
 
 ----------------------------------------------------------------
 
 readUseDesc :: IO UseDescriptions
 readUseDesc = do
-  table <- HashTable.new (==) hashString
+  table <- HT.new
   ls <- readFile useDesc
   mapM_ (useParser table) (lines ls)
   return table
 
 useParser :: UseDescriptions -> String -> IO ()
 useParser _ ('#':_) = return ()
-useParser table line = insert table use desc
+useParser table line = HT.insert table use desc
   where (use, desc) = myBreak line
 
 myBreak :: String -> (String, String)
@@ -41,7 +41,7 @@
 
 readUseDescPackage :: String -> String -> IO UseDescriptions
 readUseDescPackage start end = do
-  table <- HashTable.new (==) hashString
+  table <- HT.new
   ls <- readFile useDescPackage
   mapMUntil_ (useParser2 table start end) (lines ls)
   return table
@@ -58,7 +58,7 @@
 useParser2 table start end str = do
   case mid start catname end of
       LT -> return True
-      EQ -> insert table use desc >> return True
+      EQ -> HT.insert table use desc >> return True
       GT -> return False
   where str' = reverse $ dropWhile isSpace $ reverse str
         (catname, rest) = break2 (':' ==) str'
diff --git a/fquery.cabal b/fquery.cabal
--- a/fquery.cabal
+++ b/fquery.cabal
@@ -1,5 +1,5 @@
 Name:          fquery
-Version:       0.2.1.4
+Version:       0.2.1.5
 
 Author:        David Wang <millimillenary@gmail.com>, Sergei Trofimovich <slyfox@inbox.ru>
 Maintainer:    Sergei Trofimovich <slyfox@inbox.ru>
@@ -57,6 +57,7 @@
         base >= 2 && < 5,
         directory,
         extensible-exceptions,
+        hashtables,
         parsec,
         process,
         regex-compat,
