for 2nd assignment