properly handle user edits