immutable -> enum