anchor.diff:                  Async.Start(async {
                     try
                       let! r = next
  -                    Some r |> mb.Post
  +                    Some r |> safePost mb
                     finally
  -                    mb.Post None
  +                    safePost mb None
                   }, ct.Token)
                   return! loop (running+1)
                 elif running = 0 then
  
positive.code:                                   maxParallelism folder state (s:_ seq) =
      let mutable state = state
      let enumerator = s.GetEnumerator()
      use mb =
        MailboxProcessor.Start((fun mb ->
          let rec loop running =
  
negative.code: 
      let rec start n =
        if n > 0 then
          safePost mb None
          start (n-1)
  
      start maxParallelism
  