make tracker an interface