diff --git a/ascii-progress.cabal b/ascii-progress.cabal
--- a/ascii-progress.cabal
+++ b/ascii-progress.cabal
@@ -1,5 +1,5 @@
 name:                ascii-progress
-version:             0.1.0.3
+version:             0.1.1.0
 synopsis:            A simple progress bar for the console.
 description:
     A simple Haskell progress bar for the console. Heavily borrows from TJ
@@ -21,8 +21,7 @@
 library
   exposed-modules:     System.Console.AsciiProgress
                      , System.Console.AsciiProgress.Internal
-  build-depends:       MissingH
-                     , ansi-terminal
+  build-depends:       ansi-terminal
                      , async >= 2.0.1.5
                      , base >=4.7 && <4.8
                      , data-default >= 0.5.3
@@ -32,8 +31,7 @@
 
 executable example
   main-is:             Example.hs
-  build-depends:       MissingH
-                     , ansi-terminal
+  build-depends:       ansi-terminal
                      , async >= 2.0.1.5
                      , base >=4.7 && <4.8
                      , data-default >= 0.5.3
@@ -45,8 +43,7 @@
 test-suite hspec
   type:                exitcode-stdio-1.0
   main-is: Spec.hs
-  build-depends:       MissingH
-                     , ansi-terminal
+  build-depends:       ansi-terminal
                      , async >= 2.0.1.5
                      , base >=4.7 && <4.8
                      , data-default >= 0.5.3
diff --git a/lib/System/Console/AsciiProgress/Internal.hs b/lib/System/Console/AsciiProgress/Internal.hs
--- a/lib/System/Console/AsciiProgress/Internal.hs
+++ b/lib/System/Console/AsciiProgress/Internal.hs
@@ -6,7 +6,6 @@
 import Control.Concurrent (Chan, MVar, newChan, newEmptyMVar, newMVar,
                            readMVar, tryPutMVar, tryReadMVar)
 import Data.Default (Default(..))
-import Data.List.Utils (replace)
 import Data.Time.Clock
 import Text.Printf
 
@@ -147,6 +146,28 @@
 -- "bazbiz"
 replaceMany :: Eq a => [([a], [a])] -> [a] -> [a]
 replaceMany pairs target = foldr (uncurry replace) target pairs
+
+-- |
+-- Replaces a subsequence by another in a sequence
+--
+-- Taken from http://bluebones.net/2007/01/replace-in-haskell/
+--
+-- >>> replace "foo" "baz" "foobar"
+-- "bazbar"
+-- >>> replace "some" "thing" "something something"
+-- "thingthing thingthing"
+-- >>> replace "not" "" "something"
+-- "something"
+-- >>> replace "" "here" "something"
+-- "heresomething"
+replace :: Eq a => [a] -> [a] -> [a] -> [a]
+replace _ _ [] = []
+replace [] new target = new ++ target
+replace old new target@(t:ts) =
+  if take len target == old
+      then new ++ replace old new (drop len target)
+      else t : replace old new ts
+  where len = length old
 
 -- |
 -- Forces an MVar's contents to be read or swaped by a default value, even if
