Finished final assigment