@Override
	public Position<T> left(Position<T> p) throws BoundaryViolationException,
			InvalidPositionException {
		BTPosition<T> rp = checkPosition(p);
		Position<T> leftP = rp.getLeft();
		if (leftP == null)
			throw new BoundaryViolationException("No left child");
		return leftP;
	}