start pause reset implemented