fix a bug in recovers