public void Copy(FileSystemData source, string destination, bool overwrite = false) {

			if (source.IsDirectory) {
				Copy((DirectoryData)source, destination, overwrite);
			}
			else {
				Copy((FileData)source, destination, overwrite);
			}
		}
 public void Copy(FileSystemData source, string destination, bool overwrite = false)
 {
     if (source.IsDirectory)
     {
         Copy((DirectoryData)source, destination, overwrite);
     }
     else
     {
         Copy((FileData)source, destination, overwrite);
     }
 }
 public void Delete(FileSystemData source)
 {
     if (source.IsDirectory)
     {
         Delete((DirectoryData)source);
     }
     else
     {
         Delete((FileData)source);
     }
 }
		public void Delete(FileSystemData source) {

			if (source.IsDirectory) {
				Delete((DirectoryData)source);
			}
			else {
				Delete((FileData)source);
			}
		}