def get_codon_nuc_change(codon_change):
    """
    For a given codon change E.g. aAt/aGt, return the changed base ([A,G] in the example).

    :param str codon_change: The codon change
    :return: The modified ref and alt
    :rtype: tuple

    >>> get_codon_nuc_change('aAt/aGt')
    ('A', 'G')
    >>> get_codon_nuc_change('agG/agT')
    ('G', 'T')
    >>> get_codon_nuc_change('p.A>G')
    ('A', 'G')
    >>> get_codon_nuc_change('agg/agg')
    Traceback (most recent call last):
    ..
    AssertionError
    """
    if '/' in codon_change:
        ref, alt = codon_change.split('/')
    else:
        assert '>' in codon_change
        ref, alt = codon_change.split('>')
        ref = ref[-1]  # p.A >> A
    for i in range(3):
        # range(3) is ok because this will only happen with MAV
        if ref[i] == alt[i]:
            continue
        else:
            return ref[i], alt[i]
    assert False