hw3 essentially done