code: def parse_gene_list(path: str, graph: Graph, anno_type: str = "name") -> list:
      
      # read the file
      genes = pd.read_csv(path, header=None)[0].tolist()
      genes = [str(int(gene)) for gene in genes]
  
      # get those genes which are in the network
      ind = []
      if anno_type == "name":
          ind = graph.vs.select(name_in=genes).indices
      elif anno_type == "symbol":
          ind = graph.vs.select(symbol_in=genes).indices
      else:
          raise Exception("The type can either be name or symbol, {} is not "
                          "supported".format(anno_type))
      genes = graph.vs[ind][anno_type]
  
      return genes
docs: Parse a list of genes and return them if they are in the network.
  
      :param str path: The path of input file.
      :param Graph graph: The graph with genes as nodes.
      :param str anno_type: The type of annotation with two options:name-Entrez ID, symbol-HGNC symbol.
      :return list: A list of genes, all of which are in the network.