added safe snapshot restore