anchor.diff:      | :? FileNotFoundException as exn ->
           traceImportant <| sprintf "Could not copy file: %s" exn.FileName
   
  +let refreshEvent = new Event<_>()
  +
   let handleWatcherEvents (events:FileChange seq) =
       for e in events do
           let fi = fileInfo e.FullPath
  
positive.code:            homeFolder = Some (FullName outDir)
          }
      let app =
          Writers.setHeader "Cache-Control" "no-cache, no-store, must-revalidate"
          >>= Writers.setHeader "Pragma" "no-cache"
          >>= Writers.setHeader "Expires" "0"
          >>= browseHome
      startWebServerAsync serverConfig app |> snd |> Async.Start
      Process.Start "http://localhost:8083/index.html" |> ignore
  
  
negative.code: open Suave.Web
  open Suave.Http
  open Suave.Http.Files
  open Suave.Sockets
  open Suave.Sockets.Control
  open Suave.Sockets.AsyncSocket
  open Suave.WebSocket
  open Suave.Utils
  
  let outDir = __SOURCE_DIRECTORY__ @@ "output"
  let slidesDir = __SOURCE_DIRECTORY__ @@ "slides"
  