anchor.diff:              |> Cloud.Ignore
       }
               
  -
  +/// Cloud vector static API
   type CloudVector =
   
  +    /// <summary>
  +    ///     Creates a new CloudVector out of a collection of CloudSequence partitinons
  +    /// </summary>
  +    /// <param name="partitions">CloudSequences that constitute the vector.</param>
  +    /// <param name="enableCaching">Enable in-memory caching of partitions in worker roles. Defaults to true.</param>
       static member OfPartitions(partitions : seq<CloudSequence<'T>>, ?enableCaching : bool) : Cloud<CloudVector<'T>> = cloud {
           let partitions = Seq.toArray partitions
           if Array.isEmpty partitions then invalidArg "partitions" "partitions must be non-empty sequence."
  
positive.code: 
          new ConcatenatedCloudVector<'T>(components) :> CloudVector<'T>
  
  
      static member New<'T>(values : seq<'T>, maxPartitionSize : int64, ?enableCaching:bool) : Cloud<CloudVector<'T>> = cloud {
          let! partitions = CloudSequence.NewPartitioned(values, maxPartitionSize)
          return! CloudVector.OfPartitions(partitions, ?enableCaching = enableCaching)
  
negative.code:         return new AtomCloudVector<'T>(None, partitions, cacheAtom) :> CloudVector<'T>
      }
  
      /// <summary>
      ///     Creates a cloudvector instance using a collection of cloud files and provided deserializer method.
      /// </summary>
      /// <param name="files">Input file paths.</param>
      /// <param name="deserializer">Deserializer lambda for given file.</param>
      /// <param name="enableCaching">Enable in-memory caching for CloudVector instance. Defaults to true.</param>
      static member OfCloudFiles(files : seq<string>, deserializer : Stream -> seq<'T>, ?enableCaching) = cloud {
          let! partitions = 
              files 
              |> Seq.map (fun f -> CloudSequence.FromFile(f, deserializer, force = false))
              |> Cloud.Parallel
              |> Cloud.ToLocal
  
          return! CloudVector.OfPartitions(partitions, ?enableCaching = enableCaching)
      }
  
      /// <summary>
      ///     Merge a collection of cloud vectors into a single instance.
      /// </summary>
      /// <param name="components">CloudVector components.</param>
      static member Merge(components : seq<CloudVector<'T>>) : CloudVector<'T> =
          let components = 
              components
  