@Override
	public Iterator<Position<T>> iterator() {
		Iterable<Position<T>> ps = null;
		try {
			ps = positions();
		} catch (InvalidPositionException e) {
			e.printStackTrace();
		} catch (BoundaryViolationException e) {
			e.printStackTrace();
		} catch (EmptyTreeException e) {
			e.printStackTrace();
		}
		return ps.iterator();
	}