static Tree findDirsWithSizes_tree(File dir) { long clusterSize = assumedClusterSize(); long n = 0; new L> l2; for (File f : listFiles(dir)) if (f.isDirectory()) l2.add(findDirsWithSizes_tree(f)); else n += roundUpTo(clusterSize, f.length()); for (Tree f : l2) n += f.a.size; ret Tree(FileWithSize(dir, n), l2); }