add restart func