public static double HanleyMcNealVariance(double area, int positiveCount, int negativeCount)
{
double A = area;
// real positive cases
int Na = positiveCount;
// real negative cases
int Nn = negativeCount;
double Q1 = A / (2.0 - A);
double Q2 = 2 * A * A / (1.0 + A);
return (A * (1.0 - A) +
(Na - 1.0) * (Q1 - A * A) +
(Nn - 1.0) * (Q2 - A * A)) / (Na * Nn);
}