anchor.diff:          let pmon = state.ProcessManager
           do clientLogger.Logf "Client %s created" clientId
   
  -    /// Gets or sets the path for a local standalone worker executable.
  -    static member LocalWorkerExecutable
  -        with get () = match localWorkerExecutable with None -> invalidOp "unset executable path." | Some e -> e
  -        and set path = 
  -            lock lockObj (fun () ->
  -                let path = Path.GetFullPath path
  -                if File.Exists path then localWorkerExecutable <- Some path
  -                else raise <| FileNotFoundException(path))
  -
  -    /// Initialize a new local runtime instance with supplied worker count.
  -    static member SpawnLocal(config, workerCount, ?maxTasks : int) =
  -        let exe = Runtime.LocalWorkerExecutable
  -        if workerCount < 1 then invalidArg "workerCount" "must be positive."  
  -        let cfg = { Arguments.Configuration = config; Arguments.MaxTasks = defaultArg maxTasks Environment.ProcessorCount}
  -        do Async.RunSync(Configuration.ActivateAsync(config.WithAppendedId))
  -        let args = Config.ToBase64Pickle cfg
  -        let psi = new ProcessStartInfo(exe, args)
  -        psi.WorkingDirectory <- Path.GetDirectoryName exe
  -        psi.UseShellExecute <- true
  -        let _ = Array.Parallel.init workerCount (fun _ -> Process.Start psi)
  -        ()
  -
  -    /// Initialize a new local runtime instance with supplied worker count and return a handle.
  -    static member InitLocal(config, workerCount : int, ?maxTasks : int) : Runtime =
  -        Runtime.SpawnLocal(config, workerCount, ?maxTasks = maxTasks)
  -        Runtime.GetHandle(config)
  +        /// Gets or sets the path for a local standalone worker executable.
  +        static member LocalWorkerExecutable
  +            with get () = match localWorkerExecutable with None -> invalidOp "unset executable path." | Some e -> e
  +            and set path = 
  +                lock lockObj (fun () ->
  +                    let path = Path.GetFullPath path
  +                    if File.Exists path then localWorkerExecutable <- Some path
  +                    else raise <| FileNotFoundException(path))
  +
  +        /// Initialize a new local runtime instance with supplied worker count.
  +        static member SpawnLocal(config, workerCount, ?maxTasks : int) =
  +            let exe = Runtime.LocalWorkerExecutable
  +            if workerCount < 1 then invalidArg "workerCount" "must be positive."  
  +            let cfg = { Arguments.Configuration = config; Arguments.MaxTasks = defaultArg maxTasks Environment.ProcessorCount}
  +            do Async.RunSync(Configuration.ActivateAsync(config.WithAppendedId))
  +            let args = Config.ToBase64Pickle cfg
  +            let psi = new ProcessStartInfo(exe, args)
  +            psi.WorkingDirectory <- Path.GetDirectoryName exe
  +            psi.UseShellExecute <- true
  +            let _ = Array.Parallel.init workerCount (fun _ -> Process.Start psi)
  +            ()
  +
  +        /// Initialize a new local runtime instance with supplied worker count and return a handle.
  +        static member InitLocal(config, workerCount : int, ?maxTasks : int) : Runtime =
  +            Runtime.SpawnLocal(config, workerCount, ?maxTasks = maxTasks)
  +            Runtime.GetHandle(config)
   
           /// Provides common methods on store related primitives.
           member __.DefaultStoreClient = defaultStoreClient
  
positive.code:         /// <param name="channelProvider">Optional CloudChannelProvider.</param>
          /// <param name="cancellationToken">Optional CloudCancellationToken.</param>
          /// <param name="faultPolicy">Optional FaultPolicy. Defaults to InfiniteRetry.</param>
      member __.CreateProcessAsTask(workflow : Cloud<'T>, ?name : string, ?defaultDirectory : string,?fileStore : ICloudFileStore,?defaultAtomContainer : string,?atomProvider : ICloudAtomProvider,?defaultChannelContainer : string,?channelProvider : ICloudChannelProvider,?cancellationToken : ICloudCancellationToken, ?faultPolicy : FaultPolicy) =
              __.CreateProcessAsync(workflow, ?name = name, ?defaultDirectory = defaultDirectory, ?fileStore = fileStore, ?defaultAtomContainer = defaultAtomContainer, ?atomProvider = atomProvider, ?defaultChannelContainer = defaultChannelContainer, ?channelProvider = channelProvider, ?cancellationToken = cancellationToken, ?faultPolicy = faultPolicy )
              |> Async.StartAsTask
  
  
negative.code:         /// <param name="workflow">Workflow to be executed.</param>
          /// <param name="cancellationToken">Cancellation token for computation.</param>
          /// <param name="faultPolicy">Fault policy. Defaults to infinite retries.</param>
          member __.RunAsync(workflow : Cloud<'T>, ?cancellationToken : ICloudCancellationToken, ?faultPolicy) = async {
              let! p = __.CreateProcessAsync(workflow, ?cancellationToken = cancellationToken, ?faultPolicy = faultPolicy)
              try
                  return p.AwaitResult()
  