Add support for unions