refactored Track