def hgvs_to_vcf(self, var_g):
if var_g.type != "<STR_LIT:g>":<EOL><INDENT>raise RuntimeError("<STR_LIT>".format(var_g=var_g))<EOL><DEDENT>vleft = self.hn.normalize(var_g)<EOL>(start_i, end_i) = _as_interbase(vleft.posedit)<EOL>chr = self.ac_to_chr_name_map[vleft.ac]<EOL>typ = vleft.posedit.edit.type<EOL>if typ == "<STR_LIT>":<EOL><INDENT>start_i -= <NUM_LIT:1><EOL>alt = self.hdp.seqfetcher.fetch_seq(vleft.ac, start_i, end_i)<EOL>ref = alt[<NUM_LIT:0>]<EOL>end_i = start_i<EOL>return (chr, start_i + <NUM_LIT:1>, ref, alt, typ)<EOL><DEDENT>if vleft.posedit.edit.ref == vleft.posedit.edit.alt:<EOL><INDENT>return None<EOL><DEDENT>alt = vleft.posedit.edit.alt or "<STR_LIT>"<EOL>if end_i - start_i == <NUM_LIT:1> and vleft.posedit.length_change == <NUM_LIT:0>:<EOL><INDENT>ref = vleft.posedit.edit.ref<EOL><DEDENT>else:<EOL><INDENT>start_i -= <NUM_LIT:1><EOL>ref = self.hdp.seqfetcher.fetch_seq(vleft.ac, start_i, end_i)<EOL>alt = ref[<NUM_LIT:0>] + alt<EOL><DEDENT>return (chr, start_i + <NUM_LIT:1>, ref, alt, typ)<EOL>
**EXPERIMENTAL**

        converts a single hgvs allele to (chr, pos, ref, alt) using
        the given assembly_name. The chr name uses official chromosome
        name (i.e., without a "chr" prefix).

        Returns None for non-variation (e.g., NC_000006.12:g.49949407=)