code: def testFullyReparameterized(self):
      loc = tf.constant(4.0)
      scale = tf.constant(3.0)
      conc = tf.constant(2.0)
      _, grads = gradient.value_and_gradient(
          lambda *args: gp.GeneralizedPareto(
              *args, validate_args=True
          ).sample(  # pylint: disable=g-long-lambda
              100, seed=test_util.test_seed()
          ),
          [loc, scale, conc],
      )
      self.assertLen(grads, 3)
      self.assertAllNotNone(grads)
  
imports: import hypothesis
  import hypothesis.strategies
  import numpy
  from scipy import stats
  import tensorflow.compat.v2
  from tensorflow_probability.python.distributions import generalized_pareto
  from tensorflow_probability.python.internal import hypothesis_testlib
  from tensorflow_probability.python.internal import test_util
  from tensorflow_probability.python.math import gradient
label_desc: Use image node_id 11 for calling the GeneralizedParetoTest obj's underlying member method code with example usage: obj.testFullyReparameterized() without return types