anchor.diff:          success
           |> Array.Parallel.map(fun (x,y) -> 
               CRUD.create x y o365 
  -              (SPO.CRUD.formDigest o365 host digest items log).value items)
  +              (fun () -> SPO.CRUD.formDigest o365 host digest items log) items)
           |> Async.Parallel
           |> Async.RunSynchronously
           |> fun zs ->
             let failure  = ys |> Array.Parallel.choose(Either.failed)
             let failure' = zs |> Array.Parallel.choose(Either.failed)
   
  -          failure  |> Array.iter(log.print LogLevel.Error)
  -          failure' |> Array.iter(log.print LogLevel.Error)
  +          failure  |> Array.iter(log.print error)
  +          failure' |> Array.iter(log.print error)
   
             match items with
               | Files -> ()
  
positive.code:     // Error   = (1 <<< 2)
      // Verbose = (1 <<< 0) ||| (1 <<< 1) ||| (1 <<< 2)
      type LogLevel = 
          | Info    = 5 // Indicates logs for an informational message and errors
          | Warning = 6 // Indicates logs for a warning and errors
          | Error   = 4 // Indicates logs for an error.
          | Verbose = 7 // Indicates logs at all levels.
  
      let ts () = DateTime.Now.ToString("o") // ISO-8601
      let cw (s:string) = Console.WriteLine(s)
  
negative.code:             |> Seq.head
              |> fun x -> Double.Parse(s = x.Value)
            FormDigest.create value timeout (created ())
          with ex -> log.print error ex; raise ex
  
        let formDigest o365 (host:Uri) (digest:FormDigest) items log = 
          match digest.soonExpire items with
  