code: def MakePmf(self, steps=101, name=''):
          
          if self.alpha < 1 or self.beta < 1:
              cdf = self.MakeCdf()
              pmf = cdf.MakePmf()
              return pmf
  
          xs = [i / (steps - 1.0) for i in xrange(steps)]
          probs = [self.EvalPdf(x) for x in xs]
          pmf = MakePmfFromDict(dict(zip(xs, probs)), name)
          return pmf
docs: Returns a Pmf of this distribution.
  
          Note: Normally, we just evaluate the PDF at a sequence
          of points and treat the probability density as a probability
          mass.
  
          But if alpha or beta is less than one, we have to be
          more careful because the PDF goes to infinity at x=0
          and x=1.  In that case we evaluate the CDF and compute
          differences.