code: def testQuantileFiniteGradientAtDifficultPoints(self, skewness):
      eps = np.finfo(self.dtype).eps
  
      def quantile(df, loc, scale, skewness, probs):
          dist = two_piece_student_t.TwoPieceStudentT(
              df=df,
              loc=loc,
              scale=scale,
              skewness=skewness,
              validate_args=True,
          )
          return dist.quantile(probs)
  
      df = tf.constant(6.0, self.dtype)
      loc = tf.constant(0.0, self.dtype)
      scale = tf.constant(1.0, self.dtype)
      probs = tf.constant(
          [np.square(eps), 0.5 - eps, 0.5, 0.5 + eps, 1.0 - eps],
          dtype=self.dtype,
      )
  
      value, grads = self.evaluate(
          gradient.value_and_gradient(
              quantile,
              [
                  df,
                  loc,
                  scale,
                  tf.constant(skewness, self.dtype),
                  probs,
              ],
          )
      )
      self.assertAllFinite(value)
      self.assertAllFinite(grads[0])  # d/d df
      self.assertAllFinite(grads[1])  # d/d loc
      self.assertAllFinite(grads[2])  # d/d scale
      self.assertAllFinite(grads[3])
  
imports: from absl.testing import parameterized
  import numpy
  import tensorflow.compat.v2
  from tensorflow_probability.python.distributions import two_piece_student_t
  from tensorflow_probability.python.internal import test_util
  from tensorflow_probability.python.math import gradient
label_desc: Use image node_id 17 for calling the _TwoPieceStudentTTest obj's underlying member method code with example usage: obj.testQuantileFiniteGradientAtDifficultPoints(skewness) and returns: dist