decouple enums