made listenNTimes only call back when all done
changed listenNTimes name to 'sample'