Dwayne Smith hit a half century as Mumbai Indians beat Rajasthan Royals with a ball to spare to reach their second Indian Premier League final.
Smith hit 62 off 44 balls - including six fours and two sixes - as Mumbai successfully chased down Rajasthan's 165-6 to win by four wickets.
Fellow opener Aditya Tare also contributed 35 and Dinesh Karthik hit 22 as Mumbai finished on 169-6 to set up a final clash with Chennai Super Kings on Sunday.
Earlier, skipper Rahul Dravid top-scored with 43 off 37 balls - including seven 4s - for Rajasthan, while Dishant Yagnik hit an unbeaten 31 off 17 balls, including five fours, to push their score up to a competitive 165.
Harbhajan Singh was the pick of the Mumbai bowlers, taking 3-23 off his four overs, while Kieron Pollard notched 2-6 from just six balls.
In response, Smith and Tare got Mumbai off to a great start, plundering 70 for the first wicket before Tare was the first of Kevon Cooper's two victims and Sinju Samson's two catches.
Keeper Karthik kept the momentum going with Smith until he departed with the score on 125-2, caught by Ajinkya Rahane off Cooper.
Skipper Rohit Sharma was out cheaply for two, quickly followed by Smith to leave Mumbai 132-4 and give Rajasthan some hope.
Needing 26 from the last three overs, Pollard (11) and Ambati Rayudo (17) pushed Mumbai on to leave them requiring eight off the final over.
Rayudo was bowled by Shane Watson but Singh (6 not out) and Rishi Dhawan (4 not out) hit boundaries to see their side home and set up Sunday's showpiece with Chennai, who are in their fifth final in six years and who beat Mumbai by 48 runs on Tuesday.