unit tests passing - need to add error handling next