public BigInteger getMinimumDifference_as_BigInteger(){
        BigInteger diff = BigInteger.ZERO;
        if(this.type==12){
            ArrayMaths am = this.sort();
            BigInteger[] sorted = am.getArray_as_BigInteger();
            diff = sorted[1].subtract(sorted[0]);
            BigInteger minDiff = diff;
            for(int i=1; i<this.length-1; i++){
                diff = (sorted[i+1].subtract(sorted[i]));
                if(diff.compareTo(minDiff)==-1)minDiff = diff;
            }
            sorted = null;
            minDiff = null;
        }
        else{
            throw new IllegalArgumentException("Minimum difference may only be returned as the same type as the type of the internal array - you are trying to return as BigInteger the difference for a " + this.typeName[this.type] +"[] array");
        }
        return diff;
    }