private Set<VirtualFile> findFiles(VirtualFile[] roots) {
    Set<VirtualFile> files = new HashSet<>();
    for (VirtualFile root : roots) {
      files.addAll(findFiles(root));
    }
    return files;
  }
private Set<VirtualFile> findFiles(VirtualFile[] roots)