added queue type-safe enum