public BTPosition<T> addRoot(T ele) throws NoEmptyTreeException {
		if (!isEmpty())
			throw new NoEmptyTreeException("Tree already has a root");
		size = 1;
		root = new BinaryTreeNode<T>(ele, null, null, null);
		return root;
	}