completed refactor
cleanup