docs: def kron(*matrices: np.ndarray) -> np.ndarray:
      """Computes the kronecker product of a sequence of matrices.
  
      A *args version of lambda args: functools.reduce(np.kron, args).
  
      Args:
          *matrices: The matrices and controls to combine with the kronecker
              product.
  
      Returns:
          The resulting matrix.
      """
      product = np.eye(1)
      for m in matrices:
          product = np.kron(product, m)
      return np.array(product)