better progress tracking