docs: def joint_shape(*args) -> tuple:
      """Given a set of arrays, return the joint shape.
  
      Parameters
      ----------
      args : array-likes
  
      Returns
      -------
      tuple of int
          Joint shape.
      """
      if len(args) == 0:
          return ()
      shape = []
      shapes = [a.shape for a in args]
      ndim = args[0].ndim
      for i in range(ndim):
          shape.append(max([s[i] for s in shapes]))
      return tuple(shape)