code: def fit_mle(self, data, b=None):
          
  
          data = np.array(data)
          length = len(data)
  
          if not b:
              b = np.sum(data)
  
          return _trunc_logser_solver(length, b), b
docs: %(super)s
  b : float
      The upper bound of the distribution. If None, fixed at sum(data)