public final @NotNull <T> JBIterable<@NotNull T> filterMap(@NotNull Function<? super E, ? extends T> function) {
    return intercept(iterator -> JBIterator.from(iterator).filterMap(Stateful.copy(function)));
  }
public final @NotNull <T> JBIterable<@NotNull T> filterMap(@NotNull Function<? super E, ? extends T> function)