diff --git a/skylark-client.cabal b/skylark-client.cabal
--- a/skylark-client.cabal
+++ b/skylark-client.cabal
@@ -1,5 +1,5 @@
 name:                  skylark-client
-version:               0.1.3
+version:               0.1.4
 synopsis:              Skylark client.
 description:           Skylark network client.
 homepage:              https://github.com/githubuser/skylark-client#readme
diff --git a/src/Network/Skylark/Client.hs b/src/Network/Skylark/Client.hs
--- a/src/Network/Skylark/Client.hs
+++ b/src/Network/Skylark/Client.hs
@@ -4,7 +4,6 @@
 
 module Network.Skylark.Client
   ( runSkylark
-  , runSkylark'
   ) where
 
 import Control.Concurrent.Async.Lifted
@@ -57,22 +56,10 @@
     , requestBody = requestBodySourceChunked $ sourceTBQueue queue
     }
 
--- | Run Skylark client with connections concurrent.
+-- | Run Skylark client with connections racing.
 --
 runSkylark :: MonadControl m => String -> ByteString -> Source m ByteString -> Sink ByteString m () -> m ()
 runSkylark url device source sink = do
-  manager   <- liftIO $ newManager tlsManagerSettings
-  request   <- parseRequest url
-  upQueue   <- liftIO $ atomically $ newTBQueue 8192
-  downQueue <- liftIO $ atomically $ newTBQueue 8192
-  void $ concurrently
-    (concurrently (download device manager request downQueue) (sourceTBQueue downQueue $$ sink))
-    (concurrently (source $$ sinkTBQueue upQueue) (upload device manager request upQueue))
-
--- | Run Skylark client with connections racing.
---
-runSkylark' :: MonadControl m => String -> ByteString -> Source m ByteString -> Sink ByteString m () -> m ()
-runSkylark' url device source sink = do
   manager   <- liftIO $ newManager tlsManagerSettings
   request   <- parseRequest url
   upQueue   <- liftIO $ atomically $ newTBQueue 8192
