finish assignment1