Canadian teenager Bianca Andreescu was the home-town hero with victory over Karolina Pliskova to reach the semi-finals of the Rogers Cup in Toronto.
The 19-year-old produced one of the most stunning feats by a player her age in recent years by winning her first WTA title in Indian Wells in March but a shoulder injury had sidelined her virtually ever since.
However, Andreescu has burst back into the spotlight on home soil and carried on her brilliant run by knocking out third seed Pliskova.
The Czech did not win a game in the first set but fought back to level the match and Andreescu again needed treatment for a physical issue, having her right thigh heavily strapped.
But it did not stop the Canadian, who took advantage of a shaky service game from Pliskova at 4-4 in the decider before serving out a 6-0 2-6 6-4 victory.
In the last four, Andreescu will take on another young gun in 20-year-old American Sofia Kenin, who upset sixth seed Elina Svitolina 7-6 (2) 6-4.
Meanwhile, Serena Williams beat Naomi Osaka in straight sets in a rematch of their 2018 US Open final.
Eighth seed Williams beat second seed Osaka 6-3 6-4 in just under 80 minutes.
The 23-time grand slam winner will now face Marie Bouzkova in the semi-final after Simona Halep retired hurt having lost the first set 6-4.