added Q Learner