completes assignment1