public ArrayList<Object> upperOutliersAnscombe_as_double(double constant) {

		switch (type) {
		case 1:
			double[] dd = this.getArray_as_double();
			upperOutlierDetails = upperOutliersAnscombeAsArrayList(dd, constant);
			break;
		case 12:
			BigDecimal[] bd = this.getArray_as_BigDecimal();
			ArrayList<Object> ret = new ArrayList<Object>();
			ret = upperOutliersAnscombeAsArrayList(bd, new BigDecimal(constant));
			upperOutlierDetails.add(ret.get(0));
			BigDecimal[] bd1 = (BigDecimal[]) ret.get(1);
			ArrayMaths am1 = new ArrayMaths(bd1);
			upperOutlierDetails.add(am1.getArray_as_Double());
			upperOutlierDetails.add(ret.get(2));
			BigDecimal[] bd2 = (BigDecimal[]) ret.get(3);
			ArrayMaths am2 = new ArrayMaths(bd2);
			upperOutlierDetails.add(am2.getArray_as_Double());
			break;
		case 14:
			throw new IllegalArgumentException("Outlier detection of Complex is not supported");
		default:
			throw new IllegalArgumentException("This type number, " + type + ", should not be possible here!!!!");
		}
		upperDone = true;
		return upperOutlierDetails;
	}