Enum + Registry implementation