Stable version without undo