// mark generated
getScript().markGenerated(targetID);
// prepare to normalize
final AnalystClusterCSV cluster = new AnalystClusterCSV();
cluster.setScript(getScript());
getAnalyst().setCurrentQuantTask(cluster);
cluster.setReport(new AnalystReportBridge(getAnalyst()));
final boolean headers = getScript().expectInputHeaders(sourceID);
cluster.analyze(getAnalyst(), sourceFile, headers, inputFormat);
cluster.setOutputFormat(outputFormat);
cluster.process(targetFile, clusters, getAnalyst(), DEFAULT_ITERATIONS);
getAnalyst().setCurrentQuantTask(null);
return cluster.shouldStop();
}