template class TreeNode{ public: T data; int index; int active; TreeNode & operator=(TreeNode & treenode) { this->data=treenode.data; this->index=treenode.index; this->active=treenode.active; return *this; } };