added comments and excluded surplus return from class