added level enum