code: def adjoin(space, *lists, **kwargs):
      
      strlen = kwargs.pop('strlen', len)
      justfunc = kwargs.pop('justfunc', justify)
  
      out_lines = []
      newLists = []
      lengths = [max(map(strlen, x)) + space for x in lists[:-1]]
      # not the last one
      lengths.append(max(map(len, lists[-1])))
      maxLen = max(map(len, lists))
      for i, lst in enumerate(lists):
          nl = justfunc(lst, lengths[i], mode='left')
          nl.extend([' ' * lengths[i]] * (maxLen - len(lst)))
          newLists.append(nl)
      toJoin = zip(*newLists)
      for lines in toJoin:
          out_lines.append(_join_unicode(lines))
      return _join_unicode(out_lines, sep='\n')
docs: Glues together two sets of strings using the amount of space requested.
      The idea is to prettify.
  
      ----------
      space : int
          number of spaces for padding
      lists : str
          list of str which being joined
      strlen : callable
          function used to calculate the length of each str. Needed for unicode
          handling.
      justfunc : callable
          function used to justify str. Needed for unicode handling.