docs: def choose_candidate_pair(candidates):
          """
          Choose a pair of address candidates ensuring they have the same length and starting with the highest scored ones
  
          :type candidates: dict[str, int]
          :param candidates: Count how often the longest common substrings appeared in the messages
          :return:
          """
          highscored = sorted(candidates, key=candidates.get, reverse=True)
          for i, h_i in enumerate(highscored):
              for h_j in highscored[i+1:]:
                  if len(h_i) == len(h_j):
                      yield (h_i, h_j)