docs: def discretize(self, method, *args, **kwargs):
          """
          Discretizes the continuous distribution into discrete
          probability masses using specified method.
  
          Parameters
          ----------
          method: string, BaseDiscretizer instance
              A Discretizer Class from pgmpy.factors.discretize
  
          *args, **kwargs: values
              The parameters to be given to the Discretizer Class.
  
          Returns
          -------
          An n-D array or a DiscreteFactor object according to the discretiztion
          method used.
  
          Examples
          --------
          >>> import numpy as np
          >>> from scipy.special import beta
          >>> from pgmpy.factors.continuous import ContinuousFactor
          >>> from pgmpy.factors.continuous import RoundingDiscretizer
          >>> def dirichlet_pdf(x, y):
          ...     return (np.power(x, 1) * np.power(y, 2)) / beta(x, y)
          >>> dirichlet_factor = ContinuousFactor(['x', 'y'], dirichlet_pdf)
          >>> dirichlet_factor.discretize(RoundingDiscretizer,
          ...                             low=1, high=2, cardinality=5)
          # TODO: finish this
          """
          super(CustomDistribution, self).discretize(method, *args, **kwargs)