tracking refactor