anchor.diff:              use response = (si.Request.GetResponse() :?> FtpWebResponse)
               logfn "create folder status = %s" (response.StatusDescription)
   
  -/// Uploads a given local folder to a given root dir on a Ftp server
  +/// Uploads a given local folder to a given root dir on a FTP server.
   /// ## Parameters
   ///  - `srcPath` - The local server path from which files need to be uploaded
  -///  - `rootDir` - The remote root dir where files need to be uploaded, leave this as empty, if files need to be uploaded to root dir of ftp server
  -///  - `server` - Ftp Server name (ex: "ftp://10.100.200.300:21/")
  -///  - `user` - Ftp Server login name (ex: "joebloggs")
  -///  - `pwd` - Ftp Server login password (ex: "J0Eblogg5")
  +///  - `rootDir` - The remote root dir where files need to be uploaded, leave this as empty, if files need to be uploaded to root dir of FTP server
  +///  - `server` - FTP Server name (ex: "ftp://10.100.200.300:21/")
  +///  - `user` - FTP Server login name (ex: "joebloggs")
  +///  - `pwd` - FTP Server login password (ex: "J0Eblogg5")
   let rec uploadAFolder server user pwd (srcPath : string) (rootDir : string) = 
       logfn "folder to upload=%s" srcPath
       let dirInfo = new DirectoryInfo(srcPath)
  
positive.code:             use reqStrm = si.Request.GetRequestStream()
              writeChunkToReqStream (br.ReadBytes 1024) reqStrm br
  
  /// Given a folder name, will check if that folder is present at a given root directory of a ftp server
  /// ## Parameters
  ///  - `server` - Ftp Server name (ex: "ftp://10.100.200.300:21/")
  ///  - `user` - Ftp Server login name (ex: "joebloggs")
  ///  - `pwd` - Ftp Server login password (ex: "J0Eblogg5")
  let private checkInExistingDirList server user pwd destPath fname = 
      destPath
      |> lastSlashPos
  
negative.code: /// Checks to see if the `ftp content` string containts the string `<DIR>    Given_Folder_Name`
  let inline regexCheck fname ftpContents = Regex.IsMatch(ftpContents, (sprintf @"\<DIR\>\s*%s\s+" fname))
  
  /// Gets the contents/listing of files and folders in a given FTP server folder
  /// ## Parameters
  ///  - `dirPath` - The full name of folder whose content need to be listed
  ///  - `server` - FTP Server name (ex: "ftp://10.100.200.300:21/")
  ///  - `user` - FTP Server login name (ex: "joebloggs")
  ///  - `pwd` - FTP Server login password (ex: "J0Eblogg5")
  let getFtpDirContents (server : string) (user : string) (pwd : string) (dirPath : string) = 
      logfn "getting ftp dir contents for %s" dirPath
      dirPath
  