result = result.multiply(qc, MathContext.DECIMAL32);
result = result.multiply(qe, MathContext.DECIMAL32);
result = result.multiply(ql, MathContext.DECIMAL32);
assert result.compareTo(BigDecimal.ZERO) >= 0 && result.compareTo(BigDecimal.ONE) <= 0;
long round5 = result.scaleByPowerOfTen(5).longValue();
result = BigDecimal.valueOf(round5, 5);
assert result.compareTo(BigDecimal.ZERO) >= 0 && result.compareTo(BigDecimal.ONE) <= 0;
return result;
}