private int getMaxInd(int pos1, int pos2){
        if (Math.min(pos1, pos2) >= size)
            throw new ArrayIndexOutOfBoundsException(String.format(
					"Invalid data: %d, %d", pos1, pos2));
        if (Math.max(pos1, pos2) >= size) return Math.min(pos1, pos2);
        return heap.get(pos1).compareTo(heap.get(pos2)) > 0 ? pos1 : pos2;
    }