Ed Sheeran just loves surprising us and today was no different.
During the singer’s five-song set at this year’s iHeartRadio Music Festival in Las Vegas, he surprised fans by introducing Macklemore to the stage for a performance of Macklemore's own hit, "Same Love".
Ed started off singing the chorus of the hit - made famous Mary Lambert - fooling fans to think it was just him doing another one of his great covers … until the rapper jumped onstage.
Ed continued to keep fans on their toes during his performance mashing up his bitter break-up single "Don't," from his recent album X, with Blackstreet's "No Diggity" and Chris Brown's "Loyal".
Oh he can do no wrong!
Check out more of Ed’s set here: