added recover methods