code: def _bnd(self, xloc, dist, length, cache):
          
          lower, upper = evaluation.evaluate_bound(
              dist, xloc.reshape(1, -1))
          lower = lower.reshape(length, -1)
          upper = upper.reshape(length, -1)
          assert lower.shape == xloc.shape, (lower.shape, xloc.shape)
          assert upper.shape == xloc.shape
          return lower, upper
docs: boundary function.
  
          Example:
              >>> print(chaospy.Iid(chaospy.Uniform(0, 2), 2).range(
              ...     [[0.1, 0.2, 0.3], [0.2, 0.2, 0.3]]))
              [[[0. 0. 0.]
                [0. 0. 0.]]
              <BLANKLINE>
               [[2. 2. 2.]
                [2. 2. 2.]]]