@Override
  @NotNull
  public List<Block> getSubBlocks() {
    if (mySubBlocks == null) {
      mySubBlockByNode = buildSubBlocks();
      mySubBlocks = new ArrayList<>(mySubBlockByNode.values());
    }
    return Collections.unmodifiableList(mySubBlocks);
  }
@Override
  @NotNull
  public List<Block> getSubBlocks()