Evaluated finished and tested.

Recycled code from lab.