work in progress. addressing #8.