handles all the interpretation for learning