undo map. need slices