anchor.diff:          fileNames
           |> Array.mapi (fun i fileName -> createGEODataFile fileName (sprintf "%s%s" path fileName) fileSizes.[i] datesModified.[i])
   
  +    ///Download a file from the GEO FTP server. Can be either uncompressed or binary.
       let downloadGEOFile (file:GEODataFile) (savePath:string) =
           let binaryExtensions = [|".zip";".gz";".rar"|]
           if Array.contains (Path.GetExtension file.FullPath) binaryExtensions then 
  
positive.code: 
      let private createGEODataFile fn fp s dm = {FileName=fn;FullPath=fp;Size=s;DateModified=dm}
  
      let getFTPDirectoryContents (path:string) =
  
          let fileNameRequest = FtpWebRequest.Create(path) :?> FtpWebRequest
  
negative.code: 
  module GEO =
  
      open System.IO
      open System.Net
  
      [<Literal>]
      let rootGEOAdress = @"ftp://ftp.ncbi.nlm.nih.gov/geo"
  
      module private FTPHelpers = 
  
          let getFileSize (filePath:string) = 
              let req  = WebRequest.Create(filePath) //:?> FtpWebRequest
  