code: def testTensorArrayWriteGatherAndGradients(self):
      with self.session() as session, self.test_scope():
  
          def fn():
              ta = tensor_array_ops.TensorArray(
                  dtype=dtypes.float32, tensor_array_name="foo", size=10
              )
  
              values = constant_op.constant(
                  [[1.0 * x, -1.0 * x] for x in range(10)]
              )
              indices = constant_op.constant([1, 8])
  
              w = ta.unstack(values)
              g = w.gather(indices)
  
              # Test combined gradients + aggregation of read(0).
              grad = gradients_impl.gradients(
                  ys=[g],
                  xs=[values],
                  grad_ys=[[[2.0, 3.0], [4.0, 5.0]]],
              )
              return [[g], grad]
  
          g_vals, grad_vals = self.evaluate(xla.compile(fn))
  
          # Gradients for 8 of the 10 unread components are zero.
          expected_grad = np.zeros((10, 2))
          expected_grad[1] = [2.0, 3.0]
          expected_grad[8] = [4.0, 5.0]
  
          self.assertEqual(len(g_vals), 1)
          self.assertEqual(len(grad_vals), 1)
          self.assertAllEqual([[1.0, -1.0], [8.0, -8.0]], g_vals[0])
          self.assertAllEqual(expected_grad, grad_vals[0])
  
imports: import numpy
  from tensorflow.compiler.tests import xla_test
  from tensorflow.python.compiler.xla import xla
  from tensorflow.python.framework import constant_op
  from tensorflow.python.framework import dtypes
  from tensorflow.python.framework import errors
  from tensorflow.python.framework import ops
  from tensorflow.python.framework import test_util
  from tensorflow.python.ops import array_ops
  from tensorflow.python.ops import control_flow_util
  from tensorflow.python.ops import gen_data_flow_ops
  from tensorflow.python.ops import gradients_impl
  from tensorflow.python.ops import math_ops
  from tensorflow.python.ops import resource_variable_ops
  from tensorflow.python.ops import tensor_array_grad
  from tensorflow.python.ops import tensor_array_ops
  from tensorflow.python.ops import variables
  from tensorflow.python.platform import test
label_desc: Use image node_id 43 for calling the TensorArrayTest obj's underlying member method code with example usage: obj.testTensorArrayWriteGatherAndGradients() and returns: list