refactoring reply object