updated class agent