1st part of assignment 2