diff --git a/changelog.md b/changelog.md
--- a/changelog.md
+++ b/changelog.md
@@ -1,3 +1,10 @@
+2009.4.51
+---------
+
+### Fix
+
+* do not depend on mps
+
 2009.4.30
 -----------
 
diff --git a/hack-handler-kibro.cabal b/hack-handler-kibro.cabal
--- a/hack-handler-kibro.cabal
+++ b/hack-handler-kibro.cabal
@@ -1,5 +1,5 @@
 Name:                 hack-handler-kibro
-Version:              2009.4.30
+Version:              2009.4.51
 Build-type:           Simple
 Synopsis:             Hack Kibro handler
 Description:          Hack Kibro handler
@@ -15,7 +15,7 @@
 
 library
   ghc-options: -Wall
-  build-depends: base, cgi, network, data-default >= 0.2, mps >= 2009.4.21, hack >= 2009.4.30, kibro >= 0.4.3
+  build-depends: base, cgi, network, data-default >= 0.2, hack >= 2009.4.51, kibro >= 0.4.3
   hs-source-dirs: src/
   exposed-modules:  
                     Hack.Handler.Kibro
diff --git a/src/Hack/Handler/Kibro.hs b/src/Hack/Handler/Kibro.hs
--- a/src/Hack/Handler/Kibro.hs
+++ b/src/Hack/Handler/Kibro.hs
@@ -6,9 +6,12 @@
 import Network.URI
 import Data.Default
 import Prelude hiding ((.), (^))
-import MPSUTF8
 import System.IO
 
+(.) :: a -> (a -> b) -> b
+a . f = f a
+infixl 9 .
+
 run :: Application -> IO ()
 run app' = startKibro [("", handle app')]
   where
@@ -31,17 +34,17 @@
         ,  server_name    = server_name'
         ,  server_port    = server_port'
         ,  hack_input     = hack_input'
-        ,  hack_errors    = \x -> hPutStr stderr (x.u2b)
         }
         .return
       where 
-        remove_question_mark = dropWhile (is '?')
+        remove_question_mark = dropWhile (== '?')
 
     handle app = do
       env <- get_env
       response <- app env .liftIO
 
       -- set response
-      response.headers.mapM_ (splash setHeader)
+      response.headers.mapM_ (uncurry setHeader)
       response.status.show.setHeader "Status"
       response.body.output
+
