Denis Shapovalov and Alexander Zverev will join Roger Federer and Robin Haase in the ATP Rogers Cup semi-finals, the emerging stars having secured victories in Montreal on Friday.
After shock wins over Rafael Nadal and Juan-Martin del Potro, Shapovalov's dream run continues, coming from a set down to defeat Adrian Mannarino 2-6 6-3 6-4.
The Israeli-born Canadian set up an all-Next Gen semi-final against Zverev who, despite some early trouble, was relatively assured in a 7-5 6-4 win over Kevin Anderson.
Following his 6-4 6-4 triumph over Roberto Bautista Agut in under 70 minutes, Federer will face Haase, who eventually dispatched Diego Schwartzman 4-6 6-3 6-3.
Shapovalov's stunning form was the biggest story of the day, especially fighting back from a set down against the French world number 42.
Hitting 19 unforced errors to 12 winners, the 18-year-old found momentum after a short rain delay, immediately securing a key break in the sixth game of the second set.
The Canadian wildcard was fearless in the deciding set, earning another crucial break in the ninth game.
Shapovalov is now the youngest ever ATP 1000 semi-finalist and, at 143rd in the world, is the lowest-ranked since 2003, when Andrei Pavel made his way to the final in Paris.
Zverev, meanwhile, was shaky at times on serve in the last match of the day, serving nine aces and seven double faults, but overcame Anderson to win in straight sets.
The 20-year-old German was measured in the big points, on the way to an eighth consecutive victory.
— Tennis TV (@TennisTV) August 12, 2017
Federer still looks the man to beat, however, following a dominant display against Bautista Agut.
Holding to love to clinch the opening set, after breaking in the ninth game, the 19-time grand slam winner did not look back, winning 81 per cent of total points on his first serve.
On track for a third Rogers Cup triumph, the Swiss great will meet Haase, who recovered from dropping the first set against Schwartzman to book his first ATP 1000 semi-final berth.