why do we need to set these to self? Can't we just use `results.duration` in the callback below?