add recovery and misc changes