introduce recover option