initial test coverage and refactoring
initial test coverage and refactoring
initial test coverage