refactor, testing updates