only one QuestSession class, seperate implementati