added restart callback