code: def adjoin(space: int, *lists: Sequence[str]) -> str:
      
      lengths = [max(map(len, x)) + space for x in lists[:-1]]
  
      # not the last one
      lengths.append(max(map(len, lists[-1])))
      max_len = max(map(len, lists))
      chains = (
          itertools.chain(
              (x.ljust(length) for x in lst),
              itertools.repeat(' ' * length, max_len - len(lst)),
          )
          for lst, length in zip(lists, lengths)
      )
      return '\n'.join(map(''.join, zip(*chains)))
docs: Glue together two sets of strings using `space`.