return null;
int[][] table = new int[2][2];
for ( String sample : stratifiedContexts.keySet() ) {
final PerReadAlleleLikelihoodMap indelLikelihoodMap = stratifiedLikelihoodMap.get(sample);
final AlignmentContext context = stratifiedContexts.get(sample);
if ( context == null || indelLikelihoodMap == null )
continue;
ReadBackedPileup pileup = context.getBasePileup();
if (pileup == null)
continue;
for (final PileupElement p: pileup) {
if ( p.getRead().getMappingQuality() < 20)
continue;
if (indelLikelihoodMap.containsPileupElement(p)) {
// to classify a pileup element as ref or alt, we look at the likelihood associated with the allele associated to this element.
// A pileup element then has a list of pairs of form (Allele, likelihood of this allele).
// To classify a pileup element as Ref or Alt, we look at the likelihood of corresponding alleles.
// If likelihood of ref allele > highest likelihood of all alt alleles + epsilon, then this pileup element is "ref"
// otherwise if highest alt allele likelihood is > ref likelihood + epsilon, then this pileup element it "alt"
// retrieve likelihood information corresponding to this read
Map<Allele,Double> el = indelLikelihoodMap.getLikelihoodsAssociatedWithPileupElement(p);
// by design, first element in LinkedHashMap was ref allele
boolean isFW = !p.getRead().getReadNegativeStrandFlag();
double refLikelihood=0.0, altLikelihood=Double.NEGATIVE_INFINITY;