Preserve whole object refactoring