@Override
  public Library @NotNull [] getLibraries() {
    List<Library> result = new ArrayList<>();
    Iterator<Library> libraryIterator = getLibraryIterator();
    while (libraryIterator.hasNext()) {
      result.add(libraryIterator.next());
    }
    return result.toArray(Library.EMPTY_ARRAY);
  }
@Override
  public Library @NotNull [] getLibraries()