@Override
            public R next() {
                boolean b1 = it1.hasNext();
                boolean b2 = it2.hasNext();
                boolean b3 = it3.hasNext();
                boolean b4 = it4.hasNext();
                boolean b5 = it5.hasNext();
                boolean b6 = it6.hasNext();
                boolean b7 = it7.hasNext();
                boolean b8 = it8.hasNext();
                boolean b9 = it9.hasNext();
                boolean b10 = it10.hasNext();
                boolean b11 = it11.hasNext();
                boolean b12 = it12.hasNext();
                boolean b13 = it13.hasNext();
                boolean b14 = it14.hasNext();
                
                if (!b1 && !b2 && !b3 && !b4 && !b5 && !b6 && !b7 && !b8 && !b9 && !b10 && !b11 && !b12 && !b13 && !b14)
                    throw new NoSuchElementException("next on empty iterator");
                
                return zipper.apply(
                    b1 ? it1.next() : default1,
                    b2 ? it2.next() : default2,
                    b3 ? it3.next() : default3,
                    b4 ? it4.next() : default4,
                    b5 ? it5.next() : default5,
                    b6 ? it6.next() : default6,
                    b7 ? it7.next() : default7,
                    b8 ? it8.next() : default8,
                    b9 ? it9.next() : default9,
                    b10 ? it10.next() : default10,
                    b11 ? it11.next() : default11,
                    b12 ? it12.next() : default12,
                    b13 ? it13.next() : default13,
                    b14 ? it14.next() : default14
                );
            }
Zip two streams into one using a {@link BiFunction} to produce resulting values,
when one of streams will end, a default value for that stream will be provided instead -
so the resulting stream will be as long as the longest of the two streams.
<p>
<pre><code>
// ("1:a", "2:x", "3:x")
Seq.zipAll(Seq.of(1, 2, 3), Seq.of("a"), 0, "x", (i, s) -> i + ":" + s)
</code></pre>
jOOL-java-8/src/main/java/org/jooq/lambda/Seq.java