}
public CanFindThreshold.ThresholdInfo[] thresholds(double[] pvalues, BoundaryType pvalueBoundary) throws HashOverflowException {
ScoreDistributionTop scores_hash = score_distribution_under_pvalue(ArrayExtensions.max(pvalues));
try {
return scores_hash.thresholds(pvalues, pvalueBoundary);
} catch (ScoreDistributionTop.NotRepresentativeDistribution exception) {
throw new RuntimeException("Should never be here", exception);
}
}