code: def run_fn(self, fn, args):
      if self.strategy:
          return tf.nest.map_structure(
              lambda x: x.values[0],
              self.evaluate(
                  self.strategy.run(
                      tf.function(fn, autograph=False), args
                  )
              ),
          )
      else:
          return self.evaluate(fn(*args))
  
file_path: probability/tensorflow_probability/python/experimental/math/manual_special_functions_test.py
imports: import functools
  from absl import flags
  from absl.testing import parameterized
  import mock
  import numpy
  import tensorflow.compat.v2
  from tensorflow_probability.python.experimental.math import manual_special_functions
  from tensorflow_probability.python.internal import dtype_util
  from tensorflow_probability.python.internal import test_util
  from tensorflow_probability.python.math import gradient
label_desc: Use image node_id 2 for calling the ManualSpecialFunctionsTest obj's underlying member method code with example usage: obj.run_fn(fn, args) and returns: tf, self