docs: def sort_string_by_pairs(strings):
      """Group a list of strings by pairs, by matching those with only
      one character difference between each other together."""
      assert len(strings) % 2 == 0
      pairs = []
      strings = list(strings) # This shallow copies the list
      while strings:
          template = strings.pop()
          for i, candidate in enumerate(strings):
              if count_string_diff(template, candidate) == 1:
                  pair = [template, strings.pop(i)]
                  pair.sort()
                  pairs.append(pair)
                  break
      return pairs