@Override
public Dua[] analyze(final Graph<Block> graph, final int vars) {
this.graph = graph;
final List<Dua> list = new ArrayList<Dua>();
for (final Block block : graph) {
final BitSetIterator it = block.defs();
while (it.hasNext()) {
DFS(it.next(), block, list);
}
}
return list.toArray(new Dua[list.size()]);
}