start, stop, resume logic