union type is EVIL EVIL EVIL