private void inOrderPositions(Position<Entry<K, V>> p,
			ArrayList<Entry<K, V>> ps) throws InvalidPositionException,
			BoundaryViolationException {

		if (hasLeft(p))
			inOrderPositions(left(p), ps);
		ps.add(p.element());
		if (hasRight(p))
			inOrderPositions(right(p), ps);

	}