Sir Paul McCartney has played a private concert for one of his US fans - and given his $1m (£620,000) earnings to charity.
Sir Paul played a string of Beatles classics
He agreed to perform in front of 150 guests to mark TV producer Wendy Whitworth's 50th birthday in San Diego, California.
Mrs Whitworth's husband Ralph, a financier, had offered Sir Paul the huge sum in order to give his wife a surprise she would never forget.
Sir Paul, who is about to embark on a European tour, donated the money to the anti-landmines charity Adopt-A-Minefield.
The charity has been championed by Sir Paul and his second wife, Heather Mills.
Mrs Whitworth, executive producer of CNN's Larry King Live programme, broke into tears when her husband announced the surprise guest.
She said: "Paul McCartney walked on stage and I thought somebody was playing a trick on me.
"It was so exciting. How would you feel? You can't believe it."
The 90-minute set - Sir Paul's first ever private concert - included the Beatles classics Yesterday, Hey Jude, Let It Be, Hello Goodbye and I Saw Her Standing There.
He called Mrs Whitworth on stage and presented her with 50 roses as the band broke into the Beatles track Birthday.
As the song played, the Whitworths danced at Sir Paul's side.
Afterwards the singer said: "Normally I don't do this sort of gig, but I was chuffed to do it because it was a 'win-win' show.
"Ralph gets to be the great husband for organising the surprise, his wife gets a rocking party, I get to rehearse the band for the tour, and most important, Adopt-A-Minefield gets one million dollars."
Mr Whitworth, who runs a $1.7bn (£1bn) investment fund, said: "I wanted to do something special for her 50th birthday. I'll say I have another 50 years to come up with something else like this."
Sir Paul used the evening as a warm-up for his first concert tour of Britain in 10 years, which starts in April and continues into France, Spain, Germany and Scandinavia.