updated genotyping infrastructure for abstract classes