private void setFirstAndLastBlocks() {

    first = blocks.get(0);

    last = new BasicBlock(++last_id);

    for (BasicBlock block : blocks) {
      if (block.getSuccessors().isEmpty()) {
        last.addPredecessor(block);
      }
    }
  }
private void setFirstAndLastBlocks()