docs: def _add_gene_disease(self, row):  # ::List  getting syntax error here
          """
          Parse and add gene variant disease model
          Model building happens in _build_gene_disease_model
  
          :param row {List}: single row from DDG2P.csv
          :return: None
          """
          col = self.files['developmental_disorders']['columns']
          if len(row) != len(col):
              raise ValueError("Unexpected number of fields for row {}".format(row))
  
          variant_label = "variant of {}".format(row[col.index('gene_symbol')])
          disease_omim_id = row[col.index('disease_omim_id')]
          if disease_omim_id == 'No disease mim':
              # check if we've manually curated
              disease_label = row[col.index('disease_label')]
              if disease_label in self.mondo_map:
                  disease_id = self.mondo_map[disease_label]
              else:
                  return  # sorry for this
          else:
              disease_id = 'OMIM:' + disease_omim_id
  
          hgnc_curie = 'HGNC:' + row[col.index('hgnc_id')]
  
          relation_curie = self.resolve(row[col.index('g2p_relation_label')])
          mutation_consequence = row[col.index('mutation_consequence')]
          if mutation_consequence not in ('uncertain', ''):
              consequence_relation = self.resolve(
                  self._get_consequence_predicate(mutation_consequence))
              consequence_curie = self.resolve(mutation_consequence)
              variant_label = "{} {}".format(mutation_consequence, variant_label)
          else:
              consequence_relation = None
              consequence_curie = None
  
          allelic_requirement = row[col.index('allelic_requirement')]
          if allelic_requirement != '':
              requirement_curie = self.resolve(allelic_requirement)
          else:
              requirement_curie = None
  
          pmids = row[col.index('pmids')]
          if pmids != '':
              pmid_list = ['PMID:' + pmid for pmid in pmids.split(';')]
          else:
              pmid_list = []
  
          # build the model
          # Should we build a reusable object and/or tuple that
          # could be passed to a more general model builder for
          # this and orphanet (and maybe clinvar)
          self._build_gene_disease_model(
              hgnc_curie,
              relation_curie,
              disease_id,
              variant_label,
              consequence_relation,
              consequence_curie,
              requirement_curie,
              pmid_list
          )