added auditing to save method