code: def testDifferentiableFunctionNoneOutputs(self):
      @polymorphic_function.function
      def my_function(x):
          return x, None
  
      def wrapper(x):
          return my_function(x)[0]
  
      g = backprop.gradients_function(wrapper, [0])(
          constant_op.constant(0.0)
      )
      self.assertAllEqual(g[0], 1.0)
  
      @polymorphic_function.function
      def foo(a):
          return None, a * a
  
      x = constant_op.constant(5.0)
      with backprop.GradientTape() as tp:
          tp.watch(x)
          none, r = foo(x)
      g = tp.gradient(r, x)
  
      self.assertIs(none, None)
      self.assertAllEqual(r, 25.0)
      self.assertAllEqual(g, 2 * 5.0)
  
imports: from absl.testing import parameterized
  from tensorflow.python.eager import backprop
  from tensorflow.python.eager import context
  from tensorflow.python.eager.polymorphic_function import polymorphic_function
  from tensorflow.python.framework import config
  from tensorflow.python.framework import constant_op
  from tensorflow.python.framework import dtypes
  from tensorflow.python.framework import indexed_slices
  from tensorflow.python.framework import ops
  from tensorflow.python.framework import tensor_shape
  from tensorflow.python.framework import test_util
  from tensorflow.python.ops import array_ops
  from tensorflow.python.ops import cond
  from tensorflow.python.ops import gradients_impl
  from tensorflow.python.ops import math_ops
  from tensorflow.python.ops import nn_grad
  from tensorflow.python.ops import nn_ops
  from tensorflow.python.ops import resource_variable_ops
  from tensorflow.python.ops import variable_scope
  from tensorflow.python.ops import variables
  from tensorflow.python.ops import while_loop
  from tensorflow.python.platform import test
label_desc: Use image node_id 27 for calling the FunctionGradientsTest obj's underlying member method code with example usage: obj.testDifferentiableFunctionNoneOutputs() and returns: x,  None, my_function, None,  unknown