anchor.diff:              do! Async.Sleep 500
               return! c.AwaitResult()
           | Some r -> return r
  -    }
  +    }   
   
       interface ICloudTask<'T> with
           member c.Id = id
  
positive.code: //  Distributed latch implementation
  //
  
  type private LatchMessage =
      | Increment of IReplyChannel<int>
      | GetValue of IReplyChannel<int>
  
  /// Distributed latch implementation
  type Latch private (source : ActorRef<LatchMessage>) =
      /// Atomically increment the latch
      member __.Increment () = source <!- Increment
      /// Returns the current latch value
      member __.Value = source <!= GetValue
      /// Initialize a new latch instance in the current process
      static member Init(init : int) =
          let behaviour count msg = async {
              match msg with
              | Increment rc ->
                  do! rc.Reply (count + 1)
                  return (count + 1)
              | GetValue rc ->
                  do! rc.Reply count
                  return count
  
negative.code:             |> Actor.Publish
              |> Actor.ref
  
          new Counter(ref)
  
  //
  //  Distributed read-only cell
  