@Override
	protected int crossover(final MSeq<G> that, final MSeq<G> other) {
		assert that.length() == other.length();

		final int n = min(that.length(), other.length());
		final int k = min(n, _n);

		final var random = RandomRegistry.random();
		final int[] points = k > 0 ? Subsets.next(random, n, k) : new int[0];

		crossover(that, other, points);
		return 2;
	}
Return the number of crossover points.

@return the number of crossover points.
jenetics/src/main/java/io/jenetics/MultiPointCrossover.java