London - Jack Sock booked a place in the semi-finals of the ATP Finals with a surprise 6-4, 1-6, 6-4 win over German prodigy Alexander Zverev, while title favourite Roger Federer warmed up for the last four by subduing Marin Cilic on Thursday.
Sock is the first American to reach the semi-finals of the season-ending event since Andy Roddick in 2007.
The 25-year-old, up to a career high ninth in the world rankings, only qualified for the Tour Finals thanks to his first Masters title in Paris earlier this month.
Sock was so sure he wouldn't make it to the O2 Arena that he had planned to play a round of golf at Augusta this week.
Instead of working on his putting, Sock ground out a hard-fought victory over third seed Zverev, securing second place behind Federer in the Boris Becker group and a Saturday semi-final date with Pete Sampras group winner Grigor Dimitrov.
"That was a rollercoaster match. I didn't have the hottest start in the third but I kept in there and kept fighting," Sock said.
Dimitrov, who takes on Pablo Carreno Busta on Friday, qualified for the last four after winning his first two matches.
Federer's opponent will be either Belgian David Goffin or Austria's Dominic Thiem, who clash in a winner-takes-all Sampras group tie on Friday.
Just four months ago and only a few miles across south London, Federer was celebrating his record eighth Wimbledon crown after crushing Cilic in a brutally one-sided final.
Cilic had been hampered by a blistered foot and the Croat was reduced to tears during the match as his predicament sunk in.
In their first meeting since that All England Club showdown, Federer frustrated the already eliminated Cilic once again as he fought back to win 6-7 (5/7), 6-4, 6-1.
By extending his current winning streak to 13 matches, the 36-year-old advanced from the Tour Finals group stage with an unblemished 3-0 record for the 10th time in his glittering career.
With Andy Murray, Novak Djokovic and Stan Wawrinka all absent due to injury and world number one Rafael Nadal withdrawing after his first match due to a knee problem, Federer appears to have a clear path to his seventh triumph in the season-ending event.
"It was a tough match. I was in trouble, a set and a break point down, but I found a way out of it and I'm happy to be playing this way," Federer said.
"It's nice to play tennis this freely. It gives me a great idea how I want to be on Saturday. I'm looking forward to facing (David) Goffin or (Dominic) Thiem."
The prize money from Federer's win over Zverev on Tuesday took him past golfer Tiger Woods to become the world's highest earning athlete, with a career total of $110 million according to Forbes.
But Federer is motivated by his legacy rather than the size of his bank balance.
Winning the Tour Finals for the first time since 2011 would be another feather in his cap at the end of a remarkable renaissance year, which has seen him capture seven titles.
Zverev is tipped as a possible heir to Federer's throne, but the 20-year-old still has work to do after an erratic display against Sock.
A bruising first set went in Sock's favour before Zverev took the second with ease.
When Zverev maintained his assault with a break in the first game of the deciding set, Sock smashed the ball into the crowd with such force that he was punished with a penalty point.
Sock channelled that rage with a burst of power hitting as he won four successive games.
In a dramatic finish, Zverev roared back from 4-1 down to draw level, only for Sock to pounce on his first match point.
Collated results from the fifth day of the ATP Finals at London's O2 Arena on Thursday (x denotes seeding):
Boris Becker group
Roger Federer (SUI x2) bt Marin Cilic (CRO x5) 6-7 (5/7), 6-4, 6-1
Jack Sock (USA x8) bt Alexander Zverev (GER x3) 6-4, 1-6, 6-4
Henri Kontinen/John Peers (FIN/AUS x2) bt Raven Klaasen/Rajeev Ram (RSA/USA) 2-6, 6-1, 10-8
Ryan Harrison/Michael Venus (USA/NZL x8) bt Jean-Julien Rojer/Horia Tecau (NED/ROM x3) 6-3, 7-6 (7/5)