union.cpp changed