refactor restart meth etc