Added the class Agent