code: def test_duplicate_axes_in_jax(self):
      if not JAX_MODE:
          self.skipTest("This error is JAX-only.")
      dist = sharded.Sharded(
          normal.Normal(0.0, 1.0), shard_axis_name="i"
      )
      with self.assertRaisesRegex(
          ValueError, "Found duplicate axis name"
      ):
          sharded.Sharded(dist, shard_axis_name="i")
      with self.assertRaisesRegex(
          ValueError, "Found duplicate axis name"
      ):
          sharded.Sharded(
              normal.Normal(0.0, 1.0), shard_axis_name=["i", "i"]
          )
  
imports: import tensorflow.compat.v2
  from tensorflow_probability.python.bijectors import invert
  from tensorflow_probability.python.distributions import exponential
  from tensorflow_probability.python.distributions import independent
  from tensorflow_probability.python.distributions import joint_distribution_coroutine
  from tensorflow_probability.python.distributions import log_prob_ratio
  from tensorflow_probability.python.distributions import normal
  from tensorflow_probability.python.distributions import sample
  from tensorflow_probability.python.distributions import transformed_distribution
  from tensorflow_probability.python.experimental.distribute import joint_distribution
  from tensorflow_probability.python.experimental.distribute import sharded
  from tensorflow_probability.python.experimental.distributions import increment_log_prob
  from tensorflow_probability.python.internal import distribute_test_lib
  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 ShardTest obj's underlying member method code with example usage: obj.test_duplicate_axes_in_jax() without return types