private @Nullable Block getRightMostBlock() {
    Block rightMost = null;
    List<Block> subBlocks = getSubBlocks();
    while (!subBlocks.isEmpty()) {
      int lastIndex = subBlocks.size() - 1;
      rightMost = subBlocks.get(lastIndex);
      subBlocks = rightMost.getSubBlocks();
    }
    return rightMost;
  }
private @Nullable Block getRightMostBlock()