add top_object_name parameter. refactoring intent