rework enums