@NotNull
  public <T extends RootUrlPair> List<T> filter(@NotNull List<T> list) {
    List<T> result = new ArrayList<>();

    list.sort(comparing(item -> item.getVirtualFile().getPath()));
    for (T child : list) {
      if (!alreadyRegistered(child, result)) {
        result.add(child);
      }
    }

    return result;
  }
@NotNull
  public <T extends RootUrlPair> List<T> filter(@NotNull List<T> list)