anchor.diff:  open System.Collections.Concurrent
   open System.ServiceProcess
   
  +
  +/// If set to true the ProcessHelper will start all processes with a custom ProcessEncoding.
  +/// If set to false (default) only mono processes will be changed.
  +let mutable AlwaysSetProcessEncoding = false
  +
  +/// The ProcessHelper will start all processes with this encoding if AlwaysSetProcessEncoding is set to true.
  +/// If AlwaysSetProcessEncoding is set to false (default) only mono processes will be changed.
  +let mutable ProcessEncoding = Encoding.UTF8
  +
   /// [omit]
   type internal ConcurrentBag<'T> with
       member internal this.Clear() =
  
positive.code:     if silent then
          proc.StartInfo.RedirectStandardOutput <- true
          proc.StartInfo.RedirectStandardError <- true
          if isMono then
              proc.StartInfo.StandardOutputEncoding <- Encoding.UTF8
              proc.StartInfo.StandardErrorEncoding  <- Encoding.UTF8
          proc.ErrorDataReceived.Add(fun d ->
              if d.Data <> null then errorF d.Data)
          proc.OutputDataReceived.Add(fun d ->
  
negative.code:         { ExitCode = exitCode
            Messages = messages
            Errors = errors }
  
  
  /// Runs the given process and returns the exit code.
  /// ## Parameters
  