code: def testPdfOfSampleMultiDims(self):
      dist = gp.GeneralizedPareto(
          loc=0,
          scale=[[2.0], [3.0]],
          concentration=[-0.37, 0.11],
          validate_args=True,
      )
      num = 50000
      samples = dist.sample(num, seed=test_util.test_seed())
      pdfs = dist.prob(samples)
      sample_vals, pdf_vals = self.evaluate([samples, pdfs])
      self.assertEqual((num, 2, 2), samples.shape)
      self.assertEqual((num, 2, 2), pdfs.shape)
      self._assertIntegral(
          sample_vals[:, 0, 0], pdf_vals[:, 0, 0], err=0.02
      )
      self._assertIntegral(
          sample_vals[:, 0, 1], pdf_vals[:, 0, 1], err=0.02
      )
      self._assertIntegral(
          sample_vals[:, 1, 0], pdf_vals[:, 1, 0], err=0.02
      )
      self._assertIntegral(
          sample_vals[:, 1, 1], pdf_vals[:, 1, 1], err=0.02
      )
  
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 14 for calling the GeneralizedParetoTest obj's underlying member method code with example usage: obj.testPdfOfSampleMultiDims() without return types