for assignment1