recover from errors