HW5: Fixed and finished.