Los Angeles - Justin Bieber serenaded Selena Gomez in a hotel bar on Friday night.
The on/off couple were spotted at the Montage Hotel in Beverly Hills where Justin sang songs including My Girl and his own tune Sorry to the former Disney star.
Instagram user @eatprayphoto spotted the interaction and posted some videos, captioning them: "When you're having a drink at an empty hotel bar and @justinbieber appears out of nowhere and begins to sing on the piano (sic)"
"@justinbieber singing my girl to @selenagomez....is this real? Pure magic (sic)"
"Does anyone have a drool cloth I can borrow? @justinbieber @selenagomez (sic)"
She also posted a picture, taken by Selena, 23, of her and some friends with Justin and revealed the bad boy singer couldn't have been nicer.
Alongside the picture of a smiling Justin, 21, she wrote: "Photo cred: @selenagomez. He asked to sit at our table to chat, so impressed by the kindness (and realness!) of this guy tonight. Now a #belieber (sic)."
Justin and Selena last split up in October 2014 after almost four years of on/off dating but he recently admitted he will always love the singer.
He said: "She is someone I love dearly. I'm never going to stop loving her. I'm never going to stop checking in on her. I don't think if you end a relationship, you should end that, unless it was super toxic and you guys were hurting each other physically or mentally.
"We always respected each other and we still respect each other."
We guess this means Justin's new "purpose" is that it's not "too late to say sorry" and Selena isn't as "sick of the same old love" as we think she is.
(GIF: Tumblr)