public static <
			A,
			G extends Gene<A, G>,
			C extends Chromosome<G>
		>
		void write(
			final OutputStream out,
			final io.jenetics.Genotype<G> data,
			final Writer<? super C> chromosomeWriter
		)
			throws XMLStreamException
		{
			requireNonNull(data);
			requireNonNull(chromosomeWriter);
			requireNonNull(out);

			try (var xml = XML.writer(out)) {
				Genotype.<A, G, C>writer(chromosomeWriter).write(xml, data);
			}
		}
Write the given {@link io.jenetics.Genotype} to the given output
stream.

@param <A> the allele type
@param <G> the gene type
@param <C> the chromosome type
@param out the target output stream
@param data the genotype to write
@param chromosomeWriter the chromosome writer used to write the
       genotypes
@throws XMLStreamException if an error occurs while writing the
        chromosome
@throws NullPointerException if the one of the arguments is
        {@code null}
jenetics.xml/src/main/java/io/jenetics/xml/Writers.java