Former world number one Maria Sharapova reached the Italian Open semi-finals after fighting back to beat reigning French Open champion Jelena Ostapenko.
Sharapova, 31, won 6-7 (6-8) 6-4 7-5 against the 20-year-old Latvian, taking her third match point to end a gripping contest which lasted over three hours.
She will play world number one Simona Halep or Caroline Garcia in the semis.
Ukraine's fourth seed Elina Svitolina will play Estonia's Anett Kontaveit in the other last-four match.
Svitolina won 6-4 6-4 against Germany's two-time Grand Slam champion Angelique Kerber, while Kontaveit knocked out Danish second seed Caroline Wozniacki with a 6-3 6-1 victory.