docs: def get_previous_symbol(self, hgnc_symbol):
          """ sometimes we get HGNC symbols that do not match the ensembl rest version
          that we are currently using. We can look for earlier HGNC symbols for
          the gene using the service at rest.genenames.org
          
          Args:
              hgnc_symbol: HGNC symbol for the gene (eg "MLL2")
          
          Returns:
              list of deprecated gene symbols (eg ["KMT2A"])
          """
          
          ensembl_server = self.server
          gene_names_server = "http://rest.genenames.org"
          
          self.server = gene_names_server
          headers = {"accept": "application/json", "content-type": "application/json"}
          ext = "/fetch/symbol/{}".format(hgnc_symbol)
          try:
              r = self.ensembl_request(ext, headers)
          finally:
              self.server = ensembl_server
          
          gene_json = json.loads(r)
          
          prev_gene = []
          docs = gene_json["response"]["docs"]
          
          # strip out any gene entries that have been invalidated
          docs = [ x for x in docs if x["status"] != "Entry Withdrawn"]
          
          if len(docs) == 0:
              pass
          elif len(docs) > 1:
              raise ValueError("{0} has more than one alternate symbol, which I haven't accounted for.".format(hgnc_symbol))
          elif "prev_symbol" in docs[0]:
              prev_gene = docs[0]["prev_symbol"]
          
          return prev_gene