use the correct surrogate function for EM