fixed save/restore