public final @NotNull JBIterable<@NotNull List<E>> split(int size, boolean strict) {
    return split(size).filterMap(es -> {
      List<E> list = es.addAllTo(new ArrayList<>(size));
      return strict && list.size() < size ? null : list;
    });
  }
public final @NotNull JBIterable<@NotNull List<E>> split(int size, boolean strict)