focus refactor