@staticmethod
def _normalized_vcf(chrom, pos, ref, alt):
    """If both ref/alt are > 1 base, and there are overlapping from the left,
           we need to trim off the overlapping bases.
           In the case that ref/alt is like this:
               CTTTT/CT    # with >1 overlapping bases from the left
           ref/alt should be normalized as TTTT/T, more examples:
                TC/TG --> C/G
           and pos should be fixed as well.
        """
    for i in range(max(len(ref), len(alt))):
        _ref = ref[i] if i < len(ref) else None
        _alt = alt[i] if i < len(alt) else None
        if _ref is None or _alt is None or _ref != _alt:
            break
    if _ref is None and _alt is None:
        raise ValueError('"ref" and "alt" cannot be the same: {}'.format((
            chrom, pos, ref, alt)))
    _pos = int(pos)
    if _ref is None or _alt is None:
        _pos = _pos + i - 1
        _ref = ref[i - 1:]
        _alt = alt[i - 1:]
    else:
        _pos = _pos + i
        _ref = ref[i:]
        _alt = alt[i:]
    return chrom, _pos, _ref, _alt
