def METHOD_NAME(K_old, eigenvals, K_new, int_basis):
    """Re-express the Hecke eigenvalues in terms of the integral basis given in the LMFDB
    INPUT:
        K_old -- the field containing the Hecke eigenvalues
        eigenvals -- the Hecke eigenvalues, in terms of a field generator (usually the eigenvalue for T_2) for the field K_old
        K_new -- a "nicer" field isomorphic to K_old (often one whose polynomial has been polredabs'd)
        int_basis -- an integral basis for the ring of integers of K_new
    OUTPUT:
        eigenvals_new -- list, a list of strings of the coefficients of the Hecke eigenvalues with respect to the integral basis recorded in the LMFDB
        K_new -- number field, the (normalized) number field containing the Hecke eigenvalues, as given in the LMFDB
        a -- number field element, the generator for the field K_new
        int_basis -- list, a list containing the integral basis for K_new
    """
    if not K_old.is_isomorphic(K_new):
        raise RuntimeError("Fields not isomorphic!")
    iota = K_old.embeddings(K_new)[0]
    (a,) = K_new._first_ngens(1)
    # make change of basis matrix
    chg_basis_entries = []
    for el in int_basis:
        chg_basis_entries.append(el.list())
    chg_basis_mat = matrix(chg_basis_entries) # changes from int_basis to 1, a, a^2, ..., a^(n-1)
    chg_basis_mat = chg_basis_mat.inverse() # changes from 1, a, a^2, ..., a^(n-1) to int_basis
    # convert entries
    eigenvals_new = []
    for el in eigenvals:
        v = vector(iota(el).list())
        eigenvals_new.append(v*chg_basis_mat)
    # verify correctness of new expression for eigenvalues
    eigenvals_old = [iota(el) for el in eigenvals]
    for j in range(0,len(eigenvals)):
        new_val = 0
        for i in range(0,len(int_basis)):
            new_val += eigenvals_new[j][i]*int_basis[i]
        assert new_val == eigenvals_old[j]
    eigen_strings = []
    for c in eigenvals_new:
        eigen_strings.append(vector_to_string(c))   
    return eigen_strings, K_new, a, int_basis