anchor.diff:      /// Task of `Some HttpContext` after writing to the body of the response.
       ///
       member this.WriteHtmlViewAsync (htmlView : XmlNode) =
  -        let sb = new StringBuilder()
  -        ViewBuilder.buildHtmlDocument sb htmlView |> ignore
  -        let chars = ArrayPool<char>.Shared.Rent(sb.Length)
  -        sb.CopyTo(0, chars, 0, sb.Length)
  -        let result = Encoding.UTF8.GetBytes(chars, 0, sb.Length)
  -        ArrayPool<char>.Shared.Return chars
  -
  +        let bytes = nodeToUtf8HtmlDoc htmlView
           this.SetContentType "text/html"
  -        this.WriteBytesAsync result
  +        this.WriteBytesAsync bytes
   
   // ---------------------------
   // HttpHandler functions
  
positive.code: /// A Giraffe `HttpHandler` function which can be composed into a bigger web application.
  ///
  let htmlView (htmlView : XmlNode) : HttpHandler =
      fun (next : HttpFunc) (ctx : HttpContext) ->
          ctx.WriteHtmlViewAsync htmlView
negative.code: open Microsoft.Net.Http.Headers
  open FSharp.Control.Tasks.V2.ContextInsensitive
  open Giraffe.GiraffeViewEngine
  
  let inline private nodeToUtf8HtmlDoc (node:XmlNode) : byte[] = 
      let sb = new StringBuilder()
      ViewBuilder.buildHtmlDocument sb node |> ignore
      let chars = ArrayPool<char>.Shared.Rent(sb.Length)
      sb.CopyTo(0, chars, 0, sb.Length)
      let result = Encoding.UTF8.GetBytes(chars, 0, sb.Length)
      ArrayPool<char>.Shared.Return chars
      result
  
  // ---------------------------
  // HttpContext extensions
  