changed fields to use Enum() instead of separate tables