code: def transpose(a):
      if a.ndim != 2:
          raise Exception(
              "transpose expects its argument to be 2-dimensional, "
              "but a.ndim = {}, a.shape = {}.".format(a.ndim, a.shape)
          )
      result = DistArray([a.shape[1], a.shape[0]])
      for i in range(result.num_blocks[0]):
          for j in range(result.num_blocks[1]):
              result.object_refs[i, j] = ra.transpose.remote(
                  a.object_refs[j, i]
              )
      return result
  
imports: import numpy
  import ray
  import ray.experimental.array.remote
label_desc: Use image node_id 12 for calling a global function with example usage: transpose(a) and returns: result