* @param y
     * @return
     */
    public static BigDecimal powerNoRounding(
            BigDecimal x,
            int y) {
        // x.pow(y) returned a mathematically incorrect result for
        // x = 1.0000000000000000000000000001, y1 = 100
        // Is x a "supernormal" number in this context?
        //BigDecimal result = x.pow(y1);// Don't attempt to support "supernormal" numbers.
        BigDecimal result = new BigDecimal(x.toString());
        for (int i = 1; i < y; i++) {
            result = result.multiply(x);
        }
        return result;
    }