protected @NotNull List<T> enumerateStubs(@NotNull Stub root) {
    List<T> result = new ArrayList<>();
    //noinspection unchecked
    enumerateStubsInto(root, (List)result);
    return result;
  }
protected @NotNull List<T> enumerateStubs(@NotNull Stub root)