add restart feature