public final @NotNull Self unique(final @NotNull Function<? super T, Object> identity) {
    return intercept(traversal -> traversal.unique(identity));
  }
public final @NotNull Self unique(final @NotNull Function<? super T, Object> identity)