handle union tags