diff --git a/examples/Echo.hs b/examples/Echo.hs
deleted file mode 100644
--- a/examples/Echo.hs
+++ /dev/null
@@ -1,55 +0,0 @@
-{-# LANGUAGE DataKinds                #-}
-{-# LANGUAGE DisambiguateRecordFields #-}
-{-# LANGUAGE NamedFieldPuns           #-}
-{-# LANGUAGE OverloadedStrings        #-}
-{-# LANGUAGE TypeOperators            #-}
-
-module Main (main) where
-
-import           Control.Monad                        (forM_)
-import           Control.Monad.IO.Class               (liftIO)
-import           Control.Monad.Trans.Reader           (ReaderT, ask, runReaderT)
-import           Data.Maybe                           (fromMaybe)
-import           Data.String                          (fromString)
-import           Line.Bot.Client                      (Line, replyMessage,
-                                                       runLine)
-import           Line.Bot.Types                       as B
-import           Line.Bot.Webhook                     as W
-import           Network.Wai.Handler.Warp             (run)
-import           Network.Wai.Middleware.RequestLogger (logStdout)
-import           Servant
-import           Servant.Server                       (Context ((:.), EmptyContext))
-import           System.Environment                   (getEnv, lookupEnv)
-
-type WebM = ReaderT ChannelToken Handler
-
-type API = "webhook" :> Webhook
-
-echo :: Event -> Line NoContent
-echo EventMessage { message = W.MessageText { text }, replyToken } =
-  replyMessage replyToken [B.MessageText text Nothing]
-echo _ = return NoContent
-
-handleEvents :: [Event] -> WebM NoContent
-handleEvents events = do
-  token <- ask
-  _     <- liftIO $ forM_ events $ flip runLine token . echo
-  return NoContent
-
-echoServer :: ServerT API WebM
-echoServer = handleEvents . events
-
-app :: ChannelToken -> ChannelSecret -> Application
-app token secret = serveWithContext api context server
-  where
-    api = Proxy :: Proxy API
-    pc = Proxy :: Proxy '[ChannelSecret]
-    server = hoistServerWithContext api pc (`runReaderT` token) echoServer
-    context = secret :. EmptyContext
-
-main :: IO ()
-main = do
-  token  <- fromString <$> getEnv "CHANNEL_TOKEN"
-  secret <- fromString <$> getEnv "CHANNEL_SECRET"
-  port   <- fmap read  <$> lookupEnv "PORT"
-  run (fromMaybe 8000 port) $ logStdout $ app token secret
diff --git a/line-bot-sdk.cabal b/line-bot-sdk.cabal
--- a/line-bot-sdk.cabal
+++ b/line-bot-sdk.cabal
@@ -1,5 +1,5 @@
 name:                line-bot-sdk
-version:             0.7.1
+version:             0.7.2
 synopsis:            Haskell SDK for LINE Messaging API
 homepage:            https://github.com/moleike/line-bot-sdk#readme
 bug-reports:         https://github.com/moleike/line-bot-sdk/issues
@@ -41,9 +41,7 @@
     base                  >= 4.14.1 && < 4.15,
     bytestring            >= 0.10.12 && < 0.11,
     deepseq               >= 1.4.4 && < 1.5,
-    scientific            >= 0.3.6 && < 0.4,
     text                  >= 1.2.4 && < 1.3,
-    transformers          >= 0.5.6 && < 0.6,
     time                  >= 1.9.3 && < 1.10,
     mtl                   >= 2.2.2 && < 2.3,
     base64-bytestring     >= 1.1.0 && < 1.2,
@@ -59,22 +57,6 @@
     servant-client-core   >= 0.18.2 && < 0.19,
     servant-server        >= 0.18.2 && < 0.19,
     wai                   >= 3.2.3 && < 3.3
-
-  default-language:    Haskell2010
-
-executable echo-server
-  hs-source-dirs:      examples
-  main-is:             Echo.hs
-  ghc-options:         -threaded -rtsopts -with-rtsopts=-N
-  build-depends:
-    line-bot-sdk,
-    base,
-    servant,
-    servant-server,
-    transformers,
-    wai,
-    wai-extra             >= 3.1.6 && < 3.2,
-    warp                  >= 3.3.14 && < 3.4
 
   default-language:    Haskell2010
 
