updates based on code review - round 2