Carlos Brathwaite and Denesh Ramdin steered West Indies into the World Twenty20 semi-finals with one Group 1 game to spare after a dramatic three-wicket victory over South Africa in Nagpur.
With nine runs needed from the final over to complete a chase of 123, Brathwaite took the Windies to the brink by crashing Kagiso Rabada's second ball for six before Ramdin finished the job with a cut that was dropped at short third man by Hashim Amla.
The nervy finish never looked likely when the Windies ended the 13th over on 84 for three with Marlon Samuels and Dwayne Bravo at the crease.
But after Bravo departed, Imran Tahir struck twice in as many balls in the 17th over and Samuels lost his head in the penultimate set of six to leave 10 runs needed from seven balls.
Brathwaite and Ramdin then ensured the Windies claimed their third consecutive victory, a result which means England will join them in the last four if they beat Sri Lanka on Saturday.
Chris Gayle was fit enough to bat following a hamstring niggle but could not produce the heroics that downed England in their first match, bowled by a late Rabada inswinger for four.
Andre Fletcher also went in a powerplay that ended on 37 for two, run out by a brilliant direct hit from Rilee Rossouw at point, but Johnson Charles and Samuels added 32.
Charles holed out for 32 off David Wiese and, after Samuels and Bravo both passed 1,000 Twenty20 international runs, the latter slapped Aaron Phangiso to backward point with 36 required from as many balls.
Tahir then dragged South Africa back into the game when Russell was caught at deep midwicket and Darren Sammy was bowled by a wrong 'un.
Samuels sliced Chris Morris down to the third-man rope twice in the penultimate over but then recklessly picked out long-on, leaving Brathwaite and Ramdin to finish the job at the death.
Earlier the Windies had bowled brilliantly to restrict South Africa to 122 for eight after Sammy won the toss, Russell, Bravo and Gayle each taking two economical wickets.
Quinton de Kock held the innings together with 47 from 46 balls and was well supported by lower-order contributions from Wiese (28) and Morris (16 not out) to get the Proteas to a competitive total.