pre-edit functionality