anchor.diff:      let appFunc =
           let siteletAppFunc = AppFunc(fun env ->
               let context = OwinContext(env) :> IOwinContext
  -            match dispatch cb sitelet context with
  +            let httpContext = HttpContext.Current // non-null if running on top of asp.net
  +            match dispatch cb sitelet context httpContext with
               | Some t -> t
               | None -> next.Invoke(env))
           if config.RemotingServer.IsSome then
  
positive.code:                     return refresh null
                  }
  
      [<Sealed>]
      type ContextBuilder(cfg) =
          let info = cfg.Metadata
  
negative.code: 
          let WriteResponse (resp: Task<Http.Response>) (out: IOwinResponse) =
              resp.ContinueWith(fun (t: Task<Http.Response>) ->
                  try
                      match t.Exception with
                      | null ->
                          let resp = t.Result
                          out.StatusCode <- resp.Status.Code
                          for name, hs in resp.Headers |> Seq.groupBy (fun h -> h.Name) do
                              out.Headers.AppendValues(name, [| for h in hs -> h.Value |])
                          let str = new MemoryStream()
                          resp.WriteBody(str :> _)
                          out.Write(str.ToArray())
                      | e ->
                          out.Write(sprintf "%A" e)
                  with e ->
                      out.Write(sprintf "%A" e)
              )
  
  