anchor.diff:    (values))
   
   (defmethod handle-request ((sock usocket) (req request))
  -  (let ((res (funcall (lookup (resource req) *handlers*)
  -		      (get-session! (session-token req))
  -		      (get-params req) 
  -		      (post-params req))))
  -    (write! res sock)))
  +  (aif (lookup (resource req) *handlers*)
  +       (let ((res (funcall it (get-session! (session-token req))
  +			   (get-params req) 
  +			   (when (typep req 'http-post) (post-params req)))))
  +	 (write! res sock)
  +	 (force-output (socket-stream sock))
  +	 (socket-close sock))))
   
   (defmethod write! ((res response) (stream stream))
     (flet ((write-ln (&rest strings)
   	   (mapc (lambda (str) (write-string str stream)) strings)
   	   (crlf stream)))
  -    (write-ln "HTML/1.1 " (response-code res))  
  +    (write-ln "HTTP/1.1 " (response-code res))  
       (write-ln "Content-Type: " (content-type res) "; charset=" (charset res))
       (write-ln "Cache-Control: no-cache, no-store, must-revalidate")
       (when (keep-alive? res) 
  
positive.code:     session))
  
  (defun get-session! (token)
    (let ((session (gethash token *sessions*)))
      (setf (last-poked session) (get-universal-time))
      session))
  
  (defmethod lookup (key (hash hash-table))
    (gethash key hash))
  
negative.code: 	(conns (make-hash-table))
          (buffers (make-hash-table)))
      (unwind-protect
  	 (loop (loop for ready in (wait-for-input (cons server (deal::hash-keys conns)) :ready-only t)
  		  do (if (typep ready 'stream-server-usocket)
  			 (setf (gethash (socket-accept ready) conns) :on)
  			 (let ((buf (gethash ready buffers (make-instance 'buffer))))
  