docs: def get_states(self):
          """
          Add states to variable of BIF
  
          Returns
          -------
          dict: dict of type {variable: a list of states}
  
          Example
          -------
          >>> from pgmpy.readwrite import BIFReader, BIFWriter
          >>> model = BIFReader('dog-problem.bif').get_model()
          >>> writer = BIFWriter(model)
          >>> writer.get_states()
          {'bowel-problem': ['bowel-problem_0', 'bowel-problem_1'],
           'dog-out': ['dog-out_0', 'dog-out_1'],
           'family-out': ['family-out_0', 'family-out_1'],
           'hear-bark': ['hear-bark_0', 'hear-bark_1'],
           'light-on': ['light-on_0', 'light-on_1']}
          """
          variable_states = {}
          cpds = self.model.get_cpds()
          for cpd in cpds:
              variable = cpd.variable
              variable_states[variable] = []
              for state in range(cpd.get_cardinality([variable])[variable]):
                  variable_states[variable].append(str(variable) + '_' + str(state))
          return variable_states