advanced rollback functionality and  multiple models handling