<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def __unify_unique_identities(self, uidentities, matcher, fast_matching, interactive):
 """Unify unique identities looking for similar identities."""


        self.total = len(uidentities)
        self.matched = 0

        if self.recovery and self.recovery_file.exists():
            print("Loading matches from recovery file: %s" % self.recovery_file.location())
            matched = self.recovery_file.load_matches()
        else:
            matched = match(uidentities, matcher, fastmode=fast_matching)
            # convert the matched identities to a common JSON format to ease resuming operations
            matched = self.__marshal_matches(matched)

        self.__merge(matched, interactive)

        if self.recovery:
            self.recovery_file.delete()