def get_diff(self, other_mapping):
result = MultiField(name=self.name)<EOL>new_fields = set(self.fields.keys())<EOL>if not isinstance(other_mapping, MultiField):<EOL><INDENT>n_mapping = MultiField(name=self.name)<EOL>n_mapping.add_fields([other_mapping])<EOL>other_mapping = n_mapping<EOL><DEDENT>old_fields = set(other_mapping.fields.keys())<EOL>added = new_fields - old_fields<EOL>if added:<EOL><INDENT>result.add_fields([(add, self.fields[add]) for add in added])<EOL><DEDENT>if len(result.fields) > <NUM_LIT:0>:<EOL><INDENT>return result<EOL><DEDENT>return None<EOL>
Returns a Multifield with diff fields. If not changes, returns None
:param other_mapping:
:return: a Multifield or None