first commit of ProgrammingAssignmemt2 by me