Homework 8. Initial commit.
Homework 8. basic implementation