anchor.diff:                  |> Some
               | _ -> None)
   
  +    member __.Item with get(path) = BlobBuilder.createBlockBlobFile defaultConnectionString container (Path.Combine(file, path))
  +    member __.TryGetBlockBlob(path, ?connectionString) = getSafe BlobBuilder.createBlockBlobFile connectionString path
  +    member __.TryGetPageBlob(path, ?connectionString) = getSafe BlobBuilder.createPageBlobFile connectionString path
  +
   /// Represents a container in blob storage.
   type BlobContainer internal (defaultConnectionString, container) =
       /// Gets a handle to the Azure SDK client for this container.
  
positive.code:     override this.ToString() = this.Name
  
  type BlockBlobFile internal (defaultConnectionString, container, file) =
      inherit BlobFile(defaultConnectionString, container, file, (getBlockBlobRef >> fun x -> x :> ICloudBlob))
      let getBlobRef connectionString = getBlockBlobRef(defaultArg connectionString defaultConnectionString, container, file)
  
      /// Gets a handle to the Azure SDK client for this blob.
  
negative.code:         this.BlobRef(connectionString).DownloadToFileAsync(path, FileMode.Create) |> awaitUnit
      
      /// Opens this file as a stream for reading.
      member this.OpenStream(?connectionString:string) = this.BlobRef(connectionString).OpenRead()
      
      /// Opens this file as a text stream for reading.
      member this.OpenStreamAsText(?connectionString) =
          match connectionString with
          | Some connectionString -> new StreamReader(this.OpenStream(connectionString))
          | None -> new StreamReader(this.OpenStream())
  
      /// Lazily read the contents of this blob a line at a time.
      member this.ReadLines(?connectionString) = seq {
          use stream =
              match connectionString with
              | Some connectionString -> this.OpenStreamAsText(connectionString)
              | None -> this.OpenStreamAsText()
          while not stream.EndOfStream do
              yield stream.ReadLine() }
  
      /// Gets the blob size in bytes.
      member __.Size(?connectionString) =
          match connectionString with
          | Some _ ->
              let blobRef = getBlobRef connectionString
              blobRef.FetchAttributes()
              blobRef.Properties
          | None -> blobProperties.Value
          |> fun props -> props.Length
  
      /// Gets the name of the blob
      member __.Name with get() = (getBlobRef None).Name
  