code: def adjoint(matrix, name=None):
      """Transposes the last two dimensions of and conjugates tensor `matrix`.
  
      For example:
  
      ```python
      x = tf.constant([[1 + 1j, 2 + 2j, 3 + 3j],
                       [4 + 4j, 5 + 5j, 6 + 6j]])
      tf.linalg.adjoint(x)  # [[1 - 1j, 4 - 4j],
                            #  [2 - 2j, 5 - 5j],
                            #  [3 - 3j, 6 - 6j]]
      ```
  
      Args:
        matrix:  A `Tensor`. Must be `float16`, `float32`, `float64`, `complex64`,
          or `complex128` with shape `[..., M, M]`.
        name:  A name to give this `Op` (optional).
  
      Returns:
        The adjoint (a.k.a. Hermitian transpose a.k.a. conjugate transpose) of
        matrix.
      """
      with ops.name_scope(name, "adjoint", [matrix]):
          matrix = ops.convert_to_tensor(matrix, name="matrix")
          return array_ops.matrix_transpose(matrix, conjugate=True)
  
imports: import numpy
  from tensorflow.python.framework import constant_op
  from tensorflow.python.framework import dtypes
  from tensorflow.python.framework import ops
  from tensorflow.python.framework import tensor_shape
  from tensorflow.python.ops import array_ops
  from tensorflow.python.ops import array_ops_stack
  from tensorflow.python.ops import check_ops
  from tensorflow.python.ops import cond
  from tensorflow.python.ops import control_flow_ops
  from tensorflow.python.ops import gen_linalg_ops
  from tensorflow.python.ops import linalg_ops
  from tensorflow.python.ops import map_fn
  from tensorflow.python.ops import math_ops
  from tensorflow.python.ops import special_math_ops
  from tensorflow.python.ops import stateless_random_ops
  from tensorflow.python.ops import while_loop
  from tensorflow.python.util import dispatch
  from tensorflow.python.util.tf_export import tf_export
label_desc: Use image node_id 2 for calling a global function with example usage: adjoint(matrix, name) and returns: array_ops