it's a course project written for my friend.