code: def rvs(self, random_state=None):
          r
          # No sampling distibution
          if self.dist is None:
              return self.value
  
          # Unconstrained samples
          rs = check_random_state(random_state)
          samples = self.dist.rvs(size=self.shape, random_state=rs)
  
          # Bound the samples
          samples = self.bounds.clip(samples)
  
          return samples
docs: r"""
          Draw a random value from this Parameter's distribution.
  
          If ``value`` was not initialised with a ``scipy.stats`` object, then
          the scalar/ndarray value is returned.
  
          Parameters
          ----------
          random_state : None, int or RandomState, optional
              random seed
  
          Returns
          -------
          ndarray :
              of size ``self.shape``, a random draw from the distribution, or
              ``self.value`` if not initialised with a ``scipy.stats`` object.
  
          Note
          ----
          Random draws are *clipped* to the bounds, and so it is up to the user
          to input a sensible sampling distribution!