public static <G extends Gene<?, G>, C extends Comparable<? super C>>
	Alterer<G, C> of(final Alterer<G, C> alterer, final int... indices) {
		return new PartialAlterer<>(alterer, new Projection(indices));
	}
Wraps the given {@code alterer}, so that it will only work on chromosomes
with the given chromosome indices.

@see #of(Alterer, IntRange)

@param alterer the alterer to user for altering the chromosomes with the
       given {@code indices}
@param indices the chromosomes indices (section)
@param <G> the gene type
@param <C> the fitness value type
@return a wrapped alterer which only works for the given chromosome
        section
@throws NullPointerException if the given {@code indices} array is
        {@code null}
@throws IllegalArgumentException if the given {@code indices} array is
        empty
@throws NegativeArraySizeException if one of the given {@code indices} is
        negative
jenetics/src/main/java/io/jenetics/PartialAlterer.java