code: func (f FileInfo) WinsConflict(other FileInfo) bool {
  	// If only one of the files is invalid, that one loses.
  	if f.IsInvalid() != other.IsInvalid() {
  		return !f.IsInvalid()
  	}
  
  	// If a modification is in conflict with a delete, we pick the
  	// modification.
  	if !f.IsDeleted() && other.IsDeleted() {
  		return true
  	}
  	if f.IsDeleted() && !other.IsDeleted() {
  		return false
  	}
  
  	// The one with the newer modification time wins.
  	if f.ModTime().After(other.ModTime()) {
  		return true
  	}
  	if f.ModTime().Before(other.ModTime()) {
  		return false
  	}
  
  	// The modification times were equal. Use the device ID in the version
  	// vector as tie breaker.
  	return f.Version.Compare(other.Version) == ConcurrentGreater
  }
docs: // WinsConflict returns true if "f" is the one to choose when it is in
  // conflict with "other".