refactor wip