Genotyping methods