@Override
  public final @NotNull List<? extends DomElement> getStableValues(final @NotNull DomElement parent) {
    final List<? extends DomElement> list = getValues(parent);
    final ArrayList<DomElement> result = new ArrayList<>(list.size());
    final DomManager domManager = parent.getManager();
    for (int i = 0; i < list.size(); i++) {
      final int i1 = i;
      result.add(domManager.createStableValue((Factory<DomElement>)() -> {
        if (!parent.isValid()) return null;

        final List<? extends DomElement> domElements = getValues(parent);
        return domElements.size() > i1 ? domElements.get(i1) : null;
      }));
    }
    return result;
  }
@Override
  public final @NotNull List<? extends DomElement> getStableValues(final @NotNull DomElement parent)