anchor.diff:  
       open System.Reflection
       open HttpMultipartParser
  +
  +    let [<Literal>] OwinContextKey = "OwinContext"
   
       type FormData =
           {
  
positive.code:                 |> Res.RenderLink
          }
  
      type OwinCookieUserSession(ctx: IOwinContext) =
  
          let refresh (cookie: string) =
              match cookie with
              | null -> ctx.Authentication.User <- null
              | cookie ->
                  let ticket = FormsAuthentication.Decrypt cookie
                  let principal = GenericPrincipal(FormsIdentity(ticket), [||])
                  ctx.Authentication.User <- principal
  
          do  // Using `try ... with` because `FormsAuthentication.Decrypt`
              // throws an exception when there is a cookie but its format is invalid
              try refresh ctx.Request.Cookies.[FormsAuthentication.FormsCookieName]
              with _ -> refresh null
  
          interface IUserSession with
  
  
negative.code:                         { new Web.IContext with
                              member this.UserSession = session :> _
                              member this.RequestUri = uri
                              member this.RootFolder = webRoot
                              member this.Environment = upcast Map.ofList [(OwinContextKey, context :> obj)]}
                      let! body = reader.ReadToEndAsync() |> Async.AwaitTask
                      let! resp =
                          server.HandleRequest(
  