public void setTreeAt(int index, BTNode<T> val)
	{
		if(index == 0)
		{
			element = val.getElement();
			
			if(val.getLeft() != null)
				left = new BTNode(val.getLeft());
			else
				left = null;
			
			if(val.getRight() != null)
				right = new BTNode(val.getRight());
			else
				right = null;
		} else {
			if((left != null && left.getElement() != null))
			{
				left.setTreeAt(index - 1, val);
				
				if((right != null && right.getElement() != null))
					right.setTreeAt(index - 1 - left.count(), val);
			} else if((right != null && right.getElement() != null)) {
				right.setTreeAt(index - 1, val);
			}
		}
	}