required functionality working

Homework lab submission.