Lab 9 union function