World number two Caroline Wozniacki suffered an upset in the second round of the Miami Open as Monica Puig battled to a 0-6 6-4 6-4 win.
Wozniacki looked to be in command of the match as she won the first set 6-0 but Puig, ranked 82nd in the world, started to apply the pressure at the start of the second, setting up a break point in the first game.
Australian Open champion Wozniacki hold her serve after a 10-minute battle but Puig showed glimpses of what was to come, winning her first game with an ace and going on to claim the first break of the match.
Her backhand proved to be key as the Miami resident charged to victory in one hour and 55 minutes.
Unseeded Puig will now face Greece's Maria Sakkari for her first third-round match-up in Miami.
Venus Williams booked her place in the third round after battling from behind to triumph 7-5 6-4 against Russia's Natalia Vikhlyantseva.
A nervy start saw the eighth seed trail 5-2 in the first set before she rallied to claim five games in a row against the world number 88.
Going into the second set, Williams again found herself on the back foot, falling 3-0 behind. But Williams found her form to save a break point and go on to win six out of seven games to clinch the match in two hours and seven minutes.
French Open champion Jelena Ostapenko came from a break down to advance to the third round with a 6-4 6-4 win over Timea Babos, and defending champion Johanna Konta will continue her title defence after beating Belgium's Kirsten Flipkens 6-4 6-3.
Elsewhere, fourth seed Elina Svitolina defeated Indian Wells champion Naomi Osaka 6-4 6-2, Daria Gavrilova beat Germany's Andrea Petkovic 7-6 (7/3) 6-4, while ninth-ranked Petra Kvitova overcame Aryna Sabalenka 7-5 3-6 6-3 and 19-year-old Sofia Kenin beat Indian Wells finalist Daria Kasatkina 3-6 6-2 6-2.