uses stop function instead of pause to prevent looping