FileSystem fs = input.fileSystem();
LOG.debug("Working directory: " + fs.baseDir().getAbsolutePath());
ExecutorService executorService = Executors.newFixedThreadPool(Runtime.getRuntime().availableProcessors() + 1);
List<Future<Void>> tasks = new ArrayList<Future<Void>>();
for (InputFile inputFile : input.filesToBlame()) {
tasks.add(submitTask(fs.baseDir(), output, inputFile, executorService));
}
for (Future<Void> task : tasks) {
try {
task.get();
} catch (ExecutionException e) {