refactor
add tests