new class and enums