docs: protected static Consumer<Supplier<PrimitiveIterator.OfInt>> composeWithExceptions(Consumer<Supplier<PrimitiveIterator.OfInt>> a,
           Consumer<Supplier<PrimitiveIterator.OfInt>> b) {
        return (segments) -> {
           try {
              a.accept(segments);
           }
           catch (Throwable e1) {
              try {
                 b.accept(segments);
              }
              catch (Throwable e2) {
                 try {
                    e1.addSuppressed(e2);
                 } catch (Throwable ignore) {}
              }
              throw e1;
           }
           b.accept(segments);
        };
     }