code: def _get_handle_mover(graph, feeder, handle):
      """Return a move subgraph for this pair of feeder and handle."""
      dtype = _get_handle_feeder(graph, feeder)
      if dtype is None:
          return None
      handle_device = TensorHandle._get_device_name(handle)
      if feeder.op.device == handle_device:
          return None
      # Now we know we have to move the tensor.
      graph_key = TensorHandle._get_mover_key(feeder, handle)
      result = graph._handle_movers.get(graph_key)
      if result is None:
          # Create mover if we haven't done it.
          holder, reader = _get_handle_reader(graph, handle, dtype)
          with graph.as_default(), graph.device(feeder.op.device):
              mover = gen_data_flow_ops.get_session_handle(reader)
          result = (holder, mover)
          graph._handle_movers[graph_key] = result
      return result
  
imports: import numpy
  from tensorflow.core.framework import resource_handle_pb2
  from tensorflow.python.client import pywrap_tf_session
  from tensorflow.python.framework import device
  from tensorflow.python.framework import dtypes
  from tensorflow.python.framework import ops
  from tensorflow.python.framework import tensor
  from tensorflow.python.ops import array_ops
  from tensorflow.python.ops import gen_data_flow_ops
  from tensorflow.python.util import compat
  from tensorflow.python.util.tf_export import tf_export
label_desc: Use image node_id 8 for calling a global function with example usage: _get_handle_mover(graph, feeder, handle) and returns: result, None, None