docs: def get_model(self):
          """
          Returns an instance of Bayesian Model.
          """
          model = BayesianModel()
          model.add_nodes_from(self.variables)
          model.add_edges_from(self.edges)
          model.name = self.model_name
  
          tabular_cpds = []
          for var, values in self.variable_CPD.items():
              evidence = values['CONDSET'] if 'CONDSET' in values else []
              cpd = values['DPIS']
              evidence_card = values['CARDINALITY'] if 'CARDINALITY' in values else []
              states = self.variables[var]['STATES']
              cpd = TabularCPD(var, len(states), cpd,
                               evidence=evidence,
                               evidence_card=evidence_card)
              tabular_cpds.append(cpd)
  
          model.add_cpds(*tabular_cpds)
  
          if nx.__version__.startswith('1'):
              for var, properties in self.variables.items():
                  model.node[var] = properties
          else:
              for var, properties in self.variables.items():
                  model._node[var] = properties
  
          return model