fisrt draft of assignment2