diff --git a/Nemesis b/Nemesis
--- a/Nemesis
+++ b/Nemesis
@@ -26,9 +26,14 @@
   task "i" (sh "ghci -isrc src/Hack2/Handler/Warp.hs")
   
 
-  desc "test"
-  task "test" $ do
-    sh "runghc test.hs"
+  desc "test hello"
+  task "hello" $ do
+    sh "runghc test/hello.hs"
+
+  desc "test ab"
+  task "ab" $ do
+    sh "runghc test/ab.hs"
+
   
   desc "show sloc"
   task "stat" $ do
diff --git a/hack2-handler-warp.cabal b/hack2-handler-warp.cabal
--- a/hack2-handler-warp.cabal
+++ b/hack2-handler-warp.cabal
@@ -1,5 +1,5 @@
 Name:                 hack2-handler-warp
-Version:              2011.6.20
+Version:              2011.6.20.1
 Build-type:           Simple
 Synopsis:             Hack2 warp handler
 Description:          Hack2 warp handler
diff --git a/src/Hack2/Handler/Warp.hs b/src/Hack2/Handler/Warp.hs
--- a/src/Hack2/Handler/Warp.hs
+++ b/src/Hack2/Handler/Warp.hs
@@ -22,6 +22,7 @@
 import qualified Network.HTTP.Types as HTTPTypes
 import qualified Data.CaseInsensitive as CaseInsensitive
 import Data.ByteString.Char8 (ByteString, pack)
+import qualified Data.ByteString.Char8 as B
 import Data.Enumerator (Enumerator, Iteratee (..), ($$), joinI, run_)
 import qualified Data.Enumerator.List as EL
 import Blaze.ByteString.Builder (Builder, fromByteString, fromLazyByteString)
@@ -50,7 +51,7 @@
   {
     requestMethod  = request.Wai.requestMethod.show.upper.Safe.readDef GET
   , pathInfo       = request.Wai.rawPathInfo 
-  , queryString    = request.Wai.rawQueryString
+  , queryString    = request.Wai.rawQueryString.B.dropWhile (is '?')
   , serverName     = request.Wai.serverName
   , serverPort     = request.Wai.serverPort
   , httpHeaders    = request.Wai.requestHeaders.map caseInsensitiveHeaderToHeader
